/*!******************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js!./src/scss/project.scss ***!
  \******************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
html {
  font-size: 62.5%;
}

body {
  color: #242424;
  font-family:
    "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic",
    "Meiryo", sans-serif;
  font-family: source-han-sans-japanese, sans-serif;
  font-style: normal;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  /* font-family: 'Roboto', sans-serif; */
  font-weight: 400;
  /* 100 300 400 500 700 900 */
  color: #242424;
  background-color: #fafafa;
  font-size: 1.6rem;
  line-height: 1.6;
}

a,
ul,
li,
body,
section,
div,
p,
span,
svg {
  text-decoration: none;
  list-style: none;
  margin: 0;
  padding: 0;
}

body#preload * {
  transition: none !important;
}

.site {
  position: relative;
}

.m-f_container {
  width: calc(100% - 70px);
}

section {
  width: 100%;
}

.normal-btn {
  display: block;
  width: 200px;
  height: 55px;
  font-size: 2rem;
  letter-spacing: 0;
  font-weight: 500;
  text-align: center;
  line-height: 55px;
  border-radius: 1px;
  position: relative;
}

.arrow-box {
  position: absolute;
  width: 8px;
  top: 50%;
  right: 0;
  -webkit-transform: translate(-20px, -50%);
  transform: translate(-20px, -50%);
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
  will-change: transform, animation, position;
}

.normal-btn.black {
  background-color: #242424;
  color: #fff;
}

.normal-btn.black .normal-arrow {
  fill: #fff;
}

.normal-btn.white {
  background-color: #fafafa;
  color: #242424;
  fill: #242424;
}

.normal-btn.white .normal-arrow {
  fill: #242424;
}

.normal-btn:hover .arrow-box {
  -webkit-transform: translate(-15px, -50%);
  transform: translate(-15px, -50%);
}

.download__btn {
  display: block;
  width: 100%;
  height: 55px;
  font-size: 2rem;
  letter-spacing: 0;
  font-weight: 500;
  text-align: center;
  line-height: 55px;
  border-radius: 4px;
  position: relative;
  background-color: #bf0000;
  cursor: pointer;
  margin: 20px auto 0;
}

.download__btn--text {
  color: #fff;
}

.download__btn--icon {
  display: block;
  position: absolute;
  bottom: 50%;
  right: 0;
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
  box-sizing: border-box;
  width: 65px;
  height: 40px;
  background: url(.././thema/assets/download.svg) no-repeat center
    center/contain;
}

.section__title {
  margin: 0;
  padding: 0;
  font-size: 9.5rem;
  position: relative;
}

.section__title.black {
  color: #242424;
}

.section__title.black::after {
  background-color: #242424;
}

.section__title.white {
  color: #fff;
}

.section__title.white::after {
  background-color: #fff;
}

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

.section__title.center::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: 30px;
  height: 3px;
  border-radius: 1px;
}

.section__title.left::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 8px;
  width: 30px;
  height: 3px;
  border-radius: 1px;
}

.ds-1 {
  -webkit-filter: drop-shadow(0px 5px 10px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0px 5px 10px rgba(0, 0, 0, 0.2));
}

.ds-2 {
  -webkit-filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.1));
  filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.1));
}

.ds-3 {
  -webkit-filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.1));
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.1));
}

.normalBtn,
.normalBtn__arrow::before,
.normalBtn__arrow::after {
  display: block;
}

.normalBtn {
  white-space: nowrap;
  width: 220px;
  height: 50px;
  border-radius: 1px;
  text-decoration: none;
  color: #ffffff;
  background-color: #242424;
  position: relative;
  text-align: center;
  line-height: 50px;
  margin: 70px auto 0;
}

.normalBtn__arrow {
  display: inline-block;
  width: 20px;
  height: 4px;
  position: absolute;
  top: 50%;
  right: 18px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  overflow: hidden;
}

.normalBtn__arrow::before,
.normalBtn__arrow::after {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(.././thema/assets/arrow.svg);
  position: absolute;
  top: 0;
  left: 0;
}

.normalBtn__arrow::before {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.normalBtn__arrow::after {
  -webkit-transform: translate(-140%, 0);
  transform: translate(-140%, 0);
}

.normalBtn:hover .normalBtn__arrow::before,
.normalBtn:hover .normalBtn__arrow::after {
  transition: 0.4s ease-out;
}

.normalBtn:hover .normalBtn__arrow::before {
  -webkit-transform: translate(140%, 0);
  transform: translate(140%, 0);
}

.normalBtn:hover .normalBtn__arrow::after {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/******************************************
 ロード
******************************************/
#loader {
  display: block;
  position: fixed;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #242424;
  -webkit-transform-origin: left center;
  transform-origin: left center;
  transition: 0.6s cubic-bezier(0.28, 0.79, 0.27, 1);
}

.loader__out {
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

/******************************************
 header
******************************************/

.header-container {
  width: 70px;
  height: 100vh;
  background-color: #242424;
  position: fixed;
  top: 0;
  right: 0;
  border-left: solid 1px #2f2f2f;
  box-sizing: border-box;
  z-index: 101;
}

.header__sns {
  width: 20px;
  position: absolute;
  top: 40px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.sns__list {
  display: block;
  line-height: 0;
  height: 20px;
  margin: 0 0 15px 0;
}

.sns__list--open {
  -webkit-transform: scale(0);
  transform: scale(0);
}

.sns__list svg .svg-path {
  fill: #fff;
}

.h-click__after {
  transition: ease-in-out 0.4s;
}

.header__ham {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 34px;
  height: 28px;
  cursor: pointer;
}

.ham__line {
  display: inline-block;
  width: 34px;
  height: 2px;
  border-radius: 1px;
  background-color: #fff;
  position: absolute;
}

.ham__line:nth-child(1) {
  top: 0;
}

.ham__line:nth-child(2) {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.ham__line:nth-last-child(1) {
  bottom: 0;
}

.header__ham--open .ham__line:nth-child(1) {
  -webkit-transform: translate(0, -50%) rotate(135deg);
  transform: translate(0, -50%) rotate(135deg);
  top: 50%;
}

.header__ham--open .ham__line:nth-child(2) {
  -webkit-transform: translate(0, -50%) rotateY(90deg);
  transform: translate(0, -50%) rotateY(90deg);
}

.header__ham--open .ham__line:nth-last-child(1) {
  -webkit-transform: translate(0, 50%) rotate(-135deg);
  transform: translate(0, 50%) rotate(-135deg);
  bottom: 50%;
}

.header__contact {
  display: block;
  width: 40px;
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.header__contact--open {
  -webkit-transform: translate(-50%, 0) scale(0);
  transform: translate(-50%, 0) scale(0);
}

.header__contact--btn svg {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  stroke-miterlimit: 10;
  display: block;
}

.h-menu {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: calc(100% - 70px);
  background-color: #242424;
  height: 100vh;
  -webkit-transform: translate(100%, 0);
  transform: translate(100%, 0);
}

.h-menu--open {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.h-menu__content * {
  color: #fff;
}

.h-menu__sns--list {
  /* display: block; */
  font-size: 1.4rem;
  margin: 0 20px 0 0;
  margin-bottom: 8px !important;
  position: relative;
  top: 0;
  left: 0;
  line-height: 1.3;
}

.h-menu__sns--list:nth-last-child(1) {
  margin-bottom: 0px !important;
}

.h-menu__sns--list::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}

.h-menu__sns--list:hover::before {
  width: 100%;
}

.h-menu__sns--list:nth-last-child(1) {
  margin: 0 0 0 0;
}

.nav__container {
  border-bottom: solid 1px #fafafa;
  box-sizing: border-box;
  padding: 0 0 50px 0;
  margin: 0 0 50px 0;
}

.nav__list:nth-child(1) {
  margin: 0 0 0 0px;
}

.nav__list > a {
  position: relative;
  top: 0;
  left: 0;
}

.nav__list > a::before {
  content: "";
  display: block;
  width: 0%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  /* background-color: #fff; */
  border-bottom: solid 1px #fff;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}

.nav__list > a:hover::before {
  width: 100%;
}

.nav__list > a.non-hover::before {
  content: none;
}

.nav__child-list > a {
  font-size: 1.2rem;
  color: #f0f0f0;
  white-space: nowrap;
  position: relative;
  top: 0;
  left: 0;
}

.nav__child-list > a::before {
  content: "";
  display: block;
  width: 0%;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  /* background-color: #f0f0f0; */
  border-bottom: solid 1px #f0f0f0;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}

.nav__child-list > a:hover::before {
  width: 100%;
}

.cr-nav__container {
  display: flex;
  justify-content: space-between;
}

.cr-nav__button {
  width: calc(50% - 10px);
  background-color: #fafafa;
  border-radius: 2px;
  position: relative;
  overflow: hidden;
}

.cr-nav__button::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 35%;
}

.cr-nav__button * {
  color: #242424;
}

.cr-nav__button--box {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.cr-nav__button--title {
  font-size: 3.5rem;
  text-align: center;
  white-space: nowrap;
  font-weight: 600;
}

.cr-nav__button--text {
  font-size: 1.4rem;
  text-align: center;
  white-space: nowrap;
}

.cr-nav__button--icon1 {
  width: 30%;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(20%, -50%);
  transform: translate(20%, -50%);
  opacity: 0.15;
  transition: 0.65s cubic-bezier(0.36, 0.01, 0.43, 1);
  will-change: transform;
}

.cr-nav__button--icon1 svg {
  fill: none;
  stroke: #242424;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  stroke-miterlimit: 10;
  display: block;
}

.cr-nav__button:hover .cr-nav__button--icon1 {
  -webkit-transform: translate(10%, -50%) rotate(-5deg);
  transform: translate(10%, -50%) rotate(-5deg);
}

.h-menu__content {
  width: 90%;
  height: 100%;
  max-width: 1200px;
  max-height: 500px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.h-menu__line {
  height: 100%;
  width: 1px;
  background-color: #fafafa;
}

.h-menu__company--logo {
  display: block;
  width: 200px;
}

.nav__ul {
  display: flex;
}

.h-menu__sns {
  margin: 20px 0 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.nav__list {
  margin: 0 0 0 50px;
}

.nav__list > a {
  font-size: clamp(13px, 1.4vw, 20px);
  font-weight: 700;
}

.nav__list.min-left-margin {
  margin-left: 25px;
}
@media screen and (max-width: 767px) {
  .nav__list.min-left-margin {
    margin-left: 0;
  }
}

/******************************************
 footer
******************************************/
footer {
  margin: 0 auto;
  width: 100%;
  background-color: #bf0000;
  padding: 100px 0 40px 0;
}

.f-menu {
  margin: 0 auto 40px;
  width: 90%;
  display: flex;
  justify-content: space-between;
  padding: 0 0 50px 0;
  box-sizing: border-box;
  border-bottom: solid 1px #fafafa;
}

.f-menu * {
  color: #fff;
}

.f-menu--open {
  display: block;
}

.f-menu__content * {
  color: #fff;
}

.f-menu__content {
  width: 100%;
  height: 100%;
  max-width: 1200px;
  max-height: 500px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.f-menu__company {
  height: 100%;
}

.f-menu__company--logo {
  display: block;
  width: 160px;
}

.f-menu__sns {
  margin: 20px 0 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.f-menu__sns--list {
  margin: 0 20px 0 0;
  position: relative;
  top: 0;
  left: 0;
  font-size: 1.4rem;
  line-height: 1.3;
  margin-bottom: 8px !important;
}
.f-menu__sns--list:nth-last-child(1) {
  margin: 0 0 0 0;
  margin-bottom: 0 !important;
}
.f-menu__sns--list::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  /* background-color: #fff; */
  border-bottom: solid 1px #fff;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}
.f-menu__sns--list:hover::before {
  width: 100%;
}

.nav__container.f-nav__container {
  border: none;
  padding: 0;
  margin: 0;
}
.f__under {
  margin: 0 auto;
  width: 90%;
  display: flex;
  justify-content: space-between;
}

.f__under * {
  color: #fafafa;
  font-size: 1.4rem;
  letter-spacing: 0;
}

.f__under--pp {
  position: relative;
  top: 0;
  left: 0;
}
.f__under--pp::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  /* background-color: #fff; */
  border-bottom: solid 1px #fff;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}
.f__under--pp:hover::before {
  width: 100%;
}

/******************************************
 404
******************************************/
.error-section {
  width: calc(100% - 70px);
}

.error__content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 100px;
  z-index: 35;
  background-color: rgba(0, 0, 0, 0.5);
}

.error__text--box {
  text-align: center;
  color: #fff;
}

.error__text--404 {
  font-size: 20rem;
  font-weight: 500;
  line-height: 1;
}

.error__text--sub {
  line-height: 1;
  font: 2rem;
}

.error__content .normal-btn {
  margin: 80px auto 0;
}

.frontpage__main > section {
  padding: 100px 0 60px;
}

/******************************************
 メインビジュアル
******************************************/
.main-visual-section {
  background-color: #bf0000;
}

.main-visual {
  margin: 0 auto;
  width: 100%;
  height: 100vh;
  min-height: 500px;
  overflow: hidden;
  position: relative;
}

@supports (-webkit-touch-callout: none) {
  .main-visual {
    height: -webkit-fill-available;
  }
}
.logo-box {
  width: 230px;
  position: absolute;
  z-index: 32;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.logo-box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66%;
}

.svg-logo {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: visible;
}

#logo-container1 {
  z-index: 2;
  fill: #fff;
}

#logo-container1 * {
  stroke: #fff;
  stroke-width: 1px;
}

.video-mask--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 30;
  overflow: hidden;
}
.video-mask--bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(.././thema/assets/dot-p.png);
  background-size: 2px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.video__sp {
  display: none !important;
}

.video__pc {
  display: none !important;
}

video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.video__btn--outer {
  width: 250px;
  height: 90px;
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: rgba(191, 0, 0, 0.6);
  z-index: 1;
  border-radius: 20px 0 0 0;
}

.video__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  width: 150px;
  height: 58px;
  position: absolute;
  bottom: 50%;
  right: 50%;
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
  z-index: 35;
  color: #fff;
}

.video__btn--text {
  display: block;
  white-space: nowrap;
  font-size: 1.2rem;
  font-weight: 300;
  margin: 0 5px 0 0;
}

.video__btn--bar {
  display: block;
  width: 40px;
  height: 1px;
  border-bottom: solid 1px #fff;
}

.video__btn--icon {
  display: block;
  width: 58px;
  height: 58px;
  margin: 0 0 0 -10px;
  position: relative;
  top: 0;
  left: 0;
  transition: 0.4s cubic-bezier(0.36, 0.01, 0.43, 1);
}

#movie-play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  fill: none;
  stroke: #fff;
  stroke-miterlimit: 10;
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
}

.movie-play__circle--min {
  stroke: none;
  fill: #fff;
}

.movie-play__circle--outer {
  -webkit-transform-origin: center center;
  transform-origin: center center;
  transition: 0.4s cubic-bezier(0.36, 0.01, 0.43, 1);
}

.video__btn:hover .movie-play__circle--outer {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.movie-play__circle {
  -webkit-transform-origin: center center;
  transform-origin: center center;
  -webkit-animation: mvRotate 5s 0s linear infinite;
  animation: mvRotate 5s 0s linear infinite;
}

@-webkit-keyframes mvRotate {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes mvRotate {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/* 5周年用 */
.logo-box--5th {
  width: 300px;
}

/******************************************
 about
******************************************/
.about-section {
  background-color: #bf0000;
  overflow: hidden;
}

.about {
  margin: 0 auto;
  margin: 0 auto;
  width: 90%;
  /* max-width: 1200px; */
  position: relative;
}

.about__concept--box {
  display: flex;
  align-items: center;
}

.about__concept--left {
  width: 40%;
}

.svg-logo2 {
  display: block;
  margin: 0 auto;
  width: 80%;
  max-width: 600px;
}

.svg-logo2 * {
  fill: #fff;
  stroke: #fff;
  stroke-width: 1px;
}

.about__concept {
  height: 100vh;
  width: 60%;
  position: relative;
}

.about__concept--text {
  position: absolute;
  right: 5%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  width: 90%;
}
.about__concept--text img {
  width: 100%;
  height: auto;
}

.about__concept .normal-btn {
  position: absolute;
  right: 5%;
  top: 65%;
}

.about__cl {
  width: 100%;
  color: #fff;
  padding: 100px 0 100px 0;
}

.about__cl--title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 500;
  margin: 0 0 15px 0;
}

.about__cl--ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
  margin: 0 auto 5px;
}
.about__cl--ul:nth-last-child(1) {
  margin: 0 auto 0;
}

.about__cl--list {
  margin: 0 20px;
  white-space: nowrap;
  display: inline-block;
  width: auto !important;
}

.slick-slide {
  /* width: auto !important; */
  display: inline !important;
}

.about__concept--pc {
  display: none;
}

.about__concept--sp {
  display: none;
}

/******************************************
 5周年用
******************************************/
.anni__container {
  width: 95%;
  max-width: 750px;
  box-sizing: border-box;
  margin: 10vw auto 10vw;
  padding: 60px 0 20px;
  position: relative;
  background-color: #fff;
  border-radius: 2px;
  position: relative;
}
.anni__container::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  background-image: url(.././thema/assets/ichigeki_logo_5th.svg);
  background-position: center center;
  background-size: 38%;
  background-repeat: no-repeat;
  opacity: 0.15;
}

.anni__title {
  width: 60%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-3%, -51%);
  transform: translate(-3%, -51%);
}

#anniversary {
  fill: #242424;
  -webkit-filter: drop-shadow(1px 0px 0px #fff);
  filter: drop-shadow(1px 0px 0px #fff);
}

.anni__text--outer {
  width: 100%;
  position: relative;
  z-index: 2;
}

.anni__text--first {
  font-size: 1.8rem;
  text-align: center;
  line-height: 2.2;
}

.anni__text--second {
  font-size: 1.5rem;
  text-align: right;
  margin: 20px 30px 0 auto;
}

/*  */
.anni__container.newYear .anni__title {
  width: 40%;
  -webkit-transform: translate(-1%, -45%);
  transform: translate(-1%, -45%);
}

.anni__container.newYear .anni__text--first {
  text-align: left;
  font-size: 1.5rem;
  margin: 0 0 0 7%;
}

.anni__container.newYear::before {
  background-image: url(.././thema/assets/tora2022.svg);
  width: 140%;
  background-position: 56% 50%;
  background-size: 38%;
  opacity: 0.25;
}

.banner_container {
  margin: 40px auto 120px;
  display: flex;
  flex-direction: column;
  gap: 80px 0;
}

/******************************************
 new Service インタラクティブ
******************************************/
/******************************************
  3連サイネージ (Newバナー)
******************************************/
.signVision3 {
  position: relative;
  overflow: hidden;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  border: solid 2px #fff;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
}
.signVision3::before {
  content: "";
  display: block;
  width: 120%;
  height: 100%;
  background-color: #fafafa;
  position: absolute;
  bottom: -13%;
  left: -10%;
  border-radius: 50% 50% 0 0;
}

.signVision3_inner {
  width: 100%;
}

.signVision3_video-container {
  width: 100%;
  position: relative;
  background: url(.././thema/assets/top3sv_monitor_bg2.png) no-repeat center
    center/cover;
}
.signVision3_video-container::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 25%;
}
.signVision3_video-container::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  background: url(.././thema/assets/top3sv_monitor_front.png?002) no-repeat
    center center/cover;
}

.signVision3_video {
  width: 92.6%;
  height: 64.4%;
  position: absolute;
  top: 29%;
  left: 3.7%;
  z-index: 2;
}
.signVision3_video > video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.signVision3_img {
  width: 65%;
  margin: 18px auto 0;
  background: url(.././thema/assets/pageVisual_signageVision2.png) no-repeat
    center center/contain;
  -webkit-filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.12));
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.12));
}
.signVision3_img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 36.35%;
}

.signVision3_btn-block {
  width: 90%;
  margin: 50px auto 30px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 30px;
}

.signVision3_btn {
  padding: 15px 40px 12px;
  color: #40220f;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fafafa;
  width: 100%;
  height: auto;
  min-height: 55px;
  box-sizing: border-box;
  border: solid 2px #40220f;
  border-radius: 2px;
}
.signVision3_btn > .normal-btn__text {
  line-height: 1.2;
  font-size: min(2vw, 2rem);
}
.signVision3_btn > .arrow-box {
  fill: #40220f;
}

/******************************************
 new Service インタラクティブ
******************************************/
.topInteractiveService {
  width: 100%;
  padding: 20px 0 0;
}

.topInteractiveService__container {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  box-sizing: border-box;
  border: solid 2px #fff;
  border-radius: 2px;
  position: relative;
}

.topInteractiveService__head {
  color: #bf0000;
  background-color: #fff;
  font-size: 4rem;
  font-weight: 700;
  font-style: italic;
  width: 300px;
  text-align: center;
  padding: 0 8px 0 0;
  height: 47px;
  line-height: 47px;
  margin: 0 0 0 -2px;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.topInteractiveService__content--outer {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.topInteractiveService__content {
  margin: 60px auto 50px;
  width: 90%;
  /* max-width: 600px; */
}

.topInteractiveService__title--box {
  color: #fff;
  font-weight: 700;
  /* text-align: center; */
}

.topInteractiveService__title--sub01 {
  /* font-size: 2.0rem; */
  font-size: clamp(1rem, 1.4vw, 2rem);
  white-space: nowrap;
  line-height: 1;
}

.topInteractiveService__title {
  /* font-size: 7.0rem; */
  font-size: clamp(1rem, 5vw, 7rem);
  white-space: nowrap;
  margin: 10px 0 20px;
  line-height: 1;
}

.topInteractiveService__title--sub02 {
  /* font-size: 3.5rem; */
  font-size: clamp(1rem, 3vw, 3.5rem);
  white-space: nowrap;
  line-height: 1;
}

.topInteractiveService__text--box {
  /* text-align: center; */
  color: #fff;
  margin: 30px 0 0 0;
}

.topInteractiveService__text {
  line-height: 1.8;
}

.topInteractiveService__btn--outer {
  margin: 40px auto 0;
  width: 100%;
}

.topInteractiveService__btn--flex {
  display: flex;
  justify-content: space-between;
  gap: 20px 20px;
}

.topInteractiveService__btn--flex-inner {
  width: 50%;
  margin: 30px 0 0;
}

.topInteractiveService__btn--flex-inner-title {
  text-align: center;
  position: relative;
  z-index: 1;
  text-align: center;
  color: #fff;
  font-size: min(2.3vw, 2.1rem);
  line-height: 1.2;
  font-weight: 600;
}
.topInteractiveService__btn--flex-inner-title::before {
  margin: 0 0.5em 0 0;
}
.topInteractiveService__btn--flex-inner-title::after {
  margin: 0 0 0 0.5em;
}

.topInteractiveService__btn {
  margin: 20px auto 0;
  padding: 15px 40px 12px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #bf0000;
  width: 100%;
  height: auto;
  min-height: 55px;
  box-sizing: border-box;
  border: solid 2px #fff;
}
.topInteractiveService__btn--flex-inner > .topInteractiveService__btn {
  margin-top: 10px;
  padding: 10px 35px 9px;
  min-height: 40px;
}

.topInteractiveService__btn .normal-btn__text {
  line-height: 1.2;
  font-size: min(2vw, 2rem);
}

.topInteractiveService__btn .arrow-box {
  fill: #fff;
}

/* 追加 */
.topInteractiveService__content--box {
  display: flex;
  /* align-items: flex-end; */
  justify-content: space-between;
}

.topInteractiveService__content--left {
  width: 40%;
}

.topInteractiveService__content--img--box {
  width: 100%;
  height: 100%;
  position: relative;
  min-width: 245px;
}
.topInteractiveService__content--img--box::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(11deg);
  transform: translate(-50%, -50%) rotate(11deg);
  width: 200%;
  height: 200%;
  opacity: 0.2;
  background: url(.././thema/assets/fluid01.svg) no-repeat center center/contain;
}

.topInteractiveService__content--img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
  position: relative;
  z-index: 2;
}

.topInteractiveService__content--right {
  width: calc(60% - 30px);
}

.topInteractiveService__video--box {
  width: 100%;
  overflow: hidden;
  border-radius: 10px;
  margin: 40px auto 0;
}

.topInteractiveService__video {
  display: block;
  width: 100%;
}

/* tokyo office open */
.newOffice_container {
  background-color: #fff;
  box-sizing: border-box;
  width: 100%;
  max-width: 750px;
  border-radius: 1px;
  position: relative;
  margin: 120px auto 0;
  padding: 30px 40px;
}

.newOffice_title {
  font-weight: 800;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  line-height: 1;
  -webkit-transform: translate(0, -100%);
  transform: translate(0, -100%);
}

.newOffice_title-main {
  -webkit-filter: drop-shadow(3px 0px 0px #fff);
  filter: drop-shadow(3px 0px 0px #fff);
  display: inline-block;
  position: relative;
  z-index: 3;
  font-size: min(7vw, 6.5rem);
  -webkit-transform: translate(0%, 30%);
  transform: translate(0%, 30%);
}

.newOffice_title-bg {
  font-style: italic;
  font-size: min(12vw, 12rem);
  position: absolute;
  bottom: -0.1em;
  left: 48%;
  font-weight: 100;
  color: #fff;
}

.newOffice_text {
  position: relative;
  z-index: 1;
  margin: 15px 0;
  padding: 15px 0;
}
.newOffice_text::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0.15;
  background: url(.././thema/assets/newOfficeLogo.png) no-repeat center
    center/contain;
}
.newOffice_text > p {
  font-size: 1.8rem;
  line-height: 2.2;
}

.newOffice_btn {
  width: 100%;
  border: solid 2px #242424;
  box-sizing: border-box;
  border-radius: 1px;
  margin: 35px 0 0 0;
  font-size: 1.8rem;
}

/******************************************
 DANCE & UMK 企画
******************************************/
.du_container {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  border: solid 2px #fff;
  border-radius: 2px;
}

.du_container-inner {
  color: #fff;
  padding: 3.5% 5%;
}

.du_title {
  margin: 0;
  font-size: 3rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
}

.du_img-box {
  margin: 15px 0 0 0;
}
.du_img-box > img {
  display: block;
  width: 100%;
  border-radius: 2px;
  border: solid 1px #f1f1f1;
}

.du_text-box {
  margin: 15px 0 0 0;
}
.du_text-box > p {
  margin: 0;
  line-height: 1.5;
}
.du_text-box > p > a {
  color: #fff;
  text-decoration: underline;
  font-weight: 600;
}

.du_btn.normal-btn {
  color: #fff;
  margin-top: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: solid 2px #fff;
}
.du_btn.normal-btn > .normal-btn__text {
  line-height: 1;
  font-size: min(2vw, 2rem);
}
.du_btn.normal-btn > .arrow-box {
  fill: #fff;
}

/******************************************
 フルアニメーション制作 バナー
******************************************/
.fullAnime_container {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  border: solid 2px #fff;
  border-radius: 2px;
  box-sizing: border-box;
}

.fullAnime_link {
  display: block;
  width: 100%;
  position: relative;
}
.fullAnime_link::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.25%;
}
.fullAnime_link > img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

/******************************************
 work
******************************************/
.work-section {
  background-color: #fafafa;
  padding: 0 0 200px 0;
  position: relative;
  top: 0;
  left: 0;
}

.work {
  margin: 0 auto;
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.work-content {
  width: 33.333%;
  border-bottom: solid 1px rgba(191, 0, 0, 0.5);
}

.work__line--content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}

.work__line {
  width: 1px;
  background-color: #bf0000;
  opacity: 0.5;
  position: absolute;
}

.work__line1 {
  height: calc(100% - 200px);
  top: 100px;
  left: 33.3333%;
}

.work__line2 {
  height: calc(100% - 50px);
  top: 50px;
  right: 33.333%;
}

.work .section__content {
  display: flex;
  justify-content: space-around;
}

.work .section__title {
  padding: 150px 0 0 0;
  margin: 0 0 60px 0;
}

.work-content__title {
  text-align: center;
  font-size: 3rem;
  font-weight: 500;
  color: #242424;
  margin: 0 0 5px 0;
  height: 85px;
  line-height: 85px;
  border-top: solid 1px rgba(191, 0, 0, 0.5);
  border-bottom: solid 1px rgba(191, 0, 0, 0.5);
}

.work__container {
  padding: 7%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  position: relative;
  border-bottom: solid 1px rgba(191, 0, 0, 0.5);
}

.work-wrapper {
  /* display: flex; */
  max-width: 600px;
  margin: 0 auto;
}

.work-box {
  width: 100%;
  max-width: 600px;
  height: 100%;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  opacity: 0 !important;
  color: #242424;
}

.work-box__bar {
  width: 100%;
  height: 2px;
  overflow: hidden;
  border-radius: 1px;
  background-color: #aaa;
}
.work-box__bar::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #242424;
  -webkit-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  transition: ease-in-out;
}

.swiper-slide-active {
  /* 表示中 */
  opacity: 1 !important;
}

.swiper-slide-active .work-box__bar::before {
  -webkit-animation: bar-anime 5s 1s linear;
  animation: bar-anime 5s 1s linear;
}

@-webkit-keyframes bar-anime {
  0% {
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
  }
  88% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
    opacity: 0;
  }
}

@keyframes bar-anime {
  0% {
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
  }
  88% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
    opacity: 0;
  }
}
@-webkit-keyframes opa-anime {
  0% {
    opacity: 0;
  }
  35% {
    opacity: 0;
  }
  36% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  66% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes opa-anime {
  0% {
    opacity: 0;
  }
  35% {
    opacity: 0;
  }
  36% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  66% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes mask-anime {
  0% {
    -webkit-transform: translate(-101%, 0);
    transform: translate(-101%, 0);
  }
  35% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
  }
  65% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
  }
  100% {
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
  }
}
@keyframes mask-anime {
  0% {
    -webkit-transform: translate(-101%, 0);
    transform: translate(-101%, 0);
  }
  35% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
  }
  65% {
    -webkit-transform: translate(0%, 0);
    transform: translate(0%, 0);
  }
  100% {
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
  }
}
.work-mask {
  overflow: hidden;
  position: relative;
  display: inline-block;
}
.work-mask::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #242424;
  -webkit-transform: translate(-101%, 0);
  transform: translate(-101%, 0);
}

.swiper-slide-active .work-mask::after {
  -webkit-animation: mask-anime 0.5s 0.5s linear;
  animation: mask-anime 0.5s 0.5s linear;
}

.swiper-slide-active .work--opa {
  opacity: 0;
  -webkit-animation: opa-anime 0.5s 0.5s linear;
  animation: opa-anime 0.5s 0.5s linear;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.work-box__cl .work--opa::after {
  content: "様";
}

.work-box__img {
  width: 100%;
  position: relative;
  background-color: #f0f0f0;
  overflow: hidden;
}
.work-box__img::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.work-box__img img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.work-box__title--outer {
  line-height: 1.2;
}

.work-box__title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 20px 0 0 0;
}

.work-box__cl {
  /* display: flex; */
  /* align-items: flex-start; */
  font-size: 1.3rem;
  margin: 0 0 20px 0;
}
.work-box__cl::before {
  display: inline-block;
  content: "Client : ";
  font-size: 1.2rem;
  white-space: nowrap;
  margin: 1px 2px 0 0;
}

.work-box__ct {
  font-size: 1.3rem;
  margin: 0 0 5px 0;
}

.work-box__cate--list {
  display: inline-block;
  line-height: 1.1;
  padding: 5px 8px;
  border-radius: 1px;
  background-color: #bf0000;
  color: #ffffff;
  font-weight: 400;
  font-size: 1.5rem;
  /* margin: 0 5px 5px 0; */
}

.work-box__tag--list {
  display: inline-block;
  line-height: 1;
  padding: 3px 6px;
  border-radius: 1px;
  background-color: #fff;
  color: #bf0000;
  box-sizing: border-box;
  border: solid 1px #bf0000;
  font-weight: 400;
  margin: 6px 6px 0 0;
}

.work-box__date {
  font-size: 1.2rem;
  text-align: right;
}

.work-box__pager {
  margin: 5px 0 0 0;
}

.swiper-pagination-bullet-active {
  background-color: #bf0000;
}

.work-content .normal-btn {
  margin: 30px auto;
  width: 230px;
}

/******************************************
 service
******************************************/
.service-section {
  background-color: #bf0000;
  overflow: hidden;
}

.service {
  margin: 0 auto;
  /* width: 90%; */
  width: 100%;
}

.service .section__title {
  padding: 150px 0 0 0;
  margin: 0 0 60px 0;
}

.service .section__content {
  margin: 0 auto 120px;
  position: relative;
  width: 100%;
}

.service-box2-outer {
  position: relative;
}

.service-box2 {
  /* width: 90%; */
  /* margin: 0 auto; */
}

.service-box2__content-parent {
  height: 100vh;
  min-height: 400px;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  max-width: 1500px;
  margin: 0 auto;
}

.service-box2__content {
  display: block;
  background-color: #bf0000;
  width: calc(65% - 100px);
  border-radius: 3px;
  color: #fff;
  box-sizing: border-box;
  padding: 30px;
  transition: ease-in-out 0.3s;
  z-index: 1;
  position: relative;
  overflow: hidden;
  margin: 0 0 0 auto;
}

.service-box2__list--title {
  font-size: 6rem;
  font-weight: 600;
  line-height: 1;
  margin: 0 0 40px 0;
}

.service-box2__list--text {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.8;
  margin: 0 0 40px 0;
}

.service-box2__list--text2 {
  margin: 0 0 60px 0;
  padding: 20px 0 0 0;
  font-size: 1.4rem;
  line-height: 1.6;
  box-sizing: border-box;
  border-top: solid 1px #fff;
}

.service-box2__list--icon {
  display: none;
}

.service-box2__list--icon svg * {
  fill: none;
  stroke: #fff;
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

.service-box2__content .normal-btn {
  margin: 0;
  font-size: 1.8rem;
  background-color: #bf0000;
  box-sizing: border-box;
  border: solid 1px #fff;
}

.service-box--container1 {
  width: calc(100vw - 70px);
  height: 100vh;
  position: absolute;
  bottom: 200vh;
  left: 0;
}

.service-box--container2 {
  width: 90%;
  max-width: 1500px;
  height: 100vh;
  margin: 0 auto;
  position: relative;
  top: 0;
  left: 50px;
}

.service-box--container {
  position: relative;
  top: 0;
  left: 0;
  width: 35%;
  height: 100vh;
  min-height: 400px;
}

.service-box {
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  /* margin: 100px; */
  width: 60%;
  box-sizing: border-box;
  border: solid 1px #fff;
  border-radius: 50%;
  transition: 0.3s ease-in-out;
  /* display: none; */
}
.service-box::before {
  content: "";
  display: block;
  width: 100%;
  /* padding-top: 86.60254%; */
  padding-top: 100%;
}

.service-box__list {
  display: block;
  position: absolute;
  background-color: #bf0000;
  border-radius: 100%;
  width: 80%;
  transition: 1s ease-in-out;
  box-sizing: border-box;
  border: solid 2px #fff;
  transition: ease-in-out 0.3s;
}

.service-box__list:nth-child(1) {
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.service-box__list:nth-child(2) {
  top: 75%;
  left: 6.7%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.service-box__list:nth-child(3) {
  top: 75%;
  right: 6.7%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}

.service-box__list::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.service-box__content {
  width: 100%;
  height: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
  display: flex;
  flex-flow: column;
  justify-content: center;
}

.service-box__list--title {
  color: #fff;
  line-height: 1;
  font-size: 1.4vw;
  font-weight: 400;
  margin: 0 0 0.3em 0;
  transition: ease-in-out 0.3s;
}

.service-box__list.design .service-box__list--title,
.service-box__list.web .service-box__list--title {
  margin: 0 0 0.6em 0;
}

.service-box__list--icon {
  width: 45%;
  margin: 0 auto;
  position: relative;
  transition: ease-in-out 0.3s;
}
.service-box__list--icon::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.service-box__list--icon svg {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: auto;
  height: 100%;
  fill: #bf0000;
  transition: ease-in-out 0.3s;
}

.service-box__list--icon svg * {
  fill: none;
  stroke: #fff;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

@-webkit-keyframes service-opa {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes service-opa {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.rotate__target--active {
  background-color: #fff;
}

.rotate__target--active * {
  color: #bf0000;
  stroke: #bf0000 !important;
}
.service_other-box {
  padding-bottom: 10vh;
}

.serviceOther_content-parent {
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  max-width: 1500px;
  margin: 0 auto;
}

.serviceOther_content {
  display: block;
  background-color: #bf0000;
  width: calc(65% - 100px);
  border-radius: 3px;
  color: #fff;
  box-sizing: border-box;
  padding: 30px;
  transition: ease-in-out 0.3s;
  z-index: 1;
  position: relative;
  overflow: visible;
  margin: 0 0 0 auto;
}

.serviceOther_list--title {
  font-size: 6rem;
  font-weight: 600;
  line-height: 1;
  margin: 0 0 40px 0;
}

.serviceOther_list--text {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.8;
  margin: 0 0 40px 0;
}

.serviceOther_list--text2 {
  margin: 0 0 60px 0;
  padding: 20px 0 0 0;
  font-size: 1.4rem;
  line-height: 1.6;
  box-sizing: border-box;
  border-top: solid 1px #fff;
}

.serviceOther_list--icon {
  position: absolute;
  right: calc(130% + 50px);
  top: 50%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  width: 40%;
  max-width: 250px;
}

.serviceOther_list--icon svg * {
  fill: none;
  stroke: #fff;
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

.serviceOther_content .normal-btn {
  margin: 0;
  font-size: 1.8rem;
  background-color: #bf0000;
  box-sizing: border-box;
  border: solid 1px #fff;
}

/******************************************
 equipment
******************************************/
.eqp-section {
  background-color: #fafafa;
  border-radius: 100px 0 0 0;
  padding-bottom: 100px;
}
.eqp-section::before {
  content: "";
  display: block;
  width: 100%;
  height: 100px;
  background-color: #bf0000;
  position: absolute;
  z-index: -1;
}

.eqp {
  margin: 0 auto;
  width: 90%;
}

.eqp .section__title {
  padding: 100px 0 0 0;
  margin: 0 0 60px 0;
}

.eqp .section__content {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.eqp-content {
  display: block;
  width: calc(50% - 30px);
  color: #242424;
}

.eqp-content__img {
  position: relative;
  background-color: #f0f0f0;
  overflow: hidden;
  border-radius: 2px;
  box-sizing: border-box;
}
.eqp-content__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.666%;
}
.eqp-content__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: absolute;
  top: 0;
  left: 0;
}

.eqp-content__title {
  display: flex;
  align-items: center;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0rem;
}
.eqp-content__title::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 2px;
  border-radius: 1px;
  background-color: #242424;
  margin: 0 10px 0 0;
}

.eqp-content-btn {
  width: 100%;
  /* max-width: 600px; */
  height: 80px;
  margin: 40px auto 0;
  box-sizing: border-box;
  border: solid 1px #242424;
  border-radius: 2px;
  line-height: 80px;
}

/******************************************
 front Blog
******************************************/
.blog-section {
  background-color: #fafafa;
  /* background-color: #f0f0f0; */
  overflow: hidden;
  position: relative;
  padding: 0 0 80px 0;
}

.blog {
  padding: 120px 0;
  overflow: hidden;
  position: relative;
  margin: 0 auto;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.blog::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  /* background-color: #f0f0f0; */
  background-color: #fafafa;
  position: absolute;
  top: 0;
  right: 0;
  border-radius: 0 0 0 60px;
}

.blog .section__title {
  margin: 0 143px 0 5%;
}

.blog .section__content {
  overflow: hidden;
  width: calc(95% - 208px);
  margin: 50px 0 0 0;
}

.blog__container {
  position: relative;
  box-sizing: border-box;
  padding: 0 0 30px 0;
}
.blog__container::before {
  content: "";
  display: block;
  width: 100%;
  height: 60%;
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #fff;
  border-radius: 50px 0 0 5px;
}

.blog__container--inner {
  margin: 0 0 0 auto;
  width: calc(100% - 60px);
  overflow: hidden;
}

.blog-box {
  display: block;
  color: #242424;
  width: 450px;
}

.blog-box__img--outer {
  width: 100%;
  position: relative;
  border-radius: 2px;
  overflow: hidden;
}
.blog-box__img--outer::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.66%;
}
.blog-box__img--outer img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.blog-box__title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 20px 0 10px 0;
}

.blog-box__other--box {
  font-size: 1.2rem;
  color: #aaa;
  display: flex;
  justify-content: start;
  align-items: center;
}

.blog-box__date {
  display: flex;
  -ms-grid-column-align: start;
  justify-self: start;
  align-items: center;
}
.blog-box__date::after {
  content: "";
  display: block;
  width: 1px;
  height: 12px;
  background-color: #aaa;
  margin: 0 10px;
}

.blog-box__cate {
  line-height: 1;
}

.blog-box__cate--list::after {
  content: "、";
}
.blog-box__cate--list:nth-last-child(1)::after {
  content: "";
}

.blog-arrow__box {
  width: 40px;
  height: 100px;
  position: absolute;
  top: 0;
  left: 0px;
}

.blog-arrow {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 40px;
  height: 40px;
  box-sizing: border-box;
  border: solid 1px #242424;
  background-color: #fff;
  border-radius: 50%;
  background-size: 15px;
  margin: 0;
  outline: none;
}
.blog-arrow::after {
  content: none;
}

.blog-arrow--prev {
  left: 0;
  top: 0;
  background-image: url(.././thema/assets/prevarrow02.svg);
}

.blog-arrow--next {
  background-image: url(.././thema/assets/nextarrow02.svg);
  left: 0;
  bottom: 0;
  top: unset;
}

.blog .normal-btn {
  margin: 50px 0 0 0;
}

/******************************************
 news
******************************************/
.news-section {
  background-color: #fafafa;
}

.news {
  margin: 0 auto;
  width: 90%;
  padding: 100px 0 120px 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.news .section__title {
  margin: 0 100px 0 0;
}

.news .section__content {
  margin: 50px 0 0 0;
  border-top: solid 1px #242424;
  width: 100%;
}

.news-box {
  display: block;
  color: #242424;
  border-bottom: solid 1px #242424;
  padding: 20px 0;
}

.news-box__min-content {
  display: flex;
  justify-content: start;
  font-size: 1.2rem;
  margin: 0 0 10px 1px;
}

.news-box__date::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 10px;
  background-color: #242424;
}

.news-box__title {
  font-weight: 500;
  font-size: 1.8rem;
  margin: 0 0 0 1px;
}

.news .normal-btn {
  margin: 60px 0 0 0;
}

/******************************************
 コンタクト・リクルート ボタン
******************************************/
.cr-link-section {
  background-color: #fafafa;
  margin: 0 0 50px 0;
}

.cr-link {
  display: flex;
  justify-content: space-evenly;
}

.f-cr__button {
  width: calc(50% - 50px);
  background-color: #bf0000;
  border-radius: 2px;
  position: relative;
  overflow: hidden;
  height: 200px;
  color: #ffffff;
}

.f-cr__button--box {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.f-cr__button--title {
  font-size: 4.5rem;
  text-align: center;
  white-space: nowrap;
  font-weight: 600;
}

.f-cr__button--text {
  font-size: 1.4rem;
  text-align: center;
  white-space: nowrap;
}

.f-cr__button--icon {
  width: 25%;
  max-width: 180px;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(20%, -50%);
  transform: translate(20%, -50%);
  opacity: 0.35;
  transition: 0.65s cubic-bezier(0.36, 0.01, 0.43, 1);
  will-change: transform;
}

.f-cr__button:hover .f-cr__button--icon {
  -webkit-transform: translate(10%, -50%) rotate(-5deg);
  transform: translate(10%, -50%) rotate(-5deg);
}

.f-cr__button--icon svg {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  stroke-miterlimit: 10;
  display: block;
}
/******************************************
 派生ページのタイトル
******************************************/
/* 派生ページのタイトル */
.un__title--container {
  width: 100%;
  height: 400px;
  background-color: #bf0000;
  position: relative;
  /* padding: 0 5%; */
}

.un__title--box {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 5%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  display: flex;
  justify-content: start;
  align-items: center;
  flex-wrap: wrap;
}

.un__title {
  font-size: 6rem;
  line-height: 1;
  font-weight: 600;
  white-space: nowrap;
}

.un__title--min {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1;
  margin: 14px 0 0 20px;
  font-weight: 600;
  white-space: nowrap;
}

.un__index--container {
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  position: absolute;
  bottom: 30px;
  left: 5%;
}

.un__index--box {
  color: #fff;
  font-size: 2rem;
}
.un__index--box::after {
  content: "";
  display: inline-block;
  background-color: #fff;
  border-radius: 1px;
  width: 2px;
  height: 20px;
  margin: 0 25px;
  -webkit-transform: rotate(30deg) translate(5px, 0);
  transform: rotate(30deg) translate(5px, 0);
}
.un__index--box:nth-last-child(1)::after {
  content: none;
}

.un__index--box span {
  font-size: 1.8rem;
  display: inline-block;
  margin: 0 10px 0 0;
}

.un__dept--container {
  color: #fff;
  position: absolute;
  bottom: 30px;
  left: 5%;
}

.un__dept--text {
  font-size: 1.4rem;
}

.un-main {
  background-color: #fafafa;
}

/******************************************
 page
******************************************/
.page {
  width: 90%;
  max-width: 800px;
  margin: 80px auto;
}

.page__container {
  margin: 0 0 50px 0;
}

.page__title {
  font-size: 3rem;
  margin: 0 0 30px 0;
}

.page__date {
  margin: 0 0 50px 0;
  display: flex;
  justify-content: flex-start;
  font-size: 1.4rem;
  color: #555;
}

.page__date--time {
  margin: 0 20px 0 0;
}

.page__under {
  box-sizing: border-box;
  border-top: solid 1px #555;
}

.page__under--btn {
  margin: 30px auto 0;
  color: #242424;
  display: flex;
  width: 50px;
}

.page__under--btn span:nth-child(1) {
  display: inline-block;
  margin: 0 7px 0 0;
}

.page-arrow-box {
  width: 6px;
  display: inline-block;
}

.page-arrow-box svg {
  width: 6px;
}

/******************************************
 about
******************************************/
.un-section {
  width: 100%;
}

.un-section__title {
  line-height: 1;
}

.un-section__title span {
  font-size: 2rem;
  font-weight: 600;
}

.un-section__title--h {
  font-size: 5rem;
  font-weight: 600;
}

.un-section__container {
  width: 100%;
}

.un-compnay .un-section__container {
  width: calc(100% - 300px);
}

.un-concept .un-section__container {
  width: calc(100% - 300px);
}

.un-access .un-section__container {
  width: calc(100% - 300px);
}

.un-compnay {
  width: 90%;
  margin: 0 auto;
  padding: 120px 0 0 0;
  display: flex;
  align-items: flex-start;
}

.un-concept {
  width: 90%;
  margin: 0 auto;
  padding: 120px 0 0 0;
  display: flex;
  align-items: flex-start;
}

.un-access {
  width: 90%;
  margin: 0 auto 120px;
  padding: 120px 0 0 0;
  display: flex;
  align-items: flex-start;
}

.un-compnay .un-section__title {
  width: 300px;
  margin: 0 0 0 0;
}

.un-concept .un-section__title {
  width: 300px;
  margin: 0 0 60px 0;
}

.un-access .un-section__title {
  width: 300px;
  margin: 0;
}

.un-concept__title {
  /* width: calc(100% - 400px); */
  /* min-width: 800px; */
  width: 100%;
  margin: 1.8em 0 30px;
}

.un-concept__title img {
  width: 100%;
}

.un-concept__text-box {
  /* min-width: 800px; */
  width: 100%;
  margin: 0 auto;
  font-size: 1.7rem;
  line-height: 2;
}

.un-concept__text--title {
  font-weight: 600;
  font-size: 2rem;
}

.un-concept__text-box.logo__design {
  margin-top: 50px;
}

.un-concept__text--flex {
  display: flex;
  justify-content: left;
  /* align-items: center; */
  margin: 10px 0 0 0;
}

.un-concept__text--left {
  width: 30%;
  max-width: 200px;
}

.un-concept__text--left--img {
  display: block;
  width: 100%;
}

.un-concept__text--right {
  width: calc(70% - 30px);
  max-width: 470px;
  margin: 0 0 0 30px;
}

.company-table {
  width: 100%;
}

.company-table__row {
  margin: 30px 0;
  padding: 0 0 30px;
  box-sizing: border-box;
  border-bottom: solid 1px #242424;
  display: flex;
}

.company-table__h {
  width: 20%;
  min-width: 150px;
}

.company-table__d {
  margin: 0;
  display: block;
  width: 100%;
}

.company-min-teble__row {
  display: flex;
  width: 100%;
}
.company-min-teble__row:nth-child(1) {
  margin: 0 0 10px 0;
}

.company-min-teble__h {
  width: 150px;
}

.company-min-teble__d {
  display: block;
  width: calc(100% - 150px);
}

.company-min-teble__d a,
.company-table__d > a,
.company-table__d > p > a {
  color: #242424;
  text-decoration: underline;
}

.access-map--content {
  margin: 30px 0 70px 0;
}
.access-map--content:nth-last-child(1) {
  margin: 0;
}

.access-map--title {
  margin: 0 0 5px 0;
  font-size: 1.8rem;
}

.access-map--title .fas.fa-map-marker-alt {
  margin: 0 7px 0 0;
  color: #bf0000;
}

.access-map-box {
  width: 100%;
  height: 500px;
  background-color: #e0e0e0;
}

iframe {
  width: 100%;
  height: 100%;
}

/******************************************
 work
******************************************/
.un-work__parent-cate {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.un-work__parent-cate--box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.un-work__parent-cate--box li {
  white-space: nowrap;
}

.un-work__parent-cate--list {
  color: #ddd;
  font-size: 2rem;
  font-weight: 600;
  margin: 0 20px;
  padding: 0 20px 10px;
  position: relative;
  line-height: 1;
  display: block;
  white-space: nowrap;
}

.un-work__parent-cate--list-active {
  text-shadow: 0 0 2px rgba(255, 255, 255, 0.5);
  color: #fff;
}
.un-work__parent-cate--list-active::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background-color: #fafafa;
  position: absolute;
  bottom: 0;
  left: 0;
}

.un-work__child-cate {
  width: 100%;
  margin: 30px 0 0 0;
}

.un-work__child-cate--box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.un-work__child-cate--list {
  display: block;
  color: #aaa;
  line-height: 1;
  cursor: pointer;
  box-sizing: border-box;
  border: solid 1px #aaa;
  border-radius: 10px;
  padding: 0 10px;
  height: 25px;
  line-height: 25px;
  margin: 10px 5px 0;
  font-size: 1.5rem;
  white-space: nowrap;
}

.un-work__child-cate--list-active {
  background-color: #242424;
  color: #fff;
  border: solid 1px #242424;
}

.un-work {
  width: 90%;
  margin: 0 auto;
}

.un-work-container {
  padding: 80px 0 60px 0;
  margin: 0 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 40px 32px;
}

.un-work-box {
  display: block;
  width: calc(25% - 24px);
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 3px;
  color: #242424;
  overflow: hidden;
}

.un-work-box__img {
  width: 100%;
  position: relative;
  background-color: #f0f0f0;
  overflow: hidden;
}
.un-work-box__img::before {
  content: "";
  display: block;
  padding-top: 60%;
}

.un-work-box__img img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.un-work-box__title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 15px auto 0;
  width: 90%;
}

.un-work-box__cl {
  font-size: 1.3rem;
  margin: 0 auto 20px;
  width: 90%;
}
.un-work-box__cl::before {
  display: inline-block;
  content: "Client : ";
  font-size: 1.2rem;
  white-space: nowrap;
  margin: 1px 2px 0 0;
}
.un-work-box__cl::after {
  content: "様";
}

.un-work-box__min-content {
  margin: 0 auto;
  width: 90%;
}

.un-work-box__ct {
  font-size: 1.3rem;
  margin: 0 0 5px 0;
}

.un-work-box__cate--list {
  display: inline-block;
  line-height: 1.1;
  padding: 5px 8px;
  border-radius: 1px;
  background-color: #bf0000;
  color: #ffffff;
  font-weight: 400;
  font-size: 1.5rem;
}

.un-work-box__tag--list {
  display: inline-block;
  line-height: 1;
  padding: 3px 6px;
  margin: 6px 6px 0 0;
  border-radius: 1px;
  background-color: #fff;
  color: #bf0000;
  box-sizing: border-box;
  border: solid 1px #bf0000;
  font-weight: 400;
}

.un-work-box__date {
  font-size: 1.2rem;
  text-align: right;
  margin: 0 0 15px 0;
}

.navigation.pagination {
  width: 100%;
}

.screen-reader-text {
  display: none;
}

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

.prev.page-numbers {
  display: inline-block !important;
  margin: 0 5px 0 0;
}

.next.page-numbers {
  display: inline-block !important;
  margin: 0 0 0 5px;
}

.page-numbers.dots {
  display: inline-block;
  border: none !important;
}

.page-numbers.dots + .page-numbers {
  /* display: none; */
}

.page-numbers {
  /* display: none; */
  display: inline-block;
  margin: 0 5px;
  width: 25px;
  height: 25px;
  background-color: #fafafa;
  box-sizing: border-box;
  border: solid 1px #242424;
  border-radius: 2px;
  color: #242424;
}

.page-numbers.current {
  display: inline-block;
  background-color: #242424;
  color: #fff;
}

/******************************************
 eqp
******************************************/
.uneq-section {
  width: 90%;
  margin: 0 auto;
  padding: 120px 0 0 0;
}
.uneq-section:nth-last-child(1) {
  margin-bottom: 100px;
}

.un-eqp {
  display: flex;
  justify-content: space-between;
  margin: 0px 0 0 0;
}

.uneq-section__title {
  line-height: 1;
  width: 360px;
}

.uneq-section__title span {
  font-size: 1.6rem;
  font-weight: 600;
}

.uneq-section__title--h {
  font-size: 3rem;
  font-weight: 600;
  white-space: nowrap;
}

.uneq-section__title--size {
  margin: 10px 0 0 0;
}

.uneq-section__container {
  width: 100%;
  min-width: 800px;
}

.eqp-table {
  width: 100%;
  margin: 0;
}

.eqp-table__row--vr {
  width: 100%;
  position: relative;
  background-color: #f0f0f0;
}
.eqp-table__row--vr::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.eqp-table__row--vr iframe {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.eqp-table__row {
  border-bottom: solid 1px #242424;
  margin: 30px 0;
  padding: 0 0 30px;
}
.eqp-table__row:nth-child(1) {
  margin: 8px 0 30px;
}

.eqp-table__row--box {
  box-sizing: border-box;
  display: flex;
}
.eqp-table__row--box:nth-child(n + 2) {
  margin: 15px 0 0 0;
}

.eqp-table__h {
  width: 33.25%;
  font-weight: 500;
}

.eqp-table__d1 {
  margin: 0;
  display: block;
  width: 23%;
}

.eqp-table__d2 {
  margin: 0;
  display: block;
  /* width: 300px; */
  width: 37.5%;
}

.eqp-table__d3 {
  margin: 0;
  display: block;
  width: 6.25%;
}

.uneq-section__container--img--box {
  width: 100%;
  position: relative;
  margin: 0 0 30px 0;
}
.uneq-section__container--img--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.666%;
}
.uneq-section__container--img--box img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

/******************************************
 news
******************************************/
.un-news {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

.un-news-container {
  margin: 50px 0 60px 0;
  border-top: solid 1px #242424;
}

.un-news-box {
  display: block;
  color: #242424;
  border-bottom: solid 1px #242424;
  padding: 20px 0;
}

.un-news-box__min-content {
  display: flex;
  justify-content: start;
  font-size: 1.2rem;
  margin: 0 0 10px 1px;
}

.un-news-box__date::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 10px;
  margin: 0 10px;
  background-color: #242424;
}

.un-news-box__title {
  font-weight: 500;
  font-size: 1.8rem;
  margin: 0 0 0 1px;
}

/******************************************
 recruit
******************************************/
.un-recruit {
  display: flex;
  justify-content: flex-start;
  margin: 120px auto;
  width: 90%;
}

.un-recruit .un-section__title {
  width: 300px;
  padding-right: 1.4em;
}

.un-recruit .un-section__title--h {
  font-size: 3rem;
  margin: 0 0 60px 0;
  line-height: 1.3;
}
.un-recruit .un-section__title--h > br.pc_br {
  display: block;
}

.un-section__container.recruit {
  width: calc(100% - 300px);
}

.recruit-table {
  width: 100%;
  margin: 0;
}

.recruit-table__row {
  margin: 30px 0;
  padding: 0 0 30px;
  box-sizing: border-box;
  border-bottom: solid 1px #242424;
  display: flex;
}
.recruit-table__row:nth-child(1) {
  margin: 0;
}

.recruit-table__h {
  width: 20%;
  min-width: 150px;
  font-weight: 500;
}

.recruit-table__d {
  margin: 0;
  display: block;
  width: 100%;
}
.recruit-table__d--dot::before {
  content: "・";
}

.recruit--form__title {
  text-align: center;
  font-size: 3rem;
  font-weight: 600;
  margin: 0 0 30px 0;
}

.recruit--form {
  margin: 0 auto 80px !important;
}

/******************************************
 contact
******************************************/
.un-contact-container {
  width: 90%;
  max-width: 800px;
  background-color: #f2f2f2;
  margin: 80px auto 80px;
  padding: 50px;
  box-sizing: border-box;
  border-radius: 3px;
}

form {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

form * {
  outline: none;
}

.contact-content {
  margin: 0 0 50px 0;
}

.un-contact__title--box {
  max-width: 600px;
  width: 100%;
  margin: 0 auto 60px;
}

.un-contact--title {
  text-align: center;
  font-size: 1.9rem;
  font-weight: 600;
  margin: 0 0 30px 0;
}

.un-contact__tel--btn {
  font-size: 4rem;
  display: table;
  margin: -30px auto 0;
  color: #bf0000;
  line-height: 1;
  -webkit-text-decoration: underline 2px;
  text-decoration: underline 2px;
}

.un-contact__tel--btn .fas.fa-phone-alt {
  margin: 0 10px 0 0;
  font-size: 3rem;
  -webkit-transform: translate(0, -2px);
  transform: translate(0, -2px);
}

.contact-box span {
  display: block;
  margin: 0 0 5px 0;
}

.contact-box .wpcf7-form-control-wrap {
  display: block;
}

.form-text {
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  padding: 0 5px;
}

.form-textarea {
  width: 100%;
  height: 360px;
  box-sizing: border-box;
  resize: none;
  padding: 5px;
}

.btn-go {
  -webkit-appearance: none;
  display: block;
  width: 150px;
  height: 55px;
  line-height: 25px;
  margin: 50px auto 0;
  cursor: pointer;
  border: none;
  background-color: #242424;
  color: #fff;
  font-size: 1.6rem;
}

.btn-back {
  -webkit-appearance: none;
  display: block;
  width: 80px;
  height: 40px;
  line-height: 20px;
  margin: 20px auto 0;
  cursor: pointer;
  border: none;
  background-color: #242424;
  color: #fff;
  font-size: 1.4rem;
}

.contact-box > br {
  display: none;
}

.contact-thanks__text--under {
  font-size: 1.3rem;
  margin: 30px 0 0 0;
  display: flex;
}
.contact-thanks__text--under::before {
  content: "※";
}

.sp-br {
  display: none;
}

/******************************************
 サービス
******************************************/
.un-sv {
  margin: 0 0 80px 0;
}
.un-sv__product {
  display: flex;
  justify-content: flex-start;
  padding: 120px 0 0 0;
  /* 英治作 */
}
.un-sv__product:nth-child(2n) {
  flex-flow: row-reverse;
}

.un-sv__product--text-container {
  background-color: #fafafa;
  color: #242424;
  width: 35%;
  min-width: 500px;
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.un-sv__product--text-box {
  width: 80%;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.un-sv__product--title {
  font-size: 2.4rem;
  text-align: center;
  margin: 0 0 30px 0;
  font-weight: 600;
}

.un-sv__product--text {
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: justify;
}

.slider2,
.slider2re {
  width: calc(100% - 100px);
  margin: 0 auto 0 50px;
}

.un-sv__product--work-container {
  width: 65%;
  position: relative;
  z-index: 1;
  padding: 80px 0 105px;
  background-color: #fff;
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 10px 0 0 10px;
  border: solid 3px #bf0000;
  border-right: none;
}

/* 英治作 */
.un-sv__product:nth-child(2n) .un-sv__product--work-container {
  border-radius: 0 10px 10px 0;
  border: solid 3px #bf0000;
  border-left: none;
}

.un-sv__product--work-wrapper {
  width: 100%;
}

.unsv-work-box {
  display: block;
  width: 300px;
  background-color: #fff;
  margin: 0 0px 0px 0;
  box-sizing: border-box;
  border-radius: 3px;
  color: #242424;
  overflow: hidden;
}

.unsv-work-box__img {
  width: 100%;
  position: relative;
  background-color: #f0f0f0;
  overflow: hidden;
}
.unsv-work-box__img::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.unsv-work-box__img img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.unsv-work-box__title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 15px auto 0;
  width: 90%;
}

.unsv-work-box__cl {
  font-size: 1.2rem;
  margin: 0 auto 20px;
  width: 90%;
}
.unsv-work-box__cl::before {
  display: inline-block;
  content: "Client : ";
  font-size: 1.2rem;
  white-space: nowrap;
  margin: 1px 2px 0 0;
}
.unsv-work-box__cl::after {
  content: "様";
}

.unsv-work-box__min-content {
  margin: 0 auto;
  width: 90%;
}

.unsv-work-box__ct {
  font-size: 1.3rem;
  margin: 0 0 5px 0;
}

.unsv-work-box__cate--list {
  display: inline-block;
  line-height: 1.1;
  padding: 5px 8px;
  border-radius: 1px;
  background-color: #bf0000;
  color: #ffffff;
  font-weight: 400;
  font-size: 1.5rem;
}

.unsv-work-box__tag--list {
  display: inline-block;
  line-height: 1;
  margin: 6px 6px 0 0;
  padding: 3px 6px;
  border-radius: 1px;
  background-color: #fff;
  color: #bf0000;
  box-sizing: border-box;
  border: solid 1px #bf0000;
  font-weight: 400;
}

.unsv-work-box__date {
  font-size: 1.2rem;
  text-align: right;
  margin: 0 0 15px 0;
}

.un-service-arrow__box {
  position: absolute;
  top: 25px;
  left: 50px;
  width: 300px;
  height: 30px;
}

.un-service-arrow {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 35px;
}
.un-service-arrow::after {
  content: none;
}

.un-service-arrow--prev {
  left: 0;
  background-image: url(.././thema/assets/prevarrow01.svg);
}

.un-service-arrow--next {
  background-image: url(.././thema/assets/nextarrow01.svg);
  right: 0;
}

.slider2 .normal-btn,
.slider2re .normal-btn {
  position: absolute;
  bottom: 25px;
  right: 50px;
}

/******************************************
映像部門
******************************************/
.un-movie__container {
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
}

.un-movie__box1 {
  margin: 120px 0 80px 0;
}

.un-movie__box1 p {
  /* text-align: center; */
  line-height: 2;
  margin: 0 0 30px 0;
}
.un-movie__box1 p:nth-last-child(1) {
  margin: 0 0 0 0;
}

.un-movie__after--content {
  background-color: #fff;
  padding: 50px;
  border-radius: 3px;
}

.un-movie__after--title {
  text-align: center;
  margin: 0 0 30px 0;
  font-size: 1.9rem;
  font-weight: 600;
}

.un-movie__after--title span {
  font-size: 1.6rem;
}

.un-movie__after--text {
  margin: 0 0 80px 0;
}

.un-movie__after--trial-container {
  margin: 0 0 80px 0;
}

.un-movie__after--trial-box {
  display: flex;
  justify-content: start;
  align-items: center;
  margin: 0 auto 50px;
  width: 700px;
}
.un-movie__after--trial-box:nth-last-child(1) {
  margin: 0 auto;
}

.un-movie__after--concept {
  font-size: 1.7rem;
  margin: 0 0 0 0;
}
.un-movie__after--concept::after {
  content: "";
  display: inline-block;
  height: 15px;
  width: 15px;
  background: url(.././thema/assets/arrow.svg) no-repeat;
  background-position: center;
  background-size: contain;
  margin: 0 20px 0 10px;
}

.un-movie__after--concept span {
  font-weight: 500;
  position: relative;
}
.un-movie__after--concept span::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #bf0000;
  position: absolute;
  top: -7px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.un-movie__after--rslt {
  font-size: 2rem;
  font-weight: 600;
}

.un-movie__after--trial {
  font-weight: 600;
  color: #bf0000;
  margin: 0 0 0 20px;
}

.un-movie__graph--index {
  width: auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 5px;
  white-space: nowrap;
}

.un-movie__graph--list {
  color: #aaa;
  line-height: 1;
  cursor: pointer;
  box-sizing: border-box;
  border: solid 1px #aaa;
  border-radius: 10px;
  padding: 0 10px;
  height: 25px;
  line-height: 25px;
  margin: 10px 5px 0;
  transition: 0.5s cubic-bezier(0.36, 0.01, 0.43, 1);
  font-size: 1.5rem;
}
.un-movie__graph--list:nth-last-child(1)::after {
  content: none;
}

/* .un-movie__graph--list::after {
  content: "";
  display: inline-block;
  margin: 0 20px;
  width: 1px;
  height: 15px;
  background-color: #aaa;
} */
.un-movie__graph--box {
  background-color: #fafafa;
  padding: 50px;
  display: flex;
  flex-wrap: wrap;
}

.un-movie__graph--title {
  text-align: center;
  width: 100%;
  font-size: 2rem;
  font-weight: 600;
  margin: 0 0 30px 0;
}

/* .un-movie__graph--left {
  width: 30%;
  position: relative;
}
.un-movie__graph--left::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.un-movie__graph--trial {
  position: absolute;
  color: #bf0000;
  font-weight: 600;
}
.un-movie__graph--trial:nth-child(1) {
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
}
.un-movie__graph--trial:nth-child(2) {
  bottom: 0;
  left: 0;
  transform: translate(0,0);
}
.un-movie__graph--trial:nth-child(3) {
  bottom: 0;
  right: 0;
  transform: translate(0,0);
}
.un-movie__graph--left svg {
  width: 85%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.un-movie__graph--left svg #en-path {
  fill: #fafafa;
}
.un-movie__graph--left svg #en-hito,
.un-movie__graph--left svg #en-koto,
.un-movie__graph--left svg #en-mono {
  fill: #bf0000;
  transition: 1.7s cubic-bezier(.36,.01,.43,1);
} */
.un-movie__graph--right {
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}

.un-movie__graph--h {
  white-space: nowrap;
  height: 50px;
  font-size: 1.4rem;
  line-height: 50px;
  margin: 20px 20px 0 0;
}
.un-movie__graph--h:nth-child(1) {
  margin: 0 20px 0 0;
}

.un-movie__graph--data-box {
  width: 100%;
}

.un-movie__graph--line {
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  width: 100%;
  margin: 20px auto 0;
  height: 50px;
  position: relative;
}

.un-movie__graph--bar {
  display: inline-block;
  width: 100%;
  height: 100%;
  position: relative;
}

#chart-bar {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  overflow: visible;
}

#chart-bar * {
  fill: none;
  stroke: #999999;
  stroke-width: 0.25;
  stroke-miterlimit: 10;
}

.un-movie__graph--line:nth-child(1) {
  margin: 0 auto;
}

.un-movie__graph--line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-50%, -5px);
  transform: translate(-50%, -5px);
  font-size: 1.3rem;
  color: #555;
}

.un-movie__graph--line::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(50%, -5px);
  transform: translate(50%, -5px);
  font-size: 1.3rem;
  color: #555;
}

.un-movie__graph--line:nth-child(1)::before {
  content: "広";
}

.un-movie__graph--line:nth-child(1)::after {
  content: "深";
}

.un-movie__graph--line:nth-child(2)::before {
  content: "多";
}

.un-movie__graph--line:nth-child(2)::after {
  content: "少";
}

.un-movie__graph--line:nth-child(3)::before {
  content: "難";
}

.un-movie__graph--line:nth-child(3)::after {
  content: "簡";
}

.un-movie__graph--line:nth-child(4)::before {
  content: "長";
}

.un-movie__graph--line:nth-child(4)::after {
  content: "短";
}

.un-movie__graph--line:nth-child(5)::before {
  content: "高";
}

.un-movie__graph--line:nth-child(5)::after {
  content: "低";
}

.un-movie__graph--dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #bf0000;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transition: 1.7s cubic-bezier(0.36, 0.01, 0.43, 1);
}

.un-movie__graph--dot1 {
  left: 100%;
}

.un-movie__graph--dot2 {
  left: 0%;
}

.un-movie__graph--dot3 {
  left: 50%;
}

.un-movie__graph--dot4 {
  left: 50%;
}

.un-movie__graph--dot5 {
  left: 25%;
}

.un-movie__graph--container .normal-btn {
  margin: 30px auto 0;
  width: 250px;
  font-size: 1.6rem;
}

.un-movie__graph--text {
  font-size: 1.3rem;
  color: #555;
  text-align: right;
}

/* グラフの書き換え */
.un-movie__graph-list--active {
  /* color: #242424; */
  background-color: #242424;
  color: #fff;
  border: solid 1px #242424;
}

/******************************************
デザイン部門
******************************************/
/******************************************
ウェブ部門
******************************************/
.un-web {
  margin-bottom: 0;
}

.nuSvInteractive {
  overflow: hidden;
}

.nuSvInteractive__container {
  margin: 250px 0 0 0;
  background-color: #fff;
  padding: 0 0 150px 0;
}

.nuSvInteractive__head {
  font-size: 8vw;
  line-height: 1;
  color: #fff;
  font-weight: 700;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-color: #bf0000;
  padding: 0.1em 0.85em 0.07em;
  display: inline-block;
  border-radius: 0 1px 1px 0;
}

.nuSvInteractive__wrapper {
  margin: 50px auto 0;
  width: 90%;
  max-width: 1200px;
}

.nuSvInteractive__list {
  padding: 150px 0 0 0;
}
.nuSvInteractive__list:nth-child(1) {
  padding-top: 0;
}

.nuSvInteractive__title {
  font-size: 2.4rem;
  font-weight: 600;
  color: #bf0000;
  border-bottom: solid 2px #bf0000;
  padding: 0 0 10px 0;
  width: 60%;
}

.nuSvInteractive__list:nth-child(2n) .nuSvInteractive__title {
  margin: 0 0 0 auto;
}

.nuSvInteractive__content {
  margin: 20px 0 0 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nuSvInteractive__list:nth-child(2n) .nuSvInteractive__content {
  flex-direction: row-reverse;
}

.un-sv__product--work-container.nuSvInteractive_work-container {
  width: 100%;
  border-radius: 10px;
  border: solid 3px #bf0000;
  margin-top: 40px;
}

.nuSvInteractive__text--box {
  width: 60%;
}

.nuSvInteractive__text {
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: justify;
}

.nuSvInteractive__lottie--box {
  width: calc(40% - 50px);
  box-sizing: border-box;
  position: relative;
}
.nuSvInteractive__lottie--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.nuSvInteractive__lottie {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  background-color: #fffcfe;
  border: solid 1px #ebebeb;
  border-radius: 2px;
}

.nuSvInteractive__list--video--box {
  padding-top: 50px;
}

.nuSvInteractive__list--video {
  width: 100%;
  display: block;
  overflow: hidden;
  border-radius: 15px;
}

/******************************************
 インタラクティブ
******************************************/

.ts-fixed__btn {
  position: fixed;
  bottom: 10px;
  right: 80px;
  z-index: 90;
  background-color: #fff;
  border: solid 1px #ebebeb;
  color: #bf0000;
  width: 300px;
  height: 96px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
}
.ts-fixed__btn::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffefef;
  background-color: #fbcece;
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  transition: -webkit-transform 0.45s;
  transition: transform 0.45s;
  transition:
    transform 0.45s,
    -webkit-transform 0.45s;
}
.ts-fixed__btn:hover::before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.ts-fixed__btn--inner {
  text-align: center;
  margin: 0 10px 0 0;
  font-weight: 600;
  position: relative;
  z-index: 2;
}

.ts-fixed__btn--title {
  line-height: 1;
  font-size: 3.4rem;
  white-space: nowrap;
}

.ts-fixed__btn--text {
  font-size: 1.6rem;
  line-height: 1;
  white-space: nowrap;
  margin: 2px 0 0 0;
}

.ts-fixed__btn--arrow {
  display: block;
  width: 12px;
  position: relative;
}

.ts-fixed__btn--arrow #arrow {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  fill: #bf0000;
}

.page-interactive {
  background-color: #fffcfe;
}

.ts-mv__section {
  overflow: hidden;
}

.ts-mv {
  width: 90%;
  max-width: 1100px;
  height: 100vh;
  min-height: 600px;
  margin: 0 auto;
  position: relative;
}

.ts-mv__title--box {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  margin: 60px 0 0 0;
}

.ts-mv__title--outer {
  color: #bf0000;
  font-weight: 500;
  text-shadow: 2px 2px 0 #fff;
}

.ts-mv__title--catch01 {
  /* font-size: 2.1rem; */
}

.ts-prologue2__title--box {
  font-weight: 600;
  text-shadow: none;
}

.ts-prologue2__title01 {
  font-size: 4.2rem;
  line-height: 1;
}

.ts-prologue2__title02 {
  font-size: 3.6rem;
  color: #fff;
  margin: 0 0 0 2px;
}

.ts-prologue2__title02--min {
  background-color: #bf0000;
  padding: 0.1em 0.185em 0em;
}

.ts-prologue2__title02--icon {
  display: inline-block;
  width: 30px;
  height: 26px;
  position: relative;
}
.ts-prologue2__title02--icon::before,
.ts-prologue2__title02--icon::after {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  background-color: #bf0000;
  position: absolute;
  top: 50%;
  left: 50%;
}
.ts-prologue2__title02--icon::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.ts-prologue2__title02--icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.ts-mv__title {
  font-size: 7.5rem;
  line-height: 1;
  font-weight: 800;
}

.ts-mv__title--catch02 {
  font-size: 3.5rem;
  margin: 20px 0 0 0;
  font-weight: 500;
}

.ts-mv__normal-btn {
  background-color: #bf0000;
  color: #fff;
  fill: #fff;
  width: 320px;
  height: 85px;
  line-height: 85px;
  font-size: 1.8rem;
  margin: 80px 0 0 0;
  border-radius: 100px;
}

.ts-mv__normal-btn .normal-btn__text {
  height: 85px;
  line-height: 85px;
}

.ts-mv__img--box {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}

.ts-mv__img {
  position: absolute;
  top: 0;
  right: 0;
  width: 55%;
  min-width: 400px;
  height: 100%;
}
.ts-mv__img::before {
  content: "";
  display: block;
  width: 300%;
  height: 200%;
  min-width: 800px;
  min-height: 800px;
  background: url(.././thema/assets/fluid01.svg) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -1;
}
.ts-mv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
}

.ts-prologue__section {
  padding: 150px 0 0 0;
  background-color: #bf0000;
  color: #fff;
  overflow: hidden;
}

.ts-prologue {
  width: 90%;
  /* max-width: 1250px; */
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: flex-start;
}

.ts-prologue__content--box {
  width: 50%;
  max-width: 750px;
  min-width: 500px;
  position: relative;
  z-index: 1;
}

.ts-prologue__title {
  font-size: 35px;
  font-weight: 500;
  line-height: 1.4;
}

.ts-prologue__text--box {
  margin: 40px 0 0 0;
}

.ts-prologue__text--box p {
  text-align: justify;
  line-height: 2.1;
  margin: 0 0 1.5em 0;
  letter-spacing: 0.05em;
}
.ts-prologue__text--box p:nth-last-child(1) {
  margin-bottom: 0;
}

.ts-prologue__img--box {
  width: 40%;
  /* position: absolute; */
  position: relative;
  top: 0;
  left: 0;
  z-index: 0;
}
.ts-prologue__img--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}

.ts-prologue__img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.ts-prologue__img::before {
  content: "";
  display: block;
  width: 140%;
  height: 140%;
  min-width: 650px;
  min-height: 650px;
  background: url(.././thema/assets/fluid01.svg) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(145deg);
  transform: translate(-50%, -50%) rotate(145deg);
  z-index: -1;
  opacity: 0.4;
}
.ts-prologue__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
}

.ts-prologue2__section {
  background-color: #bf0000;
  color: #fff;
  padding: 150px 0 150px;
}

.ts-prologue2 {
  width: 90%;
  max-width: 1250px;
  margin: 0 auto;
}

.ts-prologue2__container {
  margin: 50px 0 0 0;
  display: flex;
  justify-content: center;
}

.ts-prologue2__content {
  border: solid 2px #fff;
  padding: 24px;
  width: 330px;
  border-radius: 5px;
}

.ts-prologue2__content--img {
  width: 100%;
  height: 100px;
}
.ts-prologue2__content--img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
}

.ts-prologue2__content--title {
  margin: 10px 0 0 0;
  padding: 0 0 10px 0;
  border-bottom: solid 1px #fff;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 500;
}

.ts-prologue2__content--ul {
  margin: 30px auto 0;
  width: 200px;
}

.ts-prologue2__content--list {
  margin: 0 0 10px 0;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
}
.ts-prologue2__content--list:nth-last-child(1) {
  margin-bottom: 0;
}
.ts-prologue2__content--list::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(.././thema/assets/check.svg) no-repeat center center/contain;
  margin: 0 15px 0 0;
}

.ts-prologue2__content--link {
  color: #fff;
  display: block;
  text-align: center;
  margin: 40px 0 0 0;
  text-decoration: underline;
}

.ts-prologue2__content--between {
  position: relative;
  width: 120px;
}
.ts-prologue2__content--between::before,
.ts-prologue2__content--between::after {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
}
.ts-prologue2__content--between::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.ts-prologue2__content--between::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.ts-prologue2__name {
  text-align: center;
}
.ts-prologue2__name::after {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  margin: 40px auto;
  background: url(.././thema/assets/arrow-down.svg) no-repeat center
    center/contain;
}

.ts-prologue2__name--title {
  font-size: 7.5rem;
  font-weight: 600;
  text-shadow: 0px 4px 0 rgba(255, 255, 255, 0.5);
  line-height: 1;
  display: inline-block;
}
.ts-prologue2__name--title::before,
.ts-prologue2__name--title::after {
  content: "";
  display: block;
  width: 100%;
  height: 30px;
  background: url(.././thema/assets/touchselect-arrow.svg) no-repeat center
    center/contain;
}
.ts-prologue2__name--title::before {
  margin: 0 0 10px 0;
}
.ts-prologue2__name--title::after {
  margin: 10px 0 0 0;
  -webkit-transform: rotate3d(0, 0, 1, 180deg);
  transform: rotate3d(0, 0, 1, 180deg);
}

.ts-prologue2__name--text--box {
  max-width: 580px;
  margin: 40px auto 0;
}

.ts-prologue2__name--text--box p {
  line-height: 1.8;
}

.ts-point__section {
  position: relative;
  padding: 150px 0 0 0;
  overflow: hidden;
}

.ts-point {
  position: relative;
}
.ts-point::before {
  content: "What is??";
  white-space: nowrap;
  line-height: 1;
  font-size: 16vw;
  font-weight: 600;
  font-style: italic;
  color: #bf0000;
  opacity: 0.2;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  -webkit-transform: translate(-6%, -50%) rotate(-5deg);
  transform: translate(-6%, -50%) rotate(-5deg);
  padding: 0 0.2em 0 0;
}

.ts-point__title--box {
  width: 90%;
  max-width: 1250px;
  margin: 0 auto;
  color: #bf0000;
  font-weight: 600;
}

.ts-point__title--min {
  font-size: 3rem;
}

.ts-point__title {
  font-size: 6rem;
  line-height: 1.2;
}

.ts-point__list {
  position: relative;
  overflow: hidden;
  padding: 200px 0 150px;
}
.ts-point__list:nth-child(2n) {
  background-color: #f5f5f5;
}

.ts-point__list--inner {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ts-point__list:nth-child(2n) .ts-point__list--inner {
  flex-direction: row-reverse;
}

.ts-point__img--box {
  width: 50%;
}

.ts-point__img {
  width: 100%;
  position: relative;
  z-index: 1;
}
.ts-point__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.25%;
}
.ts-point__img::after {
  content: "";
  display: block;
  width: 200%;
  height: 160%;
  min-width: 500px;
  min-height: 500px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-60%, -50%);
  transform: translate(-60%, -50%);
  z-index: -1;
}

.lottie__box::before {
  padding-top: 100%;
}

.lottie__interactive-movie {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fffcfe;
  border: solid 1px #ebebeb;
  border-radius: 2px;
}

.ts-point__img01::after {
  background: url(.././thema/assets/fluid07.svg) no-repeat center center/contain;
}

.ts-point__img02::after {
  background: url(.././thema/assets/w-fluid08.svg) no-repeat center
    center/contain;
  -webkit-transform: translate(-40%, -50%);
  transform: translate(-40%, -50%);
}

.ts-point__img03::after {
  background: url(.././thema/assets/fluid09.svg) no-repeat center center/contain;
}

.ts-point__img04::after {
  background: url(.././thema/assets/w-fluid10.svg) no-repeat center
    center/contain;
  -webkit-transform: translate(-40%, -50%);
  transform: translate(-40%, -50%);
}

.ts-point__img img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  background-color: #ccc;
}

.ts-point__content {
  width: 50%;
}

.ts-point__content--inner {
  margin: 0 0 0 50px;
  position: relative;
  z-index: 5;
}

.ts-point__list:nth-child(2n) .ts-point__content--inner {
  margin: 0 50px 0 0;
}

.ts-point__content--num {
  color: #bf0000;
  font-size: 6rem;
  font-style: italic;
  font-weight: 400;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translate(-10%, -110%);
  transform: translate(-10%, -110%);
  line-height: 1;
}

.ts-point__content--title {
  font-size: 2.5rem;
  font-weight: 600;
}

.ts-point__content--text--box {
  margin: 25px 0 0 0;
}

.ts-point__content--text--box p {
  line-height: 2.1;
  text-align: justify;
}

.ts-contact__section {
  background-color: #242424;
  position: relative;
  overflow: hidden;
}

.ts-contact {
  width: 90%;
  margin: 0 auto;
  padding: 100px 0;
}

.ts-contact__title {
  text-align: center;
  color: #fff;
  font-size: 4rem;
  font-weight: 600;
}

.ts-contact__title--span {
  white-space: nowrap;
}

.ts-contact__btn {
  display: block;
  color: #242424;
  background-color: #fff;
  margin: 40px auto 0;
  padding: 25px 20px;
  text-align: center;
  box-sizing: border-box;
  max-width: 400px;
  border-radius: 3px;
  position: relative;
  overflow: hidden;
  will-change: transform;
}
.ts-contact__btn::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffefef;
  background-color: #fbcece;
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  transition: -webkit-transform 0.45s;
  transition: transform 0.45s;
  transition:
    transform 0.45s,
    -webkit-transform 0.45s;
}
.ts-contact__btn:hover::before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.ts-contact__btn--title {
  font-size: 4rem;
  font-weight: 600;
  line-height: 1;
  position: relative;
  z-index: 2;
}

.ts-contact__btn--title--min {
  font-size: 1.5rem;
  font-weight: 500;
  margin: 5px 0 0 0;
  line-height: 1;
  position: relative;
  z-index: 2;
}

.ts-each__section {
  margin: 100px 0;
}

.ts-each {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.ts-each__btn {
  display: block;
  width: calc(50% - 25px);
  color: #fff;
  background-color: #bf0000;
  border-radius: 5px;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15);
  transition: 0.4s cubic-bezier(0, 0, 0.2, 1);
  will-change: transform;
}
.ts-each__btn:hover {
  -webkit-transform: scale(0.992);
  transform: scale(0.992);
}

.ts-each__btn--inner {
  text-align: center;
  width: 90%;
  max-width: 500px;
  margin: 4em auto;
}

.ts-each__btn--title {
  font-size: 3rem;
  font-weight: 600;
}

.ts-each__btn--text {
  margin: 10px 0 0 0;
  font-size: 1.4rem;
  text-decoration: underline;
}

/*  */
.flow__icon {
  display: inline-block;
  width: 46px;
  height: 46px;
  background-color: #bf0000;
  border-radius: 0 0 5px 0;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg) skew(-5deg, -5deg);
  transform: translate(-50%, -50%) rotate(45deg) skew(-5deg, -5deg);
}

.ts-point__list:nth-child(2) .flow__icon {
  background-color: #fffcfe;
}

.ts-point__list:nth-child(3) .flow__icon {
  background-color: #f5f5f5;
}

.ts-point__list:nth-child(4) .flow__icon {
  background-color: #fffcfe;
}

.ts-contact__section .flow__icon {
  background-color: #f5f5f5;
}

.ts-contact__service--btn-block {
  margin: 20px auto 0;
}

.ts-contact__service--btn {
  margin: 10px auto 0;
  padding: 15px 40px 12px;
  color: #bf0000;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  width: 100%;
  height: auto;
  min-height: 45px;
  box-sizing: border-box;
}
.ts-contact__service--btn:nth-child(1) {
  margin-top: 0;
}

.ts-contact__service--btn .normal-btn__text {
  line-height: 1.2;
  font-size: 1.8rem;
}

.ts-contact__service--btn .arrow-box {
  fill: #bf0000;
}

.interactiveTopBanner {
  position: fixed;
  bottom: -300px;
  left: 20px;
  z-index: 50;
  -webkit-filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.1));
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.1));
  will-change: transform, animation, position;
}

.interactiveTopBanner__btn--close {
  display: block;
  width: 25px;
  height: 25px;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #fff;
  border: solid 2px #bf0000;
  position: absolute;
  top: -8px;
  right: -8px;
  z-index: 5;
}
.interactiveTopBanner__btn--close:hover {
  cursor: pointer;
}
.interactiveTopBanner__btn--close::before,
.interactiveTopBanner__btn--close::after {
  content: "";
  display: block;
  width: 2px;
  height: 15px;
  border-radius: 2px;
  background-color: #bf0000;
  position: absolute;
  top: 50%;
  left: 50%;
}
.interactiveTopBanner__btn--close::before {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}
.interactiveTopBanner__btn--close::after {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.interactiveTopBanner__container {
  display: block;
  width: 320px;
  box-sizing: border-box;
  border: solid 2px #fff;
  background-color: #bf0000;
  color: #fff;
  border-radius: 2px;
  overflow: hidden;
}

.interactiveTopBanner__head--box {
  font-size: 2.6rem;
  font-weight: 600;
  font-style: italic;
  color: #bf0000;
  background-color: #fff;
  width: 190px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  padding: 0 4px 0 0;
}

.interactiveTopBanner__content {
  margin: 26px auto 0;
  width: 250px;
}

.interactiveTopBanner__title--sub01 {
  font-size: 1.05rem;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
}

.interactiveTopBanner__title {
  font-size: 3.5rem;
  line-height: 1;
  font-weight: 700;
  margin: 2px 0 8px 0px;
  white-space: nowrap;
}

.interactiveTopBanner__title--sub02 {
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
}

.interactiveTopBanner__btn--more {
  display: inline-block;
  font-size: 1.3rem;
  margin: 20px 0 26px 0;
  line-height: 1;
  text-decoration: underline;
}
.interactiveTopBanner__btn--more:hover {
  text-decoration: none;
}

/******************************************
インタラクティブ動画・サイネージ
******************************************/
.ts-point__section--interactive {
  padding-top: 0;
}

.ts-point.un-interactive-point::before {
  display: none;
}

.un-interactive__section {
  overflow: hidden;
}

.un-interactive {
  width: 90%;
  max-width: 1100px;
  margin: 100px auto 0;
}

.un-interactive__title--box {
  color: #bf0000;
  position: relative;
  z-index: 2;
}

.un-interactive__title {
  font-size: 4rem;
  font-weight: 600;
  padding: 0 0 10px 0;
  border-bottom: solid 1px #bf0000;
}

.un-interactive__text {
  margin: 30px 0 0 0;
  font-size: 2rem;
  font-weight: 500;
}

.un-interactive__img--box {
  width: 100%;
  position: relative;
  margin: 80px 0 0 0;
}
.un-interactive__img--box::after {
  content: "";
  display: block;
  width: 200%;
  height: 150%;
  min-width: 500px;
  min-height: 500px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(67deg);
  transform: translate(-50%, -50%) rotate(67deg);
  z-index: 0;
  background: url(.././thema/assets/fluid09.svg) no-repeat center center/contain;
}
.un-interactive__img--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.un-interactive__img--box img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  font-family: "object-fit: contain;";
}

/*  */
.flow__icon--interactive {
  display: inline-block;
  width: 46px;
  height: 46px;
  background-color: #bf0000;
  border-radius: 0 0 2px 0;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg) skew(-5deg, -5deg);
  transform: translate(-50%, -50%) rotate(45deg) skew(-5deg, -5deg);
}

.ts-point__list:nth-child(2) .flow__icon--interactive {
  background-color: #fffcfe;
}

.ts-point__list:nth-child(3) .flow__icon--interactive {
  background-color: #f5f5f5;
}

.ts-point__list:nth-child(4) .flow__icon--interactive {
  background-color: #fffcfe;
}

.ts-point__list:nth-child(5) .flow__icon--interactive {
  background-color: #f5f5f5;
}

.ts-contact__section .flow__icon--interactive {
  background-color: #fffcfe;
}

/******************************************
 blog
******************************************/
.un-blog {
  width: 90%;
  margin: 50px auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.un-blog .un-section__container {
  width: calc(100% - 350px);
}

.un-blog-tax {
  width: 100%;
  line-height: 1;
  font-size: 1.7rem;
  font-weight: 500;
  margin: 0 0 30px 0px;
  box-sizing: border-box;
  border-bottom: solid 1px #242424;
  padding: 0 0 7px 0;
}

.un-blog-container {
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  gap: 50px 45px;
}

.un-blog-box {
  display: block;
  color: #242424;
  width: calc(33.33% - 30px);
}

.un-blog-box__img--outer {
  width: 100%;
  position: relative;
  border-radius: 2px;
  overflow: hidden;
}
.un-blog-box__img--outer::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.66%;
}
.un-blog-box__img--outer img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.un-blog-box__title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 20px 0 10px 0;
}

.un-blog-box__other--box {
  font-size: 1.2rem;
  color: #aaa;
  display: flex;
  justify-content: start;
  align-items: center;
}

.un-blog-box__date {
  display: flex;
  -ms-grid-column-align: start;
  justify-self: start;
  align-items: center;
}
.un-blog-box__date::after {
  content: "";
  display: block;
  width: 1px;
  height: 12px;
  background-color: #aaa;
  margin: 0 10px;
}

.un-blog-box__cate {
  line-height: 1;
}

.un-blog-box__cate--list::after {
  content: "、";
}
.un-blog-box__cate--list:nth-last-child(1)::after {
  content: "";
}

.un-blog .navigation.pagination {
  margin: 0 0 50px 0;
}

.un-blog__right-column {
  width: 300px;
  background-color: #fff;
  border-radius: 2px;
  margin: 0 0 0 50px;
  box-sizing: border-box;
  padding: 2.5%;
}

.un-blog__cate {
  margin: 0 0 30px 0;
}

.un-blog__column--title {
  font-size: 1.7rem;
  box-sizing: border-box;
  border-bottom: solid 1px #242424;
  margin: 0 0 10px 0;
  font-weight: 500;
}

.un-blog__cate--li {
  display: block;
  margin: 0 0 5px 0;
  color: #242424;
  font-size: 1.5rem;
  padding: 0 0 5px 0;
  border-bottom: solid 1px #eee;
}
.un-blog__cate--li:nth-last-child(1) {
  margin-bottom: 0;
}

.recommend.un-blog-box {
  width: 100%;
  margin: 20px 0 0 0;
  padding: 0 0 15px 0;
  box-sizing: border-box;
  border-bottom: solid 1px #eee;
}
.recommend.un-blog-box:nth-last-child(1) {
  border-bottom: none;
  padding: 0 0 0 0;
}

.recommend.un-blog-box__title {
  font-size: 1.4rem;
  margin: 7px 0 3px;
}

.recommend.un-blog-box__other--box {
  font-size: 1rem;
}

/******************************************
 talent
******************************************/
.pageTalent_list-outer {
  padding: 120px 0;
  background-color: #fafafa;
}
.pageTalent_list-outer:nth-child(2n) {
  background-color: #f4f4f4;
}

.pageTalent_list {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

.pageTalent_list-flex {
  display: flex;
  align-items: flex-start;
  gap: 50px;
}
.pageTalent_list-outer:nth-child(2n)
  > .pageTalent_list
  > .pageTalent_list-flex {
  flex-direction: row-reverse;
}

.pageTalent_list-img {
  width: 50%;
  position: relative;
}
.pageTalent_list-img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 132.5%;
}
.pageTalent_list-img > img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2px;
}

.pageTalent_list-content {
  flex-grow: 1;
  width: 50%;
}

.pageTalent_list-name-outer {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  line-height: 1.2;
  margin: 2em 0 0 0;
}

.pageTalent_list-name {
  margin: 0;
  font-size: 3.5rem;
  font-weight: 500;
}

.pageTalent_list-name-min {
  display: inline-block;
  padding: 0 0 0 1em;
  font-size: 1.3rem;
  font-size: 1.2rem;
}

.pageTalent_list-profile {
  margin: 40px 0 0 0;
}

.pageTalent_list-profile-title {
  display: flex;
  align-items: center;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.2;
}
.pageTalent_list-profile-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 0 0 1em;
  background-color: #888888;
}

.pageTalent_list-profile-content {
  margin: 20px 0 0 0;
}

.pageTalent_list-profile-dl {
  margin: 0;
  display: flex;
  align-items: baseline;
  line-height: 1.2;
  padding: 0 0 8px 0;
}
.pageTalent_list-profile-dl:nth-last-child(1) {
  padding-bottom: 0;
}

.pageTalent_list-profile-dt {
  width: 100px;
}

.pageTalent_list-profile-dd {
  margin: 0;
  display: flex;
  align-items: baseline;
  width: calc(100% - 100px);
}
.pageTalent_list-profile-dd::before {
  content: "：";
}

.pageTalent_list-career {
  margin: 40px 0 0 0;
}

.pageTalent_list-career-title {
  display: flex;
  align-items: center;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.2;
}
.pageTalent_list-career-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 0 0 1em;
  background-color: #888888;
}

.pageTalent_list-career-content {
  margin: 20px 0 0 0;
}

.pageTalent_list-gallery {
  margin: 40px 0 0 0;
}

.pageTalent_list-gallery-title {
  display: flex;
  align-items: center;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.2;
}
.pageTalent_list-gallery-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: 0 0 0 1em;
  background-color: #888888;
}

.pageTalent_list-gallery-content {
  margin: 20px 0 0 0;
}

.pageTalent_list-gallery-wrapper {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}

.pageTalent_list-gallery-img {
  display: block;
  width: calc(25% - 15px);
  position: relative;
}
.pageTalent_list-gallery-img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.pageTalent_list-gallery-img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2px;
}

.talent_none-text {
  width: 90%;
  height: 50vh;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pageTalent_list-career-content > p {
  margin: 0 0 1em 0;
  line-height: 1.5;
}
.pageTalent_list-career-content > h4 + ul,
.pageTalent_list-career-content > h4 + ol {
  margin: -1em 0 0 0;
}
.pageTalent_list-career-content > ol > li {
  list-style: decimal-leading-zero;
  margin-left: 1.3em;
  text-indent: -0.1em;
  line-height: 1.5;
}
.pageTalent_list-career-content > ul > li {
  list-style: none;
  position: relative;
  padding-left: 1em;
  line-height: 1.5;
}
.pageTalent_list-career-content > ul > li::before {
  content: "";
  width: 0.23em;
  height: 0.23em;
  background: #252525;
  border-radius: 50%;
  position: absolute;
  left: 0.35em;
  top: 0.65em;
}
.pageTalent_list-career-content a {
  text-decoration: underline;
}
.pageTalent_list-career-content > *:nth-last-child(1) {
  margin-bottom: 0;
}

.page3SignVision_container {
  color: #40220f;
}

.page3SignVisionMv_section {
  width: 100%;
  height: 100vh;
  height: 100svh;
  max-height: 56vw;
}

.page3SignVisionMv_section-inner {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.page3SignVisionMv_block {
  width: 100%;
  height: 100%;
  position: relative;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
}

.page3SignVisionMv_bg-base {
  width: 120%;
  height: 100%;
  border-radius: 50% 50% 0 0;
  background-color: #fafafa;
  position: absolute;
  bottom: -13%;
  left: -10%;
}

.page3SignVisionMv_block-inner {
  width: 80%;
  max-width: 140vh;
  height: 100%;
  margin: 0 auto;
  position: relative;
}

.page3SignVisionMv_sign {
  width: 100%;
  padding-top: 24.028%;
  background: url(.././thema/assets/signVision_monitor2.png) no-repeat center
    center/contain;
  position: absolute;
  top: 8%;
  left: 0;
}

.page3SignVisionMv_people-outer {
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

.page3SignVisionMv_people-inner {
  width: 58%;
  background: url(.././thema/assets/signvision_pepole0_all.png) no-repeat center
    center/contain;
  position: absolute;
  bottom: 12%;
  left: 0;
}
.page3SignVisionMv_people-inner::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.15%;
}

.page3SignVisionMv_logo {
  width: 55%;
  background: url(.././thema/assets/pageVisual_signageVision2.png?002) no-repeat
    center center/contain;
  position: absolute;
  bottom: 8%;
  right: 0;
  left: auto;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.12));
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.12));
}
.page3SignVisionMv_logo::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 36.35%;
}

.page3SignVisionAbout_section {
  width: 100%;
  overflow: hidden;
  padding: 150px 0 0 0;
}

.page3SignVisionAbout_section-inner {
  width: 100%;
  margin: 0 auto;
}

.page3SignVisionAbout_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionAbout_head {
  font-size: 2.1875em;
  margin: 0;
}

.page3SignVisionAbout_container {
  width: 100%;
  position: relative;
  margin: -25vh 0 0 0;
}

.page3SignVisionAbout_container_bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
  opacity: 0;
}

.page3SignVisionAbout_anime-block {
  width: 100%;
  height: 100vh;
  height: 100svh;
}

.page3SignVisionAbout_anime-block-inner {
  width: 90%;
  max-width: 1500px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page3SignVisionAbout_anime-bg-outer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.page3SignVisionAbout_anime-bg {
  color: rgba(0, 0, 0, 0);
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.25);
  font-weight: 900;
  line-height: 1.45;
  position: absolute;
  white-space: nowrap;
  font-family: "Zen Old Mincho", serif;
}
.page3SignVisionAbout_anime-bg.first {
  font-size: 18vw;
  top: 55%;
  left: 48%;
  line-height: 1.1;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  letter-spacing: -0.05em;
  text-align: right;
}
.page3SignVisionAbout_anime-bg.first > span.large {
  font-size: 1.7em;
}
.page3SignVisionAbout_anime-bg.second {
  font-size: 32vw;
  line-height: 1.01;
  top: 48%;
  left: 62%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.page3SignVisionAbout_anime-bg.three {
  font-size: 26.25vw;
  top: 48%;
  left: 57%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  letter-spacing: -0.05em;
  line-height: 1.3;
}

.page3SignVisionAbout_anime-monitor-outer {
  width: 100%;
  position: relative;
}
.page3SignVisionAbout_anime-monitor-outer::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 18.8%;
}

.page3SignVisionAbout_anime-monitor-fullImg {
  width: 99.5%;
  height: 98%;
  position: absolute;
  top: 1%;
  left: 0.25%;
  background-color: #272727;
  background: url(.././thema/assets/lp_animation_img02.jpg) no-repeat center
    center/cover;
}

.page3SignVisionAbout_anime-monitor {
  width: 33.4%;
  height: 100%;
  position: absolute;
  top: 0;
  background-color: #272727;
  border-radius: 5px;
  overflow: hidden;
}
.page3SignVisionAbout_anime-monitor::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  background: url(.././thema/assets/top3sv_monitor_single.svg) no-repeat center
    center/cover;
}
.page3SignVisionAbout_anime-monitor.monitorLeft {
  left: 0;
}
.page3SignVisionAbout_anime-monitor.monitorCenter {
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.page3SignVisionAbout_anime-monitor.monitorRight {
  right: 0;
}

.page3SignVisionAbout_anime-monitor-img {
  display: block;
  width: 99%;
  height: 99%;
  position: absolute;
  top: 0.5%;
  left: 0.5%;
  z-index: 1;
  background: url(.././thema/assets/lp_animation_img01.jpg) no-repeat center
    center/cover;
  border-radius: 8px;
}

.page3SignVisionAbout_anime-monitor-img2 {
  display: block;
  width: 99%;
  height: 99%;
  position: absolute;
  top: 0.5%;
  left: 0.5%;
  z-index: 1;
  background: no-repeat center center/cover;
  border-radius: 8px;
}
.page3SignVisionAbout_anime-monitor-img2.monitorLeft {
  background-image: url(.././thema/assets/lp_animation_img05.png);
}
.page3SignVisionAbout_anime-monitor-img2.monitorCenter {
  background-image: url(.././thema/assets/lp_animation_img04.gif);
}
.page3SignVisionAbout_anime-monitor-img2.monitorRight {
  background-image: url(.././thema/assets/lp_animation_img05.png);
}

.page3SignVisionAbout_wrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100vh;
  height: 100svh;
  margin: 0 auto;
}

.page3SignVisionAbout_list {
  width: 80%;
  max-width: 600px;
  position: absolute;
  overflow: hidden;
}
.page3SignVisionAbout_list.first {
  top: 20%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  left: 5%;
}
.page3SignVisionAbout_list.second {
  top: 26%;
  right: 2.5%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.page3SignVisionAbout_list.three {
  bottom: 26%;
  left: 14%;
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

.page3SignVisionAbout_list-content-block {
  width: 100%;
  box-sizing: border-box;
  padding: 6%;
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 3px;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.08);
}

.page3SignVisionAbout_list-head {
  margin: 0 0 0 0;
  font-size: 1.85em;
  font-weight: 600;
}

.page3SignVisionAbout_list-content {
  padding: 1em 0 0 0;
}
.page3SignVisionAbout_list-content > p {
  font-size: 1.125em;
  margin: 0;
  line-height: 1.75;
  font-weight: 500;
}

.page3SignVisionCan_section {
  padding: 150px 0 0 0;
}

.page3SignVisionCan_section-inner {
  width: 90%;
  max-width: 950px;
  margin: 0 auto;
}

.page3SignVisionCan_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionCan_head {
  font-size: 2.1875em;
  margin: 0;
}

.page3SignVisionCan_wrapper {
  width: 100%;
  margin: 70px 0 0 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 90px;
}

.page3SignVisionCan_list {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 34px;
}
.page3SignVisionCan_list:nth-child(2n) {
  flex-direction: row-reverse;
}

.page3SignVisionCan_list-img {
  width: calc(50% - 17px);
  position: relative;
  border: solid 1px #40220f;
  border-radius: 3px;
  overflow: hidden;
}
.page3SignVisionCan_list-img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.72%;
}
.page3SignVisionCan_list-img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.page3SignVisionCan_list-container {
  width: calc(50% - 17px);
}

.page3SignVisionCan_list-head {
  margin: 0;
  font-size: 1.5em;
  line-height: 1.4;
}

.page3SignVisionCan_list-content {
  margin: 1em 0 0 0;
}
.page3SignVisionCan_list-content > p {
  margin: 0;
  line-height: 1.75;
}

.page3SignVisionArea_section {
  margin: 150px 0 0 0;
  padding: 150px 0 150px 0;
  background-color: rgba(64, 34, 15, 0.08);
}

.page3SignVisionArea_section-inner {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
}

.page3SignVisionArea_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionArea_head {
  font-size: 2.1875em;
  line-height: 1.4;
  margin: 0;
}
.page3SignVisionArea_head > .large {
  font-size: 1.5em;
}

.page3SignVisionArea_wrapper {
  padding: 60px 0 0 0;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 30px;
}

.page3SignVisionArea_list {
  width: calc(50% - 10px);
  position: relative;
}
.page3SignVisionArea_list::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 74.45%;
}

.page3SignVisionArea_list-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.page3SignVisionArea_list-img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.page3SignVisionArea_list-head {
  width: 100%;
  box-sizing: border-box;
  padding: 0.8em 1em 0;
  position: absolute;
  top: 0;
  left: 0;
}
.page3SignVisionArea_list-head > h5 {
  margin: 0;
  font-size: 1.25em;
  line-height: 1.25;
}

.page3SignVisionArea_under {
  padding: 30px 0 0 0;
}

.page3SignVisionArea_under-content {
  display: flex;
  align-items: center;
  justify-content: center;
}
.page3SignVisionArea_under-content::before,
.page3SignVisionArea_under-content::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 1px;
  background-color: #40220f;
  flex-grow: 1;
}
.page3SignVisionArea_under-content > p {
  font-size: 1.125em;
  white-space: nowrap;
  padding: 0 0.85em 0 1em;
  font-weight: 600;
}

.page3SignVisionContact01_section {
  width: 100%;
}

.page3SignVisionContact01_section-inner {
  width: 100%;
  box-sizing: border-box;
  padding: 100px 5%;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
}

.page3SignVisionContact01_text-block > p {
  text-align: center;
  color: #ffffff;
  line-height: 1.5;
  font-size: 1.25em;
  font-weight: 500;
}

.page3SignVisionContact01_btn {
  margin: 1.35em auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 520px;
  height: 100px;
  background-color: #fff100;
  border-radius: 10px;
  color: #40220f;
  font-weight: 700;
  font-size: 1.4em;
}

.page3SignVisionCase_section {
  padding: 150px 0 0 0;
}

.page3SignVisionCase_section-inner {
  width: 90%;
  max-width: 950px;
  margin: 0 auto;
}

.page3SignVisionCase_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionCase_head {
  font-size: 2.1875em;
  margin: 0;
}

.page3SignVisionCase_wrapper {
  width: 100%;
  margin: 70px 0 0 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 35px;
}

.page3SignVisionCase_list {
  display: block;
  color: #40220f;
  text-decoration: none;
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 2px;
}
.page3SignVisionCase_list::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 18.888%;
}
.page3SignVisionCase_list::after {
  content: "";
  display: block;
  width: 5em;
  height: 5em;
  max-height: 80%;
  background: url(.././thema/assets/movie_pley_white.svg) no-repeat center
    center/contain;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.page3SignVisionCase_list-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.page3SignVisionCase_list-img::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.05);
  transition: all 0.5s ease-out;
}
.page3SignVisionCase_list:hover > .page3SignVisionCase_list-img::before {
  background-color: rgba(255, 255, 255, 0.15);
}
.page3SignVisionCase_list-img > img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.page3SignVisionCase_wrapper button.videoModal_close {
  background: none;
  display: block;
  border: none;
  padding: 0;
  box-sizing: border-box;
  width: 2.5em;
  height: 2.5em;
  cursor: pointer;
  background: url(.././thema/assets/close_btn.svg) no-repeat center
    center/contain;
  transition: all 0.35s ease-out;
}
.page3SignVisionCase_wrapper button.videoModal_close:hover {
  -webkit-filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.7));
  filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.7));
}
.page3SignVisionCase_wrapper .videoModal_content-outer {
  width: 90%;
  max-width: 1200px;
  position: relative;
}
.page3SignVisionCase_wrapper .videoModal_content-outer::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 18.888%;
}
.page3SignVisionCase_wrapper .videoModal_content-outer::after {
  content: "";
  display: block;
  width: 100.5%;
  height: 100.5%;
  position: absolute;
  top: -0.25%;
  left: -0.25%;
  background: url(.././thema/assets/top3sv_monitor_3.png) no-repeat center
    center/contain;
  pointer-events: none;
}
.page3SignVisionCase_wrapper
  .videoModal_content-outer
  > video.videoModal_content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 2px;
}

.page3SignVisionProcess_section {
  padding: 150px 0 150px 0;
  margin: 150px 0 0 0;
  background-color: rgba(64, 34, 15, 0.08);
}

.page3SignVisionProcess_section-inner {
  width: 90%;
  max-width: 950px;
  margin: 0 auto;
}

.page3SignVisionProcess_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionProcess_head {
  font-size: 2.1875em;
  margin: 0;
}

.page3SignVisionProcess_wrapper {
  width: 100%;
  margin: 70px 0 0 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 55px;
}

.page3SignVisionProcess_list {
  background-color: #fff;
  border-radius: 5px;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  position: relative;
}
.page3SignVisionProcess_list::before {
  content: "";
  display: block;
  width: 60px;
  height: 20px;
  background: url(.././thema/assets/sv3_step_arrow_gradient.svg) no-repeat
    center center/contain;
  position: absolute;
  bottom: -19px;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
}
.page3SignVisionProcess_list:nth-last-child(1)::before {
  content: none;
}

.page3SignVisionProcess_list-num-block {
  width: 90px;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px 0 0 5px;
}

.page3SignVisionProcess_list-num {
  width: 50px;
  height: 50px;
  background: no-repeat center center/contain;
}
.page3SignVisionProcess_list-num.num01 {
  background-image: url(.././thema/assets/sv3_step_num01.svg);
}
.page3SignVisionProcess_list-num.num02 {
  background-image: url(.././thema/assets/sv3_step_num02.svg);
}
.page3SignVisionProcess_list-num.num03 {
  background-image: url(.././thema/assets/sv3_step_num03.svg);
}
.page3SignVisionProcess_list-num.num04 {
  background-image: url(.././thema/assets/sv3_step_num04.svg);
}

.page3SignVisionProcess_list-container {
  width: calc(100% - 90px);
  box-sizing: border-box;
  padding: 3.25%;
}

.page3SignVisionProcess_list-head {
  margin: 0;
  line-height: 1.3;
  font-size: 1.5em;
}

.page3SignVisionProcess_list-content {
  margin: 0.7em 0 0 0;
}
.page3SignVisionProcess_list-content > p {
  line-height: 1.75;
}
.page3SignVisionProcess_list-content a {
  text-decoration: underline;
}
.page3SignVisionProcess_list-content > small {
  display: inline-block;
  line-height: 1.4;
  margin: 0.5em 0 0 0;
}

.page3SignVisionCost_section {
  padding: 150px 0 0 0;
}

.page3SignVisionCost_section-inner {
  width: 90%;
  max-width: 950px;
  margin: 0 auto;
}

.page3SignVisionCost_head-outer {
  width: 100%;
  text-align: center;
}

.page3SignVisionCost_head {
  font-size: 2.1875em;
  margin: 0;
}

.page3SignVisionCost_content-block {
  width: 100%;
  margin: 70px 0 0 0;
}

.page3SignVisionCost_content > *:nth-child(1) {
  margin-top: 0;
}
.page3SignVisionCost_content > *:nth-last-child(1) {
  margin-bottom: 0;
}
.page3SignVisionCost_content p {
  margin: 0 0 1.5em 0;
  line-height: 1.9;
}
.page3SignVisionCost_content a {
  text-decoration: underline;
}
.page3SignVisionCost_content small {
  display: block;
  line-height: 1.35;
}
.page3SignVisionCost_content h1,
.page3SignVisionCost_content h2 {
  margin: 2.5em 0 0.8em;
  padding: 0 0 0.3em 0;
  font-size: 1.5em;
  line-height: 1.4;
  color: #40220f;
  border-bottom: solid 1px #40220f;
}
.page3SignVisionCost_content h3 {
  margin: 2em 0 1em;
  border-radius: 0.1em;
  line-height: 1.4;
  color: #40220f;
  font-size: 1.3em;
}
.page3SignVisionCost_content h4 {
  padding: 0;
  margin: 0em 0 0.5em;
  line-height: 1.4;
  font-size: 1.2em;
  text-align: left;
}
.page3SignVisionCost_content h5 {
  padding: 0;
  margin: 0em 0 0.5em;
  line-height: 1.4;
  font-size: 1.1em;
  text-align: left;
}
.page3SignVisionCost_content h6 {
  padding: 0;
  margin: 0em 0 0.5em;
  line-height: 1.4;
  font-size: 1.05em;
  text-align: left;
}
.page3SignVisionCost_content > iframe {
  width: 100%;
}
.page3SignVisionCost_content figure {
  margin: 0 0 1.5em 0;
  overflow: hidden;
  border-radius: 2px;
}
.page3SignVisionCost_content figure > img {
  display: block;
  width: 100%;
  height: auto;
}
.page3SignVisionCost_content ol,
.page3SignVisionCost_content ul {
  padding: 0;
}
.page3SignVisionCost_content ol li {
  line-height: 1.6;
  margin: 0 0 0.5em 1.4em;
  list-style-type: decimal;
}
.page3SignVisionCost_content ol li:nth-last-child(1) {
  margin-bottom: 0;
}
.page3SignVisionCost_content ul li {
  line-height: 1.6;
  margin: 0 0 0.5em 1.2em;
  list-style-type: disc;
  display: flex;
  position: relative;
}
.page3SignVisionCost_content ul li:nth-last-child(1) {
  margin-bottom: 0;
}
.page3SignVisionCost_content ul li::marker {
  content: none;
}
.page3SignVisionCost_content ul li::before {
  content: "";
  display: block;
  width: 0.225em;
  height: 0.225em;
  background-color: #40220f;
  border-radius: 50%;
  position: absolute;
  top: 0.75em;
  left: -0.8em;
}

.page3SignVisionCost_content > .wp-block-table > figcaption.wp-element-caption {
  padding: 0.5em 0 0 0;
  font-size: 0.875em;
  line-height: 1.3;
}
.page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout {
  background-color: #fff;
}
.page3SignVisionCost_content
  > .wp-block-table
  > table.has-fixed-layout
  > thead {
  background-color: rgba(64, 34, 15, 0.1);
  border-bottom: none;
}
.page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout th {
  border: solid 1px rgba(64, 34, 15, 0.65);
  box-sizing: border-box;
}
.page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout td {
  border: solid 1px rgba(64, 34, 15, 0.65);
  box-sizing: border-box;
}

.page3SignVisionContact02_section {
  width: 100%;
  margin: 150px 0 0 0;
}

.page3SignVisionContact02_section-inner {
  width: 100%;
  box-sizing: border-box;
  padding: 150px 5%;
  background: linear-gradient(90deg, #f5ae16, #e61e59);
}

.page3SignVisionContact02_text-block > p {
  text-align: center;
  color: #ffffff;
  line-height: 1.5;
  font-size: 1.25em;
  font-weight: 500;
}

.page3SignVisionContact02_btn {
  margin: 1.35em auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 520px;
  height: 100px;
  background-color: #fff100;
  border-radius: 10px;
  color: #40220f;
  font-weight: 700;
  font-size: 1.4em;
}

/******************************************
 single
******************************************/
.single__title--container {
  width: 100%;
  height: 200px;
  background-color: #bf0000;
  position: relative;
  /* padding: 0 5%; */
}

.single__title--box {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 5%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  display: flex;
  justify-content: start;
  align-items: center;
}

.single__title {
  font-size: 9rem;
  line-height: 1;
  font-weight: 600;
}

.single__title--min {
  display: inline-block;
  font-size: 2rem;
  line-height: 1;
  margin: 25px 0 0 20px;
  font-weight: 600;
}

/* 内部リンク */
.blogcard {
  line-height: 1;
  background-color: #ffffff;
  border: 1px solid #eeeeee;
  word-wrap: break-word;
  margin: 1.5em 0;
  box-shadow: 0 0 10px 6px rgba(0, 0, 0, 0.025);
}

.blogcard a {
  text-decoration: none;
  opacity: 1;
  transition: all 0.2s ease;
  display: flex;
  justify-content: start;
  align-items: center;
  color: #888;
  padding: 0px 1em;
  min-height: 150px;
}
.blogcard a:hover {
  opacity: 0.6;
}

.blogcard_thumbnail {
  margin: 10px 0;
  width: 180px;
  position: relative;
}
.blogcard_thumbnail::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.blogcard_thumbnail img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.blogcard_content {
  width: calc(100% - 180px);
}

.blogcard_title {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.4;
  padding: 17px 20px 10px;
  color: #242424;
}

.blogcard_excerpt {
  font-size: 0.85em;
  line-height: 1.6;
  padding: 0 17px 15px 20px;
}

/******************************************
 news
******************************************/
.single-news {
  width: 90%;
  max-width: 800px;
  margin: 80px auto;
}

.single-news__container {
  margin: 0 0 50px 0;
}

.single-news__title {
  font-size: 3rem;
  margin: 0 0 30px 0;
}

.single-news__date {
  margin: 0 0 50px 0;
  display: flex;
  justify-content: flex-start;
  font-size: 1.4rem;
  color: #555;
}

.single-news__date--time {
  margin: 0 20px 0 0;
}

.single-news__under {
  box-sizing: border-box;
  border-top: solid 1px #555;
}

.single-news__under--btn {
  margin: 30px auto 0;
  color: #242424;
  display: flex;
  width: 85px;
}
.single-news__under--btn span:nth-child(1) {
  display: inline-block;
  margin: 0 7px 0 0;
}

.single-arrow-box {
  width: 6px;
  display: inline-block;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
  will-change: transform, animation, position;
}

.single-news__under--btn:hover .single-arrow-box {
  -webkit-transform: translate(5px, 0);
  transform: translate(5px, 0);
}

.single-arrow-box svg {
  width: 6px;
}

/******************************************
 work
******************************************/
.single-work {
  width: 90%;
  max-width: 800px;
  margin: 0 auto 80px;
}

.single-work__container {
  padding: 80px 0 0 0;
}

.single-work__mainvisual--box {
  width: 100%;
  position: relative;
  background-color: #aaa;
}
.single-work__mainvisual--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 60%;
}
.single-work__mainvisual--box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.single-work__time {
  text-align: right;
  font-size: 1.4rem;
}

.single-work__title {
  font-size: 3rem;
  margin: 15px 0 50px 0;
}

.single-work__date--container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 1.4rem;
  margin: 0 0 50px 0;
}

.single-work__date--box1 {
  width: calc(50% - 20px);
}

.single-work__date--table {
  margin: 0;
}

.single-work__date--row {
  display: flex;
  justify-content: flex-start;
  box-sizing: border-box;
  border-bottom: solid 1px #aaa;
  padding: 0 0 8px 0;
  margin: 0 0 20px 0;
}

.single-work__date--h {
  width: 100px;
  font-weight: 500;
}

.single-work__date--d {
  margin: 0;
  max-width: calc(100% - 100px);
}

.single-work__date--cate::after {
  content: "／";
}
.single-work__date--cate:nth-last-child(1)::after {
  content: "";
}

.single-work__date--d-url {
  width: calc(100% - 100px);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.single-work__date--d a {
  color: #242424;
  position: relative;
  top: 0;
  left: 0;
}
.single-work__date--d a::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  border-bottom: solid 1px #242424;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: 0.3s cubic-bezier(0.36, 0.01, 0.43, 1);
}
.single-work__date--d a:hover::before {
  width: 100%;
}

.single-work__date--box2 {
  width: calc(50% - 20px);
  box-sizing: border-box;
  padding: 15px;
  background-color: #fff;
}

.single-work__date--title {
  font-weight: 500;
  margin: 0 0 5px 0;
}

.single-work__concept--box {
  margin: 0 0 50px 0;
}

.single-work__concept--title {
  font-size: 2rem;
  font-weight: 500;
  margin: 0 0 20px 0;
}

.wp-block-embed {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  position: relative;
}
.wp-block-embed::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66%;
}

.wp-block-embed > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wp-block-image {
  margin-left: 0;
  margin-right: 0;
}

.wp-block-image img {
  width: 100%;
  height: auto;
}

/******************************************
 single-blog
******************************************/
.single-blog.single-section {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin: 50px auto;
  width: 90%;
}

.single-blog.left {
  width: calc(100% - 350px);
  max-width: 800px;
  box-sizing: border-box;
  padding: 50px;
  background-color: #fff;
}

.single-blog__container {
  margin: 0 0 50px 0;
}

.single-blog__title {
  font-size: 3rem;
  font-weight: 600;
  margin: 0 0 5px 0;
}

.single-blog__other {
  color: #aaa;
  font-size: 1.4rem;
  display: flex;
  justify-content: start;
  margin: 0 0 30px 0;
}

.single-blog__date {
  display: flex;
  align-items: center;
  justify-content: start;
  margin: 0 15px 0 0;
}
.single-blog__date::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background-image: url(.././thema/assets/time.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 4px 0 0;
}

.single-blog__cate {
  display: flex;
  align-items: center;
  justify-content: start;
}
.single-blog__cate::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background-image: url(.././thema/assets/cate.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 4px 0 0;
}

.single-blog__cate--inner::after {
  content: "、";
}
.single-blog__cate--inner:nth-last-child(1)::after {
  content: "";
}

.single-blog__avatar--block {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 0 0.5em 0;
}

.single-blog__avatar--img {
  overflow: hidden;
  width: 2em;
  height: 2em;
  border-radius: 50%;
}
.single-blog__avatar--img > img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.single-blog__avatar--name {
  padding: 0 0 0 0.6em;
  line-height: 1;
  white-space: nowrap;
}

.single-blog__mainvisual--box {
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 2px;
  margin: 0 0 50px 0;
}
.single-blog__mainvisual--box::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.666%;
}
.single-blog__mainvisual--box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.single-blog__textbox--inner a,
.single-work__concept--text a {
  text-decoration: underline;
}

.single-blog__textbox--inner p,
.single-work__concept--text p {
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  line-height: 2.1;
  margin: 1.5em 0;
}

.single-blog__textbox--inner h2,
.single-work__concept--text h2 {
  box-sizing: border-box;
  margin: 2em 0 1em;
  padding: 0.5em 15px 0.4em;
  background-color: #eee;
}

.single-blog__textbox--inner h3,
.single-work__concept--text h3 {
  margin: 2em 0 1em;
}

.single-blog__textbox--inner figure,
.single-work__concept--text figure {
  margin: 1.5em 0;
  overflow: hidden;
  border-radius: 2px;
}

.single-blog__textbox--inner figure img,
.single-work__concept--text figure img {
  display: block;
}

.single-blog__textbox--inner figure .wp-element-caption,
.single-work__concept--text figure .wp-element-caption {
  font-size: 0.775em;
  margin: 0.35em 0 0 0;
  color: #919191;
}

.single-blog__textbox--inner ol,
.single-blog__textbox--inner ul,
.single-work__concept--text ol,
.single-work__concept--text ul {
  padding: 0;
}

.single-blog__textbox--inner ol li,
.single-work__concept--text ol li {
  line-height: 1.8;
  letter-spacing: 0.1rem;
  margin: 0.5em 0 0.5em 1.4em;
  list-style-type: decimal;
}

.single-blog__textbox--inner ul li,
.single-work__concept--text ul li {
  line-height: 1.8;
  letter-spacing: 0.1rem;
  margin: 0.5em 0 0.5em 1.4em;
  list-style-type: disc;
}

/*
Theme Name: _ichigeki_thema
Theme URL:
Description:
Author: sho_tamura
Version: 1.0.0
Tags:
License:
License URI:
*/

@media screen and (max-width: 1599px) {
  .un-work-container {
    gap: 40px 30px;
  }
  .un-work-box {
    width: calc(33.333% - 20px);
  }
  .un-blog-container {
    gap: 50px;
  }
  .un-blog-box {
    width: calc(50% - 25px);
  }
}

@media screen and (max-width: 1299px) {
  .f-menu {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
  }
  .f-menu__company {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 25px 0;
    padding: 0 0 25px 0;
    border-bottom: solid 1px #fff;
  }
  .f-menu__company--logo {
    width: 100px;
  }
  .f-menu__sns {
    margin-top: 0;
    flex-direction: row;
  }
  .f-menu__sns--list {
    margin-bottom: 0 !important;
  }
  .blog {
    flex-flow: column;
  }
  .blog .section__content {
    width: 95%;
    margin: 50px 0 0 auto;
  }
}

@media screen and (max-width: 1269px) {
  .un-eqp {
    display: block;
  }
  .uneq-section__title {
    margin-bottom: 20px;
  }
  .uneq-section__container {
    min-width: auto;
    max-width: 800px;
    margin: 0 auto;
  }
  .uneq-section__container--img--box {
    margin-top: 30px;
  }
}

@media screen and (max-width: 1249px) {
  .h-menu__sns--list {
    margin-bottom: 0 !important;
  }
  .h-menu__content {
    height: 90%;
    max-height: 600px;
    flex-flow: column;
    justify-content: space-evenly;
    align-items: flex-start;
  }
  .h-menu__company {
    box-sizing: border-box;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .h-menu__line {
    width: 100%;
    height: 1px;
  }
  .h-menu__nav {
    width: 100%;
  }
  .h-menu__company--logo {
    width: 100px;
  }
  .h-menu__sns {
    margin-top: 0;
    flex-direction: row;
  }
  .nav__list {
    margin-left: 2.7em;
  }
  .nav__list > a {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 1199px) {
  .un-recruit {
    display: block;
  }
  .un-recruit .un-section__title {
    width: 100%;
    padding-right: 0;
  }
  .un-recruit .un-section__title--h > br.pc_br {
    display: none;
  }
  .un-section__container.recruit {
    width: 100%;
  }
}

@media screen and (max-width: 1149px) {
  .un-sv__product {
    display: block;
    padding: 120px 0 0 0;
    overflow: hidden;
  }
  .un-sv__product--text-container {
    width: 90%;
    max-width: 600px;
    margin: 0 0 30px 5%;
  }
  .un-sv__product--text-box {
    width: 100%;
    margin: 0 auto;
    position: static;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .un-sv__product--title {
    text-align: left;
  }
  .un-sv__product--work-container {
    width: 95%;
    margin: 0 0 0 auto;
  }
  .un-sv__product:nth-child(2n) .un-sv__product--work-container {
    border-radius: 10px 0 0 10px;
    border: solid 3px #bf0000;
    border-right: none;
  }
}

@media screen and (max-width: 1099px) {
  .un-blog {
    display: block;
  }
  .un-blog .un-section__container {
    width: 100%;
  }
  .un-blog__right-column {
    width: 100%;
    margin: 0 auto;
  }
  .un-blog__column--title {
    font-size: 1.6rem;
    margin: 0 0 13px 0;
  }
  .un-blog__cate--li {
    margin: 0 0 10px 0;
    font-size: 1.4rem;
    padding: 0 0 10px 0;
  }
  .recommend.un-blog-box {
    display: flex;
    justify-content: start;
    align-items: flex-start;
  }
  .recommend.un-blog-box__img--outer {
    width: 30%;
  }
  .recommend.un-blog-box__right {
    width: 65%;
    margin: 0 0 0 5%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
  }
  .recommend.un-blog-box__title {
    font-size: 1.5rem;
    line-height: 1.6;
    margin: 0px 0 3px;
  }
  .recommend.un-blog-box__other--box {
    font-size: 1.2rem;
  }
  .single-blog.single-section {
    display: block;
    margin: 50px auto;
    width: 90%;
  }
  .single-blog.left {
    width: 100%;
    margin: 0 auto 50px;
  }
  .single-blog.un-blog__right-column {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .f-nav__container .nav__list {
    margin: 0 0 0 3.5vw;
  }
  .f-nav__container .nav__list:nth-child(1) {
    margin: 0 0 0 0;
  }
  .f-nav__container .nav__list > a {
    font-size: clamp(13px, 1.4vw, 20px);
  }
  .f-nav__container .nav__child-list > a {
    font-size: 1.3vw;
  }
}

@media screen and (max-width: 1024px) {
  body {
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .work-content {
    width: 100%;
    margin: 0 auto 80px;
  }
  .work__line--content {
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    max-width: calc(800px + 10%);
  }
  .work__line1 {
    left: 5%;
  }
  .work__line2 {
    right: 5%;
  }
  .work .section__content {
    flex-flow: column;
  }
  .service-box2__content-parent {
    height: auto;
    min-height: auto;
    margin: 150px auto 80px;
  }
  .service-box2__content {
    width: 100%;
    overflow: visible;
    border: solid 1px #fff;
    padding: 0;
  }
  .service-box2__content::before {
    content: "";
    display: block;
    background-color: #bf0000;
    width: 170px;
    height: 100px;
    position: absolute;
    top: -1px;
    right: -1px;
  }
  .service-box2__list--title {
    font-size: 5rem;
    margin: 40px 30px 40px;
  }
  .service-box2__list--text {
    margin: 0 30px 40px;
  }
  .service-box2__list--text2 {
    margin: 0 30px 50px;
  }
  .service-box2__list--icon {
    display: block;
    position: absolute;
    top: 20px;
    right: -2px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 150px;
  }
  .service-box2__content .normal-btn {
    margin: 0;
    width: 100%;
    border-radius: 0;
    border: none;
    border-top: solid 1px #fff;
  }
  .service-box--container1 {
    display: none;
  }
  .service_other-box {
    padding-bottom: 0;
  }
  .serviceOther_content-parent {
    height: auto;
    min-height: auto;
    margin: 150px auto 80px;
  }
  .serviceOther_content {
    width: 100%;
    overflow: visible;
    border: solid 1px #fff;
    padding: 0;
  }
  .serviceOther_content::before {
    content: "";
    display: block;
    background-color: #bf0000;
    width: 170px;
    height: 100px;
    position: absolute;
    top: -1px;
    right: -1px;
  }
  .serviceOther_list--title {
    font-size: 5rem;
    margin: 40px 30px 40px;
  }
  .serviceOther_list--text {
    margin: 0 30px 40px;
  }
  .serviceOther_list--text2 {
    margin: 0 30px 50px;
  }
  .serviceOther_list--icon {
    display: block;
    position: absolute;
    top: 20px;
    right: -2px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 150px;
  }
  .serviceOther_content .normal-btn {
    margin: 0;
    width: 100%;
    border-radius: 0;
    border: none;
    border-top: solid 1px #fff;
  }
  .news {
    flex-flow: column;
  }
  .cr-link-section {
    width: 90%;
    margin: 0 auto 50px;
  }
  .cr-link {
    flex-flow: column;
  }
  .f-cr__button {
    width: 100%;
    max-width: 800px;
    border-radius: 5px;
    top: 0;
    left: 0;
    margin: 0 auto 0;
  }
  .f-cr__button:nth-child(1) {
    margin: 0 auto 50px;
  }
  .un-compnay .un-section__container {
    width: 100%;
  }
  .un-concept .un-section__container {
    width: 100%;
  }
  .un-access .un-section__container {
    width: 100%;
  }
  .un-compnay {
    display: block;
  }
  .un-concept {
    display: block;
  }
  .un-access {
    display: block;
  }
  .un-compnay .un-section__title {
    margin: 0 0 50px 0;
  }
  .un-concept .un-section__title {
    margin: 0 0 50px 0;
  }
  .un-access .un-section__title {
    margin: 0 0 50px 0;
  }
  .un-work-container {
    gap: 40px;
  }
  .un-work-box {
    width: calc(50% - 20px);
  }
  .nuSvInteractive__wrapper {
    max-width: 600px;
  }
  .nuSvInteractive__title {
    margin: 0 0 0 0;
    width: 100%;
  }
  .nuSvInteractive__content {
    margin: 30px 0 0 0;
    justify-content: start !important;
    align-items: stretch !important;
    flex-direction: column-reverse !important;
  }
  .nuSvInteractive__text--box {
    margin: 30px 0 0 0;
    width: 100%;
  }
  .nuSvInteractive__lottie--box {
    width: 100%;
  }
  .ts-prologue {
    max-width: 800px;
    flex-direction: column;
    align-items: center;
  }
  .ts-prologue__content--box {
    width: 100%;
    min-width: auto;
    max-width: 700px;
    margin: 0 auto;
  }
  .ts-prologue__img--box {
    padding: 100px 0 0;
    margin: 0 auto;
    width: 100%;
    max-width: 500px;
  }
  .ts-prologue__img {
    margin: 0 auto;
  }
  .ts-prologue__img::before {
    min-width: 500px;
    min-height: 500px;
  }
  .ts-prologue2__container {
    margin: 0 0 0 0;
    align-items: inherit;
  }
  .ts-prologue2__content {
    padding: 20px;
  }
  .ts-prologue2__content--img {
    height: 90px;
  }
  .ts-prologue2__content--title {
    font-size: 1.8rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .ts-prologue2__content--title span {
    white-space: nowrap;
  }
  .ts-prologue2__content--ul {
    width: 175px;
    margin: 20px auto 0;
  }
  .ts-prologue2__content--list {
    font-size: 1.6rem;
    margin: 0 0 8px 0;
  }
  .ts-prologue2__content--list::before {
    width: 18px;
    margin: 0 12px 0 0;
  }
  .ts-prologue2__name::after {
    margin: 30px auto;
  }
  .ts-point__list--inner {
    max-width: 600px;
    display: block;
  }
  .ts-point__img--box {
    width: 100%;
  }
  .ts-point__img::after {
    height: 200%;
  }
  .ts-point__content {
    width: 100%;
    margin: 90px 0 0 0;
  }
  .ts-point__content--inner {
    margin: 0 0 0 0 !important;
  }
  .ts-contact__title {
    font-size: 3rem;
  }
  .ts-contact__btn {
    padding: 30px 20px 30px;
    border-radius: 1px;
  }
  .ts-contact__btn--title {
    font-size: 3rem;
  }
  .ts-contact__btn--title--min {
    font-size: 1.4rem;
  }
  .ts-each {
    display: block;
  }
  .ts-each__btn {
    width: 100%;
  }
  .ts-each__btn:nth-child(1) {
    margin-bottom: 30px;
  }
  .ts-each__btn--inner {
    margin: 0 auto;
    padding: 6em 0;
  }
  .page3SignVisionMv_section {
    max-height: 65vw;
  }
  .page3SignVisionMv_block-inner {
    width: 90%;
  }
}

@media screen and (max-width: 999px) {
  .un-movie__after--trial-box {
    flex-wrap: wrap;
  }
  .un-movie__after--concept {
    margin: 0 0 10px 0;
    width: 100%;
  }
  .un-movie__after--concept::after {
    content: none;
  }
  .un-movie__after--rslt::before {
    content: "";
    display: inline-block;
    height: 12px;
    width: 12px;
    background: url(.././thema/assets/arrow.svg) no-repeat;
    background-position: center;
    background-size: contain;
    margin: 0 10px 0 0;
  }
}

@media screen and (max-width: 799px) {
  .un-blog-container {
    gap: 50px 0;
  }
  .un-blog-box {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  html {
    height: -webkit-fill-available;
  }
  body {
    min-height: 100vh;
    min-height: -webkit-fill-available;
  }
  .m-f_container {
    width: 100%;
  }
  .normal-btn.sp-black {
    background-color: #242424;
    color: #fff;
  }
  .normal-btn.sp-black .normal-arrow {
    fill: #fff;
  }
  .normal-btn.sp-white {
    background-color: #fafafa;
    color: #242424;
    fill: #242424;
  }
  .normal-btn.sp-white .normal-arrow {
    fill: #242424;
  }
  .download__btn {
    font-size: 1.6rem;
    margin-top: 15px;
  }
  .download__btn--icon {
    width: 60px;
  }
  .section__title {
    font-size: 4rem;
  }
  .section__title.sp-black {
    color: #242424;
  }
  .section__title.sp-black::after {
    background-color: #242424;
  }
  .section__title.sp-white {
    color: #fff;
  }
  .section__title.sp-white::after {
    background-color: #fff;
  }
  .ds-2 {
    -webkit-filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.05));
    filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.05));
  }
  header {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 100;
    width: 100%;
  }
  .header-container {
    width: auto;
    height: 50px;
    padding: 8px 10px;
    position: absolute;
    display: flex;
    flex-flow: row-reverse;
    align-items: center;
    border-radius: 0 0 0 5px;
    border-left: none;
  }
  .header__sns {
    display: none;
  }
  .header__ham {
    width: 34px;
    height: 28px;
    position: relative;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    top: 0;
    left: 0;
  }
  .header__contact {
    height: 40px;
    margin: 0 15px 0 0;
    position: static;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .header__contact--btn {
    display: inline-block;
    width: 100%;
    height: 100%;
  }
  .header__contact--open {
    -webkit-transform: translate(0, 0) scale(0);
    transform: translate(0, 0) scale(0);
  }
  .h-menu {
    position: absolute;
    right: 0;
    left: none;
    width: 100%;
    overflow: scroll;
  }
  .h-menu__sns--list {
    display: block;
    line-height: 1.6;
  }
  .nav__container {
    padding-bottom: 10px;
    margin-bottom: 30px;
  }
  .nav__list:nth-child(1) {
    margin: 10px 0 0 0;
  }
  .nav__child-ul {
    display: none;
    width: 100%;
  }
  .nav__child-list {
    margin: 0 0 15px 0;
  }
  .nav__child-list > a {
    display: block;
    margin: 0 0 0 15px;
    font-size: 1.6rem;
  }
  .nav__child-list > a::before {
    content: none;
  }
  .cr-nav__container {
    display: block;
    width: 100%;
  }
  .cr-nav__button {
    width: 100%;
    display: block;
    margin: 0 0 20px 0;
  }
  .h-menu__content {
    height: auto;
    top: 0%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    display: block;
  }
  .h-menu__company {
    margin: 60px 0 0 0;
    display: block;
  }
  .h-menu__company--logo {
    margin: 0 0 20px 0;
  }
  .nav__ul {
    display: block;
  }
  .h-menu__sns {
    margin: 0 0 10px 0;
    flex-wrap: wrap;
  }
  .nav__list {
    margin: 0 0 0 0;
    display: flex;
    flex-wrap: wrap;
  }
  .nav__list > a {
    display: inline-block;
    font-size: 2.4rem;
    padding: 10px 0;
  }
  .navlist-plus {
    position: relative;
    margin: 0 0 0 20px;
    padding: 10px 0;
    display: inline-block;
    width: 30px;
  }
  .navlist-plus span {
    display: block;
    width: 15px;
    height: 2px;
    background-color: #fff;
    border-radius: 1px;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    transition: ease-in-out 0.5s;
  }
  .navlist-plus span:nth-child(2) {
    -webkit-transform: translate(0, -50%) rotate(90deg);
    transform: translate(0, -50%) rotate(90deg);
  }
  .navlist-plus--open span:nth-child(2) {
    -webkit-transform: translate(0, -50%) rotate(0deg);
    transform: translate(0, -50%) rotate(0deg);
  }
  footer {
    padding: 50px 0 20px 0;
  }
  .f-menu {
    display: block;
    margin: 0 auto 10px;
    padding: 0 0 5px 0;
    box-sizing: border-box;
    border-bottom: solid 1px #fafafa;
  }
  .f-menu__nav {
    margin: 0 0 8px 0;
  }
  .f-menu__company {
    display: block;
    margin: 0 0 0 0;
    padding: 0 0 10px 0;
  }
  .f-menu__company--logo {
    margin: 0 0 20px 0;
  }
  .f-menu__sns {
    flex-wrap: wrap;
  }
  .f-menu__sns--list {
    display: block;
    line-height: 1.6;
  }
  .f__under {
    display: block;
    text-align: right;
  }
  .f__under * {
    font-size: 1.2rem;
  }
  .f__under--pp {
    position: static;
    margin: 0 0 5px 0;
  }
  .f__under--pp::before {
    content: none;
  }
  .error-section {
    width: 100%;
  }
  .error__content {
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 100%;
    padding: 50px 0;
  }
  .error__text--404 {
    font-size: clamp(3rem, 30vw, 20rem);
  }
  .error__text--sub {
    font: 1.6rem;
  }
  .error__content .normal-btn {
    margin-top: 50px;
  }
  .frontpage__main > section {
    padding: 60px 0 50px;
  }
  .main-visual {
    top: 0;
    left: 0;
  }
  .logo-box {
    width: 150px;
    z-index: 20;
  }
  .video-mask--bg {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10;
  }
  .video__btn--outer {
    bottom: 0;
    right: none;
    left: 0;
    width: 100%;
    height: 70px;
    border-radius: 0;
  }
  .video__btn {
    width: 150px;
    height: 51px;
  }
  .video__btn--icon {
    width: 51px;
    height: 51px;
  }
  .logo-box--5th {
    width: 220px;
  }
  .about-section {
    background-color: #fafafa;
  }
  .about__concept--box {
    display: block;
    margin: 100px 0 0 0;
  }
  .about__concept--left {
    width: 100%;
    margin: 0 0 30px 0;
  }
  .svg-logo2 {
    margin: 0 auto;
    width: 90%;
    max-width: 400px;
    height: auto;
  }
  .svg-logo2 * {
    fill: #bf0000;
    stroke: #bf0000;
  }
  .about__concept {
    width: 100%;
    height: auto;
  }
  .about__concept--text {
    margin: 0 0 0 0;
    width: 100%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    position: static;
  }
  .about__concept .normal-btn {
    position: static;
    margin: 50px auto 0;
  }
  .about__cl {
    margin: 100px 0 0 0;
    width: 100%;
    color: #242424;
    padding: 0 0 50px 0;
  }
  .about__cl--title {
    font-size: 2.1rem;
  }
  .about__cl--list {
    display: block;
    width: 100% !important;
  }
  .slick-slide {
    width: auto !important;
  }
  .anni__container {
    width: 95%;
    margin: 80px auto;
    padding: 30px 20px 20px;
    border: solid 2px #bf0000;
  }
  .anni__container::before {
    background-position: 90% 95%;
    background-size: 40%;
  }
  .anni__title {
    width: 80%;
    -webkit-transform: translate(-3%, -50%);
    transform: translate(-3%, -50%);
  }
  #anniversary {
    -webkit-filter: none;
    filter: none;
  }
  .anni__text--first {
    text-align: left;
    font-size: 1.6rem;
  }
  .anni__text--first .pc-br {
    display: none;
  }
  .anni__text--second {
    text-align: left;
    font-size: 1.3rem;
    margin: 20px 0 0 0;
  }
  .anni__container.newYear .anni__title {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    width: 60%;
    background: #fff;
  }
  .anni__container.newYear .anni__text--first {
    margin: 0;
    font-size: 1.4rem;
  }
  .anni__container.newYear::before {
    background-size: contain;
    background-position: center center;
  }
  .banner_container {
    gap: 45px 0;
    margin-bottom: 80px;
  }
  .signVision3 {
    width: 100%;
    border: solid 2px #17253e;
  }
  .signVision3_img {
    width: 90%;
    margin-top: 15px;
  }
  .signVision3_btn-block {
    flex-direction: column;
    gap: 12px;
    margin: 30px auto 20px;
  }
  .signVision3_btn {
    padding: 15px 35px 12px;
    max-width: 600px;
  }
  .signVision3_btn > .normal-btn__text {
    font-size: min(4.39vw, 2rem);
  }
  .topInteractiveService__container {
    width: 100%;
    max-width: 780px;
    border: solid 2px #bf0000;
  }
  .topInteractiveService__head {
    color: #fff;
    background-color: #bf0000;
    font-size: 2.4rem;
    font-weight: 700;
    font-style: italic;
    width: 200px;
    height: 40px;
    line-height: 40px;
  }
  .topInteractiveService__content {
    margin: 50px auto 40px;
    width: 90%;
    max-width: 600px;
  }
  .topInteractiveService__title--box {
    color: #bf0000;
  }
  .topInteractiveService__title--sub01 {
    font-size: max(1rem, 3vw);
  }
  .topInteractiveService__title {
    /* font-size: 3.5rem; */
    font-size: max(3.5rem, 11vw);
    margin: 3px 0 10px;
  }
  .topInteractiveService__title--sub02 {
    /* font-size: 1.6rem; */
    font-size: max(1.6rem, 6vw);
  }
  .topInteractiveService__text--box {
    color: #bf0000;
    margin: 20px 0 0 0;
  }
  .topInteractiveService__btn--outer {
    margin: 30px auto 0;
  }
  .topInteractiveService__btn--flex {
    display: block;
  }
  .topInteractiveService__btn--flex-inner {
    width: 100%;
    margin-top: 25px;
  }
  .topInteractiveService__btn--flex-inner-title {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bf0000;
    font-size: max(3.5vw, 1.8rem);
  }
  .topInteractiveService__btn--flex-inner-title::before,
  .topInteractiveService__btn--flex-inner-title::after {
    content: "";
    display: block;
    flex-grow: 1;
    height: 2px;
    background-color: #bf0000;
    border-radius: 1px;
  }
  .topInteractiveService__btn {
    padding: 15px 35px 12px;
    margin: 15px auto 0;
    color: #bf0000;
    max-width: 600px;
    border: solid 2px #bf0000;
    background-color: #fff;
  }
  .topInteractiveService__btn .normal-btn__text {
    font-size: min(4.39vw, 2rem);
  }
  .topInteractiveService__btn .arrow-box {
    fill: #bf0000;
  }
  .topInteractiveService__content--box {
    display: block;
  }
  .topInteractiveService__content--left {
    width: 100%;
  }
  .topInteractiveService__content--img--box {
    width: 60%;
    margin: 0 auto;
  }
  .topInteractiveService__content--img--box::before {
    opacity: 1;
  }
  .topInteractiveService__content--right {
    width: 100%;
    position: relative;
    z-index: 3;
    margin: 30px 0 0 0;
  }
  .topInteractiveService__video--box {
    border-radius: 5px;
    margin: 30px auto 0;
  }
  .topInteractiveService__video {
    border-radius: 5px;
  }
  .newOffice_container {
    margin: 100px auto 0;
    padding: 25px 5%;
    border: solid 2px #bf0000;
  }
  .newOffice_title-main {
    font-size: min(8.5vw, 6.5rem);
    -webkit-transform: translate(0%, 23%);
    transform: translate(0%, 23%);
  }
  .newOffice_title-bg {
    font-size: min(13.2vw, 12rem);
    left: 53%;
    color: #bf0000;
  }
  .newOffice_text {
    margin: 5px 0 25px;
    padding: 0;
  }
  .newOffice_text > p {
    font-size: 1.5rem;
    line-height: 2;
  }
  .newOffice_btn {
    margin: 25px 0 0 0;
    font-size: 1.6rem;
  }
  .du_container {
    width: 100%;
    border: solid 2px #bf0000;
  }
  .du_container-inner {
    color: #bf0000;
    padding: 6%;
  }
  .du_title {
    font-size: max(4vw, 1.6rem);
  }
  .du_img-box {
    margin-top: 10px;
  }
  .du_text-box {
    margin-top: 10px;
  }
  .du_text-box > p > a {
    color: #bf0000;
  }
  .du_btn.normal-btn {
    color: #bf0000;
    border-top: solid 2px #bf0000;
  }
  .du_btn.normal-btn > .normal-btn__text {
    font-size: min(4.39vw, 2rem);
  }
  .du_btn.normal-btn > .arrow-box {
    fill: #bf0000;
  }
  .fullAnime_container {
    width: 100%;
    border: solid 2px #bf0000;
  }
  .work-section {
    background-color: #bf0000;
    padding: 0;
  }
  .work {
    overflow: hidden;
  }
  .work-content {
    max-width: 800px;
    margin: 0 auto 60px;
    padding: 0 0 30px 0;
    border-bottom: solid 1px rgba(255, 255, 255, 0.5);
  }
  .work__line {
    background-color: #fff;
  }
  .work .section__title {
    padding-top: 100px;
  }
  .work-content__title {
    font-size: 2.4rem;
    font-weight: 600;
    color: #fff;
    margin: 0 0 0 0;
    height: 80px;
    line-height: 80px;
    border-top: solid 1px rgba(255, 255, 255, 0.5);
    border-bottom: solid 1px rgba(255, 255, 255, 0.5);
  }
  .work__container {
    width: 90%;
    height: auto;
    margin: -1px auto 0;
    border-radius: 1px;
    box-sizing: border-box;
    padding: 15px;
    background-color: #fafafa;
    overflow: visible;
    border-bottom: none;
  }
  .work__container::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 100vw;
    height: 1px;
    /* background-color: #fff; */
    border-bottom: solid 1px #fff;
    opacity: 0.5;
  }
  .work-wrapper {
    max-width: none;
  }
  .work-box {
    width: 100%;
    max-width: none;
    height: 100%;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    background-color: #fafafa;
  }
  .work-box__title {
    font-size: 2.1rem;
  }
  .work-box__cl {
    font-size: 1.4rem;
  }
  .work-box__cate--list {
    margin: 0;
  }
  .work-content .normal-btn {
    margin: 30px auto 0;
  }
  .service-section {
    background-color: #fafafa;
  }
  .service .section__title {
    padding: 100px 0 0 0;
  }
  .service .section__content {
    margin: 0 0 50px 0;
    padding: 0 0 0 0;
  }
  .service-box2 {
    width: 100%;
    position: relative;
    margin: 0;
  }
  .service-box2__content-parent {
    display: block;
    margin: 0 auto 80px;
    width: 100%;
  }
  .service-box2__content-parent:nth-last-child(1) {
    margin: 0 auto 80px;
  }
  .service-box2__content {
    background-color: #fafafa;
    width: 90%;
    max-width: 700px;
    border-radius: 2px;
    color: #242424;
    border: solid 1px #bf0000;
    margin: 0 auto 30px;
    top: 0;
    left: 0;
  }
  .service-box2__content::before {
    width: 100px;
    height: 65px;
    background-color: #fafafa;
  }
  .service-box2__content:nth-last-child(1) {
    margin: 0 auto 0;
  }
  .service-box2__list--title {
    font-size: 4rem;
    margin: 30px 4vw 30px;
    color: #bf0000;
  }
  .service-box2__list--text {
    font-size: clamp(1.2rem, 4.3vw, 1.8rem);
    margin: 0 4vw 30px;
  }
  .service-box2__list--text2 {
    margin: 0 4vw 30px;
    padding: 10px 0 0 0;
    font-size: 1.2rem;
    border-top: solid 1px #bf0000;
  }
  .service-box2__list--icon {
    width: 76px;
    margin: 0 0 20px 0;
    text-align: center;
  }
  .service-box2__list--icon svg * {
    stroke: #bf0000;
    stroke-width: 1.5;
  }
  .service-box2__content .normal-btn {
    margin: 0 auto;
    font-size: 1.8rem;
    border: none;
    background-color: #bf0000;
  }
  .service-box--container1 {
    display: none;
    width: 100vw;
  }
  .service-box--container2 {
    width: 100%;
  }
  .service-box--container {
    width: 100%;
  }
  .service-box__list--title {
    font-size: 1.3vw;
    font-weight: 300;
    margin: 0 0 0.4em 0;
  }
  .service-box__list.design .service-box__list--title,
  .service-box__list.web .service-box__list--title {
    margin: 0;
  }
  .service-box__list--icon {
    width: 40%;
  }
  .service-box__list--icon svg * {
    stroke-width: 1.5;
  }
  .service-box2__content--active {
    z-index: 5;
    -webkit-animation: service-opa 0.3s 0.2s linear;
    animation: service-opa 0.3s 0.2s linear;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .rotate__target--active {
    background-color: #fafafa;
  }
  .serviceOther_content-parent {
    display: block;
    margin: 0 auto 80px;
    width: 100%;
  }
  .serviceOther_content-parent:nth-last-child(1) {
    margin: 0 auto 80px;
  }
  .serviceOther_content {
    background-color: #fafafa;
    width: 90%;
    max-width: 700px;
    border-radius: 2px;
    color: #242424;
    border: solid 1px #bf0000;
    margin: 0 auto 30px;
    top: 0;
    left: 0;
  }
  .serviceOther_content::before {
    width: 100px;
    height: 65px;
    background-color: #fafafa;
  }
  .serviceOther_content:nth-last-child(1) {
    margin: 0 auto 0;
  }
  .serviceOther_list--title {
    font-size: 4rem;
    margin: 30px 4vw 30px;
    color: #bf0000;
  }
  .serviceOther_list--text {
    font-size: clamp(1.2rem, 4.3vw, 1.8rem);
    margin: 0 4vw 30px;
  }
  .serviceOther_list--text2 {
    margin: 0 4vw 30px;
    padding: 10px 0 0 0;
    font-size: 1.2rem;
    border-top: solid 1px #bf0000;
  }
  .serviceOther_list--icon {
    width: 76px;
    margin: 0 0 20px 0;
    text-align: center;
  }
  .serviceOther_list--icon svg * {
    stroke: #bf0000;
    stroke-width: 1.5;
  }
  .serviceOther_content .normal-btn {
    margin: 0 auto;
    font-size: 1.8rem;
    border: none;
    background-color: #bf0000;
  }
  .eqp-section {
    position: relative;
    background-color: #bf0000;
    border-radius: 30px 0 0 30px;
    width: 95%;
    margin: 0 0 0 auto;
    padding-bottom: 80px;
  }
  .eqp-section::before {
    height: 100%;
    background-color: #fafafa;
    z-index: -1;
  }
  .eqp {
    padding: 0 0 30px 0;
    width: 85%;
  }
  .eqp .section__title {
    padding: 20px 0 0 0;
    margin: 0 0 30px 0;
  }
  .eqp .section__content {
    display: block;
    padding: 0 0 20px 0;
  }
  .eqp-content {
    width: 100%;
    color: #fff;
    margin: 0 0 20px 0;
  }
  .eqp-content__title {
    font-size: 1.8rem;
  }
  .eqp-content__title::before {
    width: 15px;
    background-color: #fff;
  }
  .eqp-content-btn {
    width: 100%;
    /* max-width: 600px; */
    height: 60px;
    margin: 0 auto 0;
    line-height: 60px;
  }
  .blog-section {
    padding: 0;
  }
  .blog {
    margin: 50px auto 0;
    width: 100%;
    padding: 30px 0 100px;
  }
  .blog::before {
    border-radius: 50px 0 0 0;
  }
  .blog .section__content {
    width: 100%;
    margin: 20px 0 0 auto;
  }
  .blog__container {
    padding: 0 0 30px 5%;
  }
  .blog__container::before {
    width: 97.5%;
    background: none;
    border-radius: 5px 0 0 5px;
  }
  .blog__container--inner {
    width: 100%;
  }
  .blog-box {
    width: 70vw;
  }
  .blog-box__title {
    font-size: 1.6rem;
    margin: 12px 0 5px 0;
  }
  .blog-arrow__box {
    width: 100px;
    height: 40px;
    top: auto;
    bottom: 0;
    left: 5%;
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
  }
  .blog-arrow--next {
    left: auto;
    right: 0;
  }
  .blog .normal-btn {
    margin: 50px 0 0 5%;
  }
  .news {
    padding: 50px 0 100px 0;
  }
  .news .section__title {
    margin: 0 60px 0 0;
  }
  .news .section__content {
    margin: 20px 0 0 0;
  }
  .news-box__title {
    font-size: 1.6rem;
  }
  .news .normal-btn {
    margin: 40px auto 0;
  }
  .cr-link-section {
    margin: 0 auto 30px;
  }
  .f-cr__button {
    height: 100px;
    color: #ffffff;
    border-radius: 2px;
  }
  .f-cr__button:nth-child(1) {
    margin: 0 auto 20px;
  }
  .f-cr__button--title {
    font-size: 3.5rem;
    line-height: 1;
  }
  .un__title--container {
    height: 300px;
  }
  .un__title--box {
    display: block;
  }
  .un__title {
    font-size: 4.5rem;
  }
  .un__title--dept {
    font-size: 3.5rem;
  }
  .un__title--min {
    font-size: 1.2rem;
    margin: 15px 0 0 0;
  }
  .un__index--container {
    display: block;
    bottom: 10px;
  }
  .un__index--box {
    color: #fff;
    font-size: 1.6rem;
    display: block;
  }
  .un__index--box::after {
    content: none;
  }
  .un__index--box span {
    font-size: 1.4rem;
  }
  .un__dept--container {
    bottom: 20px;
  }
  .un__dept--text {
    font-size: 1rem;
  }
  .page__under--btn {
    width: 45px;
  }
  .un-section__title span {
    font-size: 1.6rem;
  }
  .un-section__title--h {
    font-size: 3rem;
  }
  .un-compnay {
    padding: 80px 0 0 0;
  }
  .un-concept {
    padding: 60px 0 0 0;
  }
  .un-access {
    margin: 0 auto 80px;
    padding: 80px 0 0 0;
  }
  .un-compnay .un-section__title {
    width: 100%;
    margin: 0 0 40px 0;
  }
  .un-concept .un-section__title {
    margin: 0 0 40px 0;
  }
  .un-access .un-section__title {
    width: 100%;
    margin: 0 0 40px 0;
  }
  .un-concept__title {
    margin: 0 auto 30px;
  }
  .un-concept__text-box {
    width: 100%;
    margin: 0 auto;
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .un-concept__text--title {
    font-weight: 650;
    font-size: 1.6rem;
    margin: 0 0 10px 0;
  }
  .un-concept__text--flex {
    display: block;
    margin: 6px 0 0 0;
  }
  .un-concept__text--left {
    width: 50%;
    max-width: none;
    margin: 0 auto;
  }
  .un-concept__text--right {
    width: 100%;
    max-width: none;
    margin: 20px 0 0 0;
  }
  .company-table__row {
    margin: 15px 0;
    padding: 0 0 15px;
    display: block;
  }
  .company-table__h {
    width: 100%;
    margin: 0 0 5px 0;
  }
  .company-min-teble__row {
    display: block;
  }
  .company-min-teble__row2 {
    display: flex;
  }
  .company-min-teble__h {
    width: 130px;
  }
  .company-min-teble__d {
    width: 100%;
    display: flex;
  }
  .company-min-teble__row2 .company-min-teble__d {
    width: calc(100% - 130px);
  }
  .company-min-teble__d--text {
    margin: 0 0 0 10px;
  }
  .access-map--content {
    margin: 0 0 40px 0;
  }
  .access-map--title {
    font-size: 1.6rem;
  }
  .access-map--title .fas.fa-map-marker-alt {
    margin: 0 5px 0 0;
  }
  .access-map-box {
    height: 200px;
  }
  .un-work__parent-cate--list {
    font-size: 1.6rem;
    margin: 0 5px;
    padding: 0 5px 10px;
  }
  .un-work__child-cate {
    margin: 20px 0 0 0;
  }
  .un-work__child-cate--list {
    margin: 15px 5px 0;
    font-size: 1.4rem;
  }
  .un-work-container {
    gap: 40px;
  }
  .un-work-box {
    width: 100%;
  }
  .un-work-box__cl {
    font-size: 1.2rem;
  }
  .page-numbers.dots {
    width: 15px !important;
    margin: 0;
  }
  .page-numbers {
    width: 24px;
    height: 24px;
  }
  .uneq-section {
    padding: 0;
  }
  .un-eqp {
    margin: 80px 0 0 0;
  }
  .un-eqp:nth-last-child(1) {
    margin: 80px 0 60px 0;
  }
  .uneq-section__title {
    margin-bottom: 15px;
    width: 100%;
  }
  .uneq-section__title span {
    font-size: 1.2rem;
  }
  .uneq-section__title--h {
    font-size: 2.6rem;
  }
  .uneq-section__title--size {
    margin: 7px 0 0 0;
  }
  .eqp-table__row--vr::before {
    padding-top: 80%;
  }
  .eqp-table__row {
    margin: 25px 0;
    padding: 0 0 25px;
  }
  .eqp-table__row--box {
    align-items: baseline;
    flex-wrap: wrap;
  }
  .eqp-table__row--box:nth-child(n + 2) {
    margin: 0;
  }
  .eqp-table__h {
    width: 100%;
    margin: 0 0 10px 0;
  }
  .eqp-table__d1 {
    width: 42%;
    font-size: 1.2rem;
  }
  .eqp-table__d2 {
    width: 53%;
    font-size: 1.2rem;
  }
  .eqp-table__d3 {
    width: 5%;
    font-size: 1.2rem;
  }
  .eqp-table__h--sw {
    width: 55%;
    margin: 0 0 0 0;
  }
  .eqp-table__d2--sw {
    width: 45%;
    margin: 0 0 3px 0;
  }
  .uneq-section__container--img--box {
    margin: 20px 0;
  }
  .un-news-box__title {
    font-size: 1.6rem;
  }
  .un-recruit {
    margin: 50px auto;
  }
  .un-recruit .un-section__title--h {
    font-size: 2.4rem;
    margin: 0 0 25px 0;
  }
  .recruit-table__row {
    display: block;
    margin: 15px 0;
    padding: 0 0 15px;
  }
  .recruit-table__h {
    width: 100%;
    min-width: auto;
    margin: 0 0 7px 0;
  }
  .recruit-table__d {
    font-size: 1.3rem;
  }
  .recruit-table__d--dot {
    display: flex;
    flex-wrap: nowrap;
  }
  .recruit--form__title {
    font-size: 2.4rem;
    margin: 0 0 20px 0;
  }
  .recruit--form {
    margin: 0 auto 50px !important;
  }
  .un-contact-container {
    max-width: none;
    margin: 50px auto 50px;
    padding: 40px 20px;
    border-radius: 2px;
  }
  form {
    width: 100%;
    max-width: none;
    margin: 0 auto;
  }
  .contact-content {
    margin: 0 0 30px 0;
  }
  .un-contact__title--box {
    margin: 0 auto 30px;
  }
  .un-contact--title {
    margin: 0 0 20px 0;
  }
  .un-contact__tel--btn {
    font-size: 3rem;
    margin: 0px auto 0;
  }
  .un-contact__tel--btn .fas.fa-phone-alt {
    font-size: 2.5rem;
    -webkit-transform: translate(0, -1px);
    transform: translate(0, -1px);
  }
  .form-text {
    height: 30px;
    font-size: 1.6rem;
  }
  .form-textarea {
    height: 260px;
    font-size: 1.6rem;
  }
  .btn-go {
    height: 50px;
    margin: 40px auto 0;
    border-radius: 1px;
  }
  .btn-back {
    background-color: #fff;
    color: #242424;
    border: solid 1px #242424;
    border-radius: 1px;
  }
  .contact-thanks__text--under {
    font-size: 1.2em;
  }
  .sp-br {
    display: block;
  }
  .un-sv__product {
    padding: 80px 0 0 0;
  }
  .un-sv__product--text-container {
    max-width: none;
    min-width: auto;
  }
  .un-sv__product--text {
    font-size: 1.4rem;
  }
  .slider2,
  .slider2re {
    width: calc(100% - 50px);
    margin: 0 auto 0 25px;
  }
  .unsv-work-box {
    width: 250px;
    border: solid 1px #f0f0f0;
  }
  .unsv-work-box__title {
    font-size: 1.6rem;
  }
  .unsv-work-box__cl {
    font-size: 1.1rem;
  }
  .unsv-work-box__cl::before {
    font-size: 1.1rem;
  }
  .unsv-work-box__ct {
    font-size: 1.2rem;
  }
  .un-service-arrow__box {
    left: 25px;
    width: 250px;
  }
  .un-service-arrow {
    outline: none;
  }
  .slider2 .normal-btn,
  .slider2re .normal-btn {
    right: auto;
    left: 25px;
  }
  .un-movie__container {
    max-width: none;
  }
  .un-movie__box1 {
    margin: 80px 0 60px 0;
  }
  .un-movie__box1 p {
    line-height: 1.6;
    margin: 0 0 20px 0;
  }
  .un-movie__after--content {
    padding: 20px;
  }
  .un-movie__after--title {
    margin: 20px 0 15px 0;
    font-size: 1.7rem;
  }
  .un-movie__after--title span {
    font-size: 1.4rem;
  }
  .un-movie__after--concept {
    font-size: 1.4rem;
  }
  .un-movie__after--rslt {
    font-size: 1.5rem;
    width: 100%;
  }
  .un-movie__after--trial {
    margin: 0 0 0 22px;
  }
  .un-movie__graph--index-box {
    width: 100%;
    overflow: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    box-sizing: border-box;
    border-left: solid 1px #fafafa;
    border-right: solid 1px #fafafa;
  }
  .un-movie__graph--index-box::-webkit-scrollbar {
    display: none;
  }
  .un-movie__graph--index {
    justify-content: start;
    margin: 0 0 0;
  }
  .un-movie__graph--list {
    height: 28px;
    line-height: 28px;
    margin: 6px 5px;
    font-size: 1.2rem;
  }
  .un-movie__graph--box {
    display: block;
    padding: 20px;
  }
  .un-movie__graph--title {
    margin: 0 0 20px 0;
  }
  .un-movie__graph--right {
    margin: 0 0 0 0;
  }
  .un-movie__graph--h {
    height: 30px;
    font-size: 1.2rem;
    line-height: 30px;
    margin: 10px 20px 0 0;
  }
  .un-movie__graph--line {
    height: 30px;
    margin: 10px auto 0;
  }
  #chart-bar * {
    stroke-width: 1.25;
  }
  .un-movie__graph--line::before {
    font-size: 1.1rem;
  }
  .un-movie__graph--line::after {
    font-size: 1.1rem;
  }
  .un-movie__graph--text {
    font-size: 1rem;
  }
  .nuSvInteractive__container {
    margin: 180px 0 0 0;
    padding: 0 0 100px 0;
  }
  .nuSvInteractive__head {
    font-size: 11vw;
  }
  .nuSvInteractive__wrapper {
    margin: 30px auto 0;
  }
  .nuSvInteractive__list {
    padding: 80px 0 0 0;
  }
  .nuSvInteractive__title {
    font-size: 2.4rem;
  }
  .nuSvInteractive__content {
    margin: 25px 0 0 0;
  }
  .un-sv__product--work-container.nuSvInteractive_work-container {
    width: 95vw;
    margin-top: 30px;
    border-radius: 10px 0 0 10px;
    border-right: none;
  }
  .nuSvInteractive__text--box {
    margin: 25px 0 0 0;
  }
  .nuSvInteractive__text {
    font-size: 1.4rem;
  }
  .nuSvInteractive__list--video--box {
    padding-top: 30px;
  }
  .nuSvInteractive__list--video {
    border-radius: 5px;
  }
  .ts-main {
    margin-bottom: 65px;
  }
  .ts-fixed__btn {
    position: fixed;
    bottom: -1px;
    right: 0;
    background-color: #bf0000;
    box-sizing: border-box;
    border: solid 1px #b10000;
    color: #fff;
    width: 100%;
    height: 75px;
    border-radius: 10px 10px 0 0;
  }
  .ts-fixed__btn--inner {
    text-align: center;
    margin: 0 0 0 0;
    position: static;
  }
  .ts-fixed__btn--title {
    font-size: 2.7rem;
  }
  .ts-fixed__btn--text {
    font-size: 1.3rem;
  }
  .ts-fixed__btn--arrow {
    width: 12px;
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  .ts-fixed__btn--arrow #arrow {
    position: absolute;
    top: 50%;
    left: 0;
    fill: #fff;
  }
  .ts-mv {
    width: 90%;
    height: auto;
    min-height: auto;
    margin: 80px auto 50px;
    position: relative;
  }
  .ts-mv__title--box {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    margin: 0;
  }
  .ts-mv__title--outer {
    color: #bf0000;
    font-weight: 600;
    margin: 0 0 0 0;
    text-shadow: none;
  }
  .ts-prologue2__title--box {
    margin: 0 0 6px 0;
  }
  .ts-prologue2__title01 {
    font-size: 6.4vw;
  }
  .ts-prologue2__title02 {
    font-size: 5.6vw;
    margin: 3px 0 0 2px;
    display: flex;
    align-items: center;
    line-height: 1;
  }
  .ts-prologue2__title02--min {
    padding: 1vw 1.5vw 0.5vw;
  }
  .ts-prologue2__title02--icon {
    width: 24px;
    height: 20px;
  }
  .ts-prologue2__title02--icon::before,
  .ts-prologue2__title02--icon::after {
    width: 22px;
    height: 2px;
  }
  .ts-mv__title {
    font-size: min(8rem, 12.5vw);
    line-height: 1;
    white-space: nowrap;
    font-weight: 900;
  }
  .ts-mv__title--catch02 {
    font-size: min(3rem, 6vw);
    margin: 5px 0 0 0;
    font-weight: 400;
  }
  .ts-mv__normal-btn {
    display: none;
    width: 250px;
    font-size: 1.6rem;
    margin: 120px 0 0 0;
  }
  .ts-mv__img--box {
    position: relative;
    margin: 50px 0 0;
  }
  .ts-mv__img {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    min-width: auto;
  }
  .ts-mv__img::before {
    width: 200%;
    -webkit-transform: translate(-50%, -50%) rotate(175deg);
    transform: translate(-50%, -50%) rotate(175deg);
  }
  .ts-prologue__section {
    padding: 100px 0 0 0;
  }
  .ts-prologue {
    display: block;
  }
  .ts-prologue__content--box {
    padding: 0;
    max-width: none;
  }
  .ts-prologue__title {
    font-size: 25px;
  }
  .ts-prologue__img--box {
    margin: 30px 0 10px 0;
    padding: 0;
    max-width: none;
  }
  .ts-prologue__img--box::before {
    content: none;
  }
  .ts-prologue__img {
    position: relative;
  }
  .ts-prologue__img::before {
    min-width: 400px;
    min-height: 400px;
  }
  .ts-prologue2__section {
    padding: 100px 0 100px;
  }
  .ts-prologue2__container {
    margin: 0 auto 0;
    flex-direction: column;
    align-items: center;
  }
  .ts-prologue2__content {
    box-sizing: border-box;
    border: solid 1px #fff;
    padding: 15px;
    width: 100%;
    max-width: 600px;
    border-radius: 3px;
  }
  .ts-prologue2__content--inner {
    width: 100%;
    display: flex;
    align-items: center;
  }
  .ts-prologue2__content--img {
    width: 50%;
    max-width: 250px;
    height: 120px;
    box-sizing: border-box;
    padding-right: 5px;
  }
  .ts-prologue2__content--box {
    width: 50%;
    min-width: 160px;
    box-sizing: border-box;
    padding-left: 5px;
  }
  .ts-prologue2__content--title {
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 5px 0;
    font-size: 1.5rem;
    font-weight: 600;
  }
  .ts-prologue2__content--ul {
    margin: 12px auto 0;
    width: 155px;
  }
  .ts-prologue2__content--list {
    margin: 0 0 3px 0;
    font-size: 1.4rem;
  }
  .ts-prologue2__content--list::before {
    width: 15px;
    margin: 0 10px 0 0;
  }
  .ts-prologue2__content--link {
    margin: 10px 0 0 0;
  }
  .ts-prologue2__content--between {
    height: 80px;
  }
  .ts-prologue2__name--title--outer {
    display: inline;
  }
  .ts-prologue2__name--title {
    text-shadow: 0px 3px 0 rgba(255, 255, 255, 0.5);
    font-size: min(8rem, 12.5vw);
    display: table-caption;
    margin: 0 auto;
  }
  .ts-prologue2__name--title::before,
  .ts-prologue2__name--title::after {
    height: 15px;
  }
  .ts-prologue2__name--text--box {
    margin: 20px auto 0;
  }
  .ts-prologue2__name--text--box br {
    display: none;
  }
  .ts-point__section {
    padding: 60px 0 0;
  }
  .ts-point::before {
    font-size: 24vw;
    width: 100%;
    -webkit-transform: translate(-7%, -50%) rotate(-5deg);
    transform: translate(-7%, -50%) rotate(-5deg);
    overflow: visible;
  }
  .ts-point__title--min {
    font-size: 2rem;
  }
  .ts-point__title {
    font-size: 3.5rem;
  }
  .ts-point__list {
    padding: 100px 0 100px;
  }
  .ts-point__img::after {
    height: 180%;
    min-width: 400px;
    min-height: 400px;
  }
  .ts-point__content {
    margin: 70px 0 0 0;
  }
  .ts-point__content--num {
    font-size: 4.5rem;
  }
  .ts-point__content--title {
    font-size: 2.1rem;
  }
  .ts-contact {
    padding: 80px 0;
  }
  .ts-contact__title {
    font-size: min(3rem, 5vw);
    line-height: 1.2;
  }
  .ts-contact__btn {
    margin: 20px auto 0;
    padding: 20px 15px 20px;
    max-width: 300px;
    border-radius: 3px;
    position: static;
  }
  .ts-contact__btn--title {
    font-size: 2.8rem;
    position: static;
  }
  .ts-contact__btn--title--min {
    font-size: 1.2rem;
    margin: 4px 0 0 0;
    position: static;
  }
  .ts-each__section {
    margin: 40px 0;
  }
  .ts-each {
    display: block;
    width: 100%;
  }
  .ts-each__btn {
    width: 90%;
    margin: 0 auto 30px;
    border-radius: 3px;
    box-shadow: none;
  }
  .ts-each__btn:nth-child(1) {
    margin-bottom: 18px;
  }
  .ts-each__btn:nth-last-child(1) {
    margin-bottom: 0;
  }
  .ts-each__btn--inner {
    padding: 35px 0;
  }
  .ts-each__btn--title {
    font-size: 1.8rem;
    line-height: 1;
  }
  .ts-each__btn--text {
    margin: 8px 0 0 0;
    font-size: 1rem;
    line-height: 1;
  }
  .flow__icon {
    width: 30px;
    height: 30px;
  }
  .ts-contact__service--btn {
    padding: 10px 40px 10px;
    min-height: 30px;
  }
  .ts-contact__service--btn .normal-btn__text {
    font-size: 1.5rem;
  }
  .interactiveTopBanner {
    left: 0;
    z-index: 95;
    width: 100%;
    min-width: 320px;
  }
  .interactiveTopBanner__btn--close {
    right: calc(4% - 8px);
  }
  .interactiveTopBanner__container {
    width: 92%;
    margin: 0 auto;
    position: relative;
  }
  .interactiveTopBanner__head--box {
    font-size: 1.6rem;
    position: absolute;
    top: 0;
    left: 0;
    width: 124px;
    height: 30px;
    line-height: 30px;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: rotate(90deg) translate(0, -100%);
    transform: rotate(90deg) translate(0, -100%);
  }
  .interactiveTopBanner__content {
    margin: 20px auto 0;
    padding: 0 0 0 30px;
  }
  .interactiveTopBanner__title--sub01 {
    font-size: 1rem;
  }
  .interactiveTopBanner__title {
    font-size: 3.4rem;
    margin: 2px 0 5px 0px;
  }
  .interactiveTopBanner__title--sub02 {
    font-size: 1.4rem;
  }
  .interactiveTopBanner__btn--more {
    font-size: 1.2rem;
    margin: 15px 0 15px 0;
  }
  .un-interactive__title {
    font-size: 2.1rem;
  }
  .un-interactive__text {
    margin: 20px 0 0 0;
    font-size: 1.6rem;
  }
  .un-interactive__img--box {
    margin: 50px 0 0 0;
  }
  .un-interactive__img--box::after {
    min-width: 250px;
    min-height: 250px;
  }
  .flow__icon--interactive {
    width: 30px;
    height: 30px;
  }
  .un-blog-tax {
    font-size: 1.6rem;
    padding: 0 0 5px 0;
  }
  .un-blog-container {
    gap: 0;
  }
  .un-blog-box {
    margin: 0 0 20px 0;
    padding: 0 0 30px 0;
    border-bottom: dotted 1px #aaa;
  }
  .un-blog-box:nth-last-child(1) {
    border-bottom: none;
  }
  .un-blog-box__title {
    font-size: 1.6rem;
    margin: 12px 0 5px 0;
  }
  .un-blog .navigation.pagination {
    margin: 0 0 30px 0;
  }
  .un-blog__right-column {
    padding: 5%;
  }
  .un-blog__column--title {
    font-weight: 600;
  }
  .recommend.un-blog-box__title {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .recommend.un-blog-box__other--box {
    font-size: 1rem;
  }
  .pageTalent_list-outer {
    padding: 80px 0;
  }
  .pageTalent_list-flex {
    display: block;
  }
  .pageTalent_list-img {
    width: 100%;
  }
  .pageTalent_list-content {
    width: 100%;
  }
  .pageTalent_list-name {
    font-size: 2.8rem;
  }
  .pageTalent_list-profile {
    margin-top: 20px;
  }
  .pageTalent_list-profile-title {
    font-size: 1.6rem;
  }
  .pageTalent_list-profile-content {
    margin-top: 11px;
  }
  .pageTalent_list-profile-dl {
    padding-bottom: 6px;
  }
  .pageTalent_list-profile-dt {
    width: 80px;
  }
  .pageTalent_list-profile-dd {
    width: calc(100% - 80px);
  }
  .pageTalent_list-career {
    margin-top: 20px;
  }
  .pageTalent_list-career-title {
    font-size: 1.6rem;
  }
  .pageTalent_list-career-content {
    margin-top: 11px;
  }
  .pageTalent_list-gallery {
    margin-top: 20px;
  }
  .pageTalent_list-gallery-title {
    font-size: 1.6rem;
  }
  .pageTalent_list-gallery-content {
    margin-top: 11px;
  }
  .pageTalent_list-gallery-wrapper {
    gap: 0;
  }
  .pageTalent_list-gallery-img {
    width: 33.33333%;
  }
  .pageTalent_list-gallery-img > img {
    border-radius: 0;
  }
  .page3SignVisionMv_section {
    max-height: 112vw;
  }
  .page3SignVisionMv_section::after {
    content: none;
    display: none;
  }
  .page3SignVisionMv_bg-base {
    height: 100%;
  }
  .page3SignVisionMv_sign {
    top: 11%;
  }
  .page3SignVisionMv_people-inner {
    width: 95%;
    left: 2.5%;
    bottom: 26%;
  }
  .page3SignVisionMv_logo {
    width: 95%;
    right: 2.5%;
    bottom: 2%;
  }
  .page3SignVisionAbout_section {
    padding-top: 60px;
    margin-top: 60px;
  }
  .page3SignVisionAbout_head {
    font-size: 1.428em;
  }
  .page3SignVisionAbout_container {
    height: 100vh;
    margin-top: calc(9.212vw + 30px - 50vh);
  }
  .page3SignVisionAbout_anime-block {
    height: 100vh;
  }
  .page3SignVisionAbout_anime-block-inner {
    width: 98%;
  }
  .page3SignVisionAbout_anime-bg.first {
    top: 0;
    left: auto;
    right: 0;
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-transform: rotate(90deg) translate(100%, 0%);
    transform: rotate(90deg) translate(100%, 0%);
    font-size: 20vh;
    text-align: left;
    line-height: 0.9;
  }
  .page3SignVisionAbout_anime-bg.first > span.large {
    font-size: 1.41em;
  }
  .page3SignVisionAbout_anime-bg.second {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 62vw;
    line-height: 1.05;
    top: 63%;
    left: 50%;
  }
  .page3SignVisionAbout_anime-bg.three {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 50vw;
    line-height: 1.1;
    top: 60%;
  }
  .page3SignVisionAbout_anime-monitor {
    border-radius: 3px;
  }
  .page3SignVisionAbout_anime-monitor-img {
    border-radius: 5px;
  }
  .page3SignVisionAbout_anime-monitor-img2 {
    border-radius: 5px;
  }
  .page3SignVisionAbout_wrapper {
    height: 100vh;
  }
  .page3SignVisionAbout_list {
    width: 100%;
  }
  .page3SignVisionAbout_list.first {
    top: auto;
    bottom: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .page3SignVisionAbout_list.second {
    top: auto;
    bottom: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .page3SignVisionAbout_list.three {
    top: auto;
    bottom: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .page3SignVisionAbout_list-content-block {
    width: 90%;
    margin: 0 auto;
  }
  .page3SignVisionAbout_list-head {
    font-size: 1.5em;
  }
  .page3SignVisionAbout_list-content > p {
    font-size: 1em;
  }
  .page3SignVisionCan_section {
    padding-top: 60px;
  }
  .page3SignVisionCan_head {
    font-size: 1.428em;
  }
  .page3SignVisionCan_wrapper {
    margin-top: 30px;
    gap: 30px;
  }
  .page3SignVisionCan_list {
    flex-direction: column;
    gap: 1.15em;
    border: solid 1px #40220f;
    box-sizing: border-box;
    padding: 5%;
  }
  .page3SignVisionCan_list:nth-child(2n) {
    flex-direction: column;
  }
  .page3SignVisionCan_list-img {
    width: 100%;
  }
  .page3SignVisionCan_list-container {
    width: 100%;
  }
  .page3SignVisionCan_list-head {
    font-size: 1.4285em;
  }
  .page3SignVisionCan_list-content {
    margin-top: 0.6em;
  }
  .page3SignVisionArea_section {
    margin-top: 60px;
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .page3SignVisionArea_head {
    font-size: 1.428em;
  }
  .page3SignVisionArea_wrapper {
    padding-top: 30px;
    flex-direction: column;
    gap: 1em;
  }
  .page3SignVisionArea_list {
    width: 100%;
  }
  .page3SignVisionArea_list-head > h5 {
    font-size: 1.125em;
  }
  .page3SignVisionArea_under {
    padding-top: 20px;
  }
  .page3SignVisionContact01_section-inner {
    padding: 60px 5%;
  }
  .page3SignVisionContact01_text-block > p {
    font-size: 1.125em;
  }
  .page3SignVisionContact01_text-block > p > br {
    display: none;
  }
  .page3SignVisionContact01_btn {
    margin-top: 1.05em;
    border-radius: 5px;
    height: 75px;
  }
  .page3SignVisionCase_section {
    padding-top: 60px;
  }
  .page3SignVisionCase_head {
    font-size: 1.428em;
  }
  .page3SignVisionCase_wrapper {
    margin-top: 30px;
    gap: 15px;
  }
  .page3SignVisionCase_list::before {
    padding-top: 22%;
  }
  .page3SignVisionCase_wrapper .videoModal_content-outer {
    width: 96%;
  }
  .page3SignVisionCase_wrapper .videoModal_content-outer::before {
    padding-top: 21%;
  }
  .page3SignVisionCase_wrapper .videoModal_content-outer::after {
    background-size: 100% 100%;
    height: 102%;
    top: -1%;
  }
  .page3SignVisionCase_wrapper
    .videoModal_content-outer
    > video.videoModal_content {
    border-radius: 1px;
  }
  .page3SignVisionProcess_section {
    padding-top: 60px;
    padding-bottom: 60px;
    margin-top: 60px;
  }
  .page3SignVisionProcess_head {
    font-size: 1.428em;
  }
  .page3SignVisionProcess_wrapper {
    margin-top: 30px;
    gap: 35px;
  }
  .page3SignVisionProcess_list {
    flex-direction: column;
  }
  .page3SignVisionProcess_list::before {
    width: 36px;
    height: 12px;
    bottom: -13px;
  }
  .page3SignVisionProcess_list-num-block {
    width: 100%;
    height: 50px;
    border-radius: 5px 5px 0 0;
  }
  .page3SignVisionProcess_list-num {
    width: 32px;
    height: 32px;
  }
  .page3SignVisionProcess_list-container {
    width: 100%;
    padding: 8% 7%;
  }
  .page3SignVisionProcess_list-head {
    font-size: 1.325em;
  }
  .page3SignVisionCost_section {
    padding-top: 60px;
  }
  .page3SignVisionCost_head {
    font-size: 1.428em;
  }
  .page3SignVisionCost_content-block {
    margin-top: 30px;
  }
  .page3SignVisionCost_content h1,
  .page3SignVisionCost_content h2 {
    font-size: 1.285em;
  }
  .page3SignVisionCost_content h3 {
    font-size: 1.2em;
  }
  .page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout {
    display: flex;
    flex-wrap: wrap;
    font-size: min(3vw, 0.9em);
  }
  .page3SignVisionCost_content
    > .wp-block-table
    > table.has-fixed-layout
    > thead {
    display: block;
    width: 40%;
  }
  .page3SignVisionCost_content
    > .wp-block-table
    > table.has-fixed-layout
    > tbody {
    display: block;
    width: 60%;
  }
  .page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout tr {
    display: block;
    width: 100%;
  }
  .page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout th {
    display: block;
    width: 100%;
  }
  .page3SignVisionCost_content
    > .wp-block-table
    > table.has-fixed-layout
    th:nth-child(n + 2) {
    margin-top: -1px;
  }
  .page3SignVisionCost_content > .wp-block-table > table.has-fixed-layout td {
    display: block;
    margin-left: -1px;
    text-align: left;
  }
  .page3SignVisionCost_content
    > .wp-block-table
    > table.has-fixed-layout
    td:nth-child(n + 2) {
    margin-top: -1px;
  }
  .page3SignVisionContact02_section {
    margin-top: 60px;
  }
  .page3SignVisionContact02_section-inner {
    padding: 100px 5%;
  }
  .page3SignVisionContact02_text-block > p {
    font-size: 1.125em;
  }
  .page3SignVisionContact02_text-block > p > br {
    display: none;
  }
  .page3SignVisionContact02_btn {
    margin-top: 1.05em;
    border-radius: 5px;
    height: 75px;
  }
  .single__title--container {
    height: 150px;
  }
  .single__title--box {
    display: block;
  }
  .single__title {
    font-size: 4.5rem;
  }
  .single__title--min {
    font-size: 1.6rem;
    margin: 15px 0 0 0;
  }
  .blogcard a {
    min-height: 100px;
  }
  .blogcard_thumbnail {
    width: 100px;
  }
  .blogcard_content {
    width: calc(100% - 100px);
  }
  .blogcard_title {
    padding: 17px 10px 10px;
  }
  .blogcard_excerpt {
    height: 3em;
    overflow: hidden;
    margin: 0 17px 15px 10px;
  }
  .single-news {
    max-width: none;
  }
  .single-news__title {
    font-size: 2rem;
    margin: 0 0 20px 0;
  }
  .single-news__date {
    margin: 0 0 40px 0;
  }
  .single-work {
    max-width: none;
  }
  .single-work__container {
    padding: 50px 0 0 0;
  }
  .single-work__time {
    font-size: 1.2rem;
  }
  .single-work__title {
    font-size: 2rem;
    margin: 15px 0 40px 0;
  }
  .single-work__date--container {
    display: block;
    font-size: 1.3rem;
    margin: 0 0 40px 0;
  }
  .single-work__date--box1 {
    width: 100%;
  }
  .single-work__date--row {
    padding: 0 0 6px 0;
    margin: 0 0 12px 0;
  }
  .single-work__date--d a {
    position: static;
  }
  .single-work__date--box2 {
    width: 100%;
    border-bottom: solid 1px #aaa;
    padding: 0 0 6px 0;
    background: none;
  }
  .single-work__concept--title {
    font-size: 1.8rem;
    margin: 0 0 15px 0;
  }
  .single-blog.left {
    max-width: 800px;
    padding: 5%;
  }
  .single-blog__container {
    margin: 0 0 30px 0;
  }
  .single-blog__title {
    font-size: 1.8rem;
    margin: 0 0 3px 0;
  }
  .single-blog__other {
    font-size: 1.2rem;
    margin: 0 0 20px 0;
  }
  .single-blog__date::before {
    width: 12px;
    height: 12px;
  }
  .single-blog__cate::before {
    width: 12px;
    height: 12px;
  }
  .single-blog__mainvisual--box {
    margin: 0 0 35px 0;
  }
  .single-blog__textbox--inner p,
  .single-work__concept--text p {
    font-size: 1.4rem;
  }
  .single-blog__textbox--inner h2,
  .single-work__concept--text h2 {
    font-size: 1.9rem;
  }
}

@media all and (-ms-high-contrast: none) {
  /* IE用スタイル */
  .video-mask--bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    z-index: 30;
    overflow: hidden;
    /* border-radius: 5px; */
  }
  /* IE用スタイル */
  .work--opa {
    opacity: 1 !important;
  }
  /* IE用スタイル */
  .service-box2__content-parent {
    /* height: 100vh; */
    /* min-height: 400px; */
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90%;
    max-width: 1500px;
    margin: 150px auto 80px;
  }
  .service-box2__content {
    display: block;
    background-color: #bf0000;
    width: 100%;
    border-radius: 3px;
    color: #fff;
    box-sizing: border-box;
    transition: ease-in-out 0.3s;
    z-index: 1;
    position: relative;
    overflow: visible;
    margin: 0 0 0 auto;
    border: solid 1px #fff;
  }
  .service-box2__content::before {
    content: "";
    display: block;
    background-color: #bf0000;
    width: 170px;
    height: 100px;
    position: absolute;
    top: -1px;
    right: -1px;
  }
  .service-box2__list--title {
    font-size: 5rem;
    font-weight: 600;
    line-height: 1;
    margin: 40px 30px 40px;
  }
  .service-box2__list--text {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.8;
    margin: 0 30px 40px;
  }
  .service-box2__list--text2 {
    margin: 0 30px 50px;
    padding: 20px 0 0 0;
    font-size: 1.4rem;
    line-height: 1.6;
    box-sizing: border-box;
    border-top: solid 1px #fff;
  }
  .service-box2__list--icon {
    position: absolute;
    top: 20px;
    right: -2px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 150px;
  }
  .service-box2__list--icon svg * {
    fill: none;
    stroke: #fff;
    stroke-width: 1;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-miterlimit: 10;
  }
  .service-box2__content .normal-btn {
    margin: 0;
    width: 100%;
    font-size: 1.8rem;
    background-color: #bf0000;
    box-sizing: border-box;
    border-radius: 0;
    border-top: solid 1px #fff;
  }
  .service-box--container1 {
    display: none;
  }
  .cr-link {
    justify-content: space-around;
  }
  .un-sv__product--outer {
    overflow: hidden;
  }
  /* IE用スタイル */
  .single-news__under--btn {
    height: 25px;
  }
}

/*# sourceMappingURL=style.css.map*/

/******************************************
TOPアワードセクション
******************************************/
.award-section {
  width: 100%;
  padding: 80px 0;
}

.top-award {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 43px;
}

.top-award__title-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.top-award__title-block > .section__title::after {
  content: none;
  display: none;
}

.top-award__trophy-icon {
  width: 26px;
  height: 26px;
  margin-top: -1.5em;
}

.top-award__slider-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.top-award__slider.swiper-container {
  position: relative;
  overflow: visible;
  width: 80%;
  max-width: 850px;
  padding: 10px 0;
}

.top-award__slider .swiper-wrapper {
  align-items: stretch;
}

.top-award__slide {
  width: 850px;
  height: auto;
}

.top-award-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  box-sizing: border-box;
  background-color: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.25);
  padding: 28px 25px;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s ease;
}

.top-award-card:hover {
  opacity: 0.85;
}

.top-award-card__inner {
  display: flex;
  gap: 20px;
  align-items: flex-end;
  flex: 1;
}

.top-award-card__thumb {
  flex-shrink: 0;
  width: 395px;
  height: 222px;
  overflow: hidden;
}

.top-award-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-award-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  min-width: 0;
  align-self: stretch;
}

.top-award-card__contents {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  width: 100%;
}

.top-award-card__info {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.top-award-card__award-description {
  display: flex;
  align-items: flex-start;
  gap: 7px;
}

.top-award-card__award-icon {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.top-award-card__award-title {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.7rem;
  font-weight: 700;
  color: #bca001;
  line-height: 1.4;
}

.top-award-card__title {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #242424;
  line-height: 1.4;
  margin: 0;
}

.top-award-card__tags {
  display: flex;
  gap: 10px;
  align-items: center;
}

.top-award-card__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #bf0101;
  color: #fff;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 5px 9px;
  border-radius: 3px;
  line-height: 1;
}

.top-award-card__link {
  display: flex;
  align-items: center;
  gap: 6px;
}

.top-award-card__link-text {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: #242424;
  white-space: nowrap;
  line-height: 1;
  padding-top: 5px;
}

.top-award-card__link-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  background-color: #d9d9d9;
  border-radius: 50%;
}

.top-award-card__link-icon svg {
  width: 40%;
  height: 40%;
  display: block;
  padding: 0 0 0 0.15em;
}

.top-award__nav {
  position: absolute;
  width: 40px;
  height: 40px;
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 50%;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
  z-index: 10;
  cursor: pointer;
}

.top-award__nav::after {
  font-size: 14px;
  color: #000;
}

.top-award__nav--prev {
  top: 50%;
  left: 0;
  transform: translate(-50%, 0);
}
.top-award__nav--prev::after {
  padding-right: 0.05em;
}

.top-award__nav--next {
  top: 50%;
  right: 0;
  transform: translate(50%, 0);
}
.top-award__nav--next::after {
  padding-left: 0.05em;
}

.top-award .normal-btn {
  margin: 0 auto;
  font-size: 1.8rem;
  width: 240px;
}

/* TOPアワード レスポンシブ */
@media screen and (max-width: 768px) {
  .award-section {
    padding: 50px 0;
    background-color: #bf0000;
  }

  .top-award {
    gap: 30px;
  }

  .top-award__trophy-icon {
    width: 20px;
    height: 20px;
    margin-top: -1em;
  }

  .top-award__slide {
    width: 100%;
    height: auto;
  }

  .top-award-card {
    padding: 15px;
    height: 100%;
  }

  .top-award-card__inner {
    flex-direction: column;
    gap: 15px;
    align-items: stretch;
    flex: 1;
  }

  .top-award-card__thumb {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .top-award-card__contents {
    justify-content: flex-start;
  }

  .top-award-card__award-title {
    font-size: 1.4rem;
  }

  .top-award-card__title {
    font-size: 1.6rem;
  }

  .top-award-card__link-text {
    font-size: 1.4rem;
  }

  .top-award__nav--prev {
    transform: translate(-75%, 0);
  }

  .top-award__nav--next {
    transform: translate(75%, 0);
  }
}

/******************************************
アワードページスタイル
******************************************/
.un-award {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 0 120px;
}

.un-award-wrapper {
  display: flex;
  flex-direction: column;
  gap: 35px;
}

.un-award-year-block {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.un-award-year-header {
  background-color: #bf0101;
  padding: 10px 15px;
}

.un-award-year-header__text {
  display: block;
  font-family: "Roboto", sans-serif;
  padding: 0.1em 0 0 0;
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}

.un-award-year-items {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.un-award-item {
  display: flex;
  align-items: center;
  gap: 20px;
  background-color: #fff;
  padding: 19px 18px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s ease;
}

.un-award-item:hover {
  opacity: 0.8;
}

.un-award-item__thumb {
  flex-shrink: 0;
  width: 200px;
  /* aspect-ratio: 16 / 9; */
  aspect-ratio: 5 / 3;
  overflow: hidden;
}

.un-award-item__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.un-award-item__contents {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  min-width: 0;
}

.un-award-item__info {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.un-award-item__award-description {
  display: flex;
  align-items: flex-start;
  gap: 7px;
}

.un-award-item__award-icon {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.un-award-item__award-title {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.7rem;
  font-weight: 700;
  color: #bca001;
  line-height: 1.4;
}

.un-award-item__title {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #242424;
  line-height: 1.4;
  margin: 0;
}

.un-award-item__tags {
  display: flex;
  gap: 10px;
  align-items: center;
}

.un-award-item__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #bf0101;
  color: #fff;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 5px 9px;
  border-radius: 3px;
  line-height: 1;
}

.un-award-item__link {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  position: relative;
}

.un-award-item__link-text {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: #242424;
  white-space: nowrap;
  line-height: 1;
  padding-top: 0.25em;
}

.un-award-item__link-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
  background-color: #d9d9d9;
  border-radius: 50%;
}

.un-award-item__link-icon svg {
  width: 40%;
  height: 40%;
  display: block;
  padding: 0 0 0 0.15em;
}

/* アワードページ レスポンシブ */
@media screen and (max-width: 768px) {
  .un-award {
    width: 95%;
    padding: 30px 0 80px;
  }

  .un-award-wrapper {
    gap: 25px;
  }

  .un-award-year-block {
    gap: 15px;
  }

  .un-award-year-header {
    padding: 8px 12px;
  }

  .un-award-year-header__text {
    font-size: 2rem;
  }

  .un-award-year-items {
    gap: 15px;
  }

  .un-award-item {
    flex-direction: column;
    padding: 15px;
    gap: 15px;
  }

  .un-award-item__thumb {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .un-award-item__contents {
    width: 100%;
  }

  .un-award-item__award-title {
    font-size: 1.4rem;
  }

  .un-award-item__title {
    font-size: 1.6rem;
  }

  .un-award-item__link {
    width: 100%;
    justify-content: flex-end;
  }

  .un-award-item__link-text {
    padding-top: 0.15em;
    font-size: 1.4rem;
  }

  .un-award-item__link-icon {
    width: 24px;
    height: 24px;
  }
}
