@charset "utf-8";
body {
  font-size: 3.733vw;
}
.pc-only {
  display: none !important;
}
@media all and (min-width:501px) {
  body {
    font-size: 18px;
  }
}
.inner--front {
  padding: 0 0 0 55px;
}
.inner--page {
  padding: 0 0 0 55px;
  box-sizing: border-box;
  width: 96%;
}
.inner--interview {
  padding: 0 0 0 55px;
  box-sizing: border-box;
}
.inner--interview.type--right {
  text-align: right;
}
.inner--small {
  padding: 0 0 0 55px;
  box-sizing: border-box;
  width: 96%;
}
.inner--base {
  padding: 0 0 0 55px;
  box-sizing: border-box;
  width: 96%;
}
body.nav--open, body.modal--open {
  overflow: hidden;
}
body {
  position: relative;
}
body#page_front::before {
  content: '';
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10000;
  background: #fff;
  transition: opacity 1s ease .5s, transform 0s linear 1.5s;
  pointer-events: none;
}
body#page_front.page--open::before {
  opacity: 0;
  transform: translateY(-110vh);
}
body.page--under::before {
  content: '';
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10000;
  background: #000;
  transition: opacity 1s ease 0s, transform 0s linear 1s;
  pointer-events: none;
}
body.page--under.page--open::before {
  opacity: 0;
  transform: translateY(-110vh);
}
/* == parts ============================================== */
.title_base {
  margin: 0 0 3em;
  line-height: 1;
  letter-spacing: 0.02em;
}
.title_base.color--white {
  color: #fff;
}
.title_base .en {
  font-size: 171.43%;
  font-weight: 300;
  margin: 0 0 .5em;
}
.title_base.color--gray .en {
  color: #C8C8C8;
}
.title_base .jp {
  font-size: 86%;
  font-weight: 600;
}
.title_baseEn {
  font-size: 178.6%;
  font-family: "neue-haas-unica", sans-serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: .05em;
}
.title_talk {
  line-height: 1;
  margin: -4em 0 2em;
  padding: 4em 0 0;
}
.title_talk .en {
  font-size: 75%;
  font-weight: 400;
  letter-spacing: .025em;
  margin: 0 0 1.3em;
}
.title_talk .jp {
  font-size: 143.9%;
  font-weight: 400;
  letter-spacing: .05em;
  line-height: 1.4;
}
.title_center {
  text-align: center;
  line-height: 1;
}
.title_center .en {
  font-size: 172%;
  font-weight: 300;
  letter-spacing: .025em;
  margin: 0 0 .5em;
}
.title_center .jp {
  font-size: 86%;
  font-weight: 700;
}
/**/
.btn_base {
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(243, 8, 9, 1) 27%, rgba(81, 5, 0, 1) 50%, rgba(236, 99, 99, 1) 73%, rgba(255, 255, 255, 1) 95%);
  -webkit-animation: border 8s 0s linear infinite;
  animation: border 8s 0s linear infinite;
  border-radius: 50px;
  background-size: 200% 100%;
  overflow: hidden;
  transition: all .3s;
}
.btn_base a {
  display: block;
  color: #fff;
  background: #000;
  margin: 2px;
  border-radius: 50px;
  position: relative;
  padding: .6em 1.5em;
  transition: all .3s;
  font-size: 114.3%;
  letter-spacing: .05em;
}
.btn_base a::before {
  content: '';
  width: 21px;
  height: 12px;
  background: url(../img/link_arrow01.webp) no-repeat;
  background-size: contain;
  position: absolute;
  right: 6%;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
  pointer-events: none;
}
.btn_base + .btn_base {
  margin: 13% auto 0;
}
/**/
.btn_link {
  width: max(45%, 144px);
  background: #000000;
  border-radius: 4px;
}
.btn_link a {
  color: #fff;
  display: block;
  font-size: 72%;
  font-weight: 500;
  padding: 1em 1em 1.2em;
  letter-spacing: .05em;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}
.btn_link a::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(../img/link_arrow02.webp) no-repeat left -5% top 85%;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
}
.btn_link a::after {
  content: '';
  width: 0;
  height: 100%;
  background: #000;
  position: absolute;
  z-index: 3;
  left: 0;
  top: 0;
}
.btn_link span {
  position: relative;
  z-index: 5;
}
/**/
.btn_linkLong {
  overflow: hidden;
}
.btn_linkLong a {
  display: block;
  font-size: 93%;
  position: relative;
  background: url(../img/link_arrow03.webp) no-repeat left bottom;
  background-size: 100% auto;
  padding: 0em 0 1em .2em;
}
.btn_linkLong a::after {
  content: '';
  width: 0;
  height: 100%;
  background: #000;
  position: absolute;
  z-index: 3;
  left: 0;
  top: 0;
}
.btn_linkLong span {
  position: relative;
  z-index: 5;
}
.btn_link.link--small {
  width: 50%;
  background: #fff;
}
.btn_link.link--small a {
  color: #000;
}
.btn_link.link--small a::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url("../img/link_arrow02.webp") no-repeat left top 80%;
  background-size: 100% auto;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
}
.btn_link.link--small a::after {
  background: #fff;
}
/**/
.btn_text a {
  display: inline-block;
  padding: 0 1.5em 0 0;
  position: relative;
  color: #fff;
  font-size: 93%;
  line-height: 2;
  background: url("../img/link_arrow01.webp") no-repeat right center;
  background-size: 1.5em auto;
}
.btn_text a::before {
  content: '';
  width: 0;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: all .3s;
}
/**/
.btn_entry {
  width: 100px;
  box-sizing: border-box;
  border-radius: 50px;
  font-family: "neue-haas-unica", sans-serif;
  cursor: pointer;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(243, 8, 9, 1) 27%, rgba(81, 5, 0, 1) 50%, rgba(236, 99, 99, 1) 73%, rgba(255, 255, 255, 1) 95%);
  background-size: 200% 100%;
  animation: border 8s 0s linear infinite;
  -webkit-animation: border 8s 0s linear infinite;
  text-align: center;
}
.btn_entry > span {
  display: block;
  color: #fff;
  padding: .35em 0;
  position: relative;
  overflow: hidden;
  font-weight: 700;
  line-height: 1;
  background: #000;
  margin: 2px;
  border-radius: 50px;
  transition: all .3s;
}
.btn_entry > span span {
  display: inline-block;
  position: relative;
  transition: top .3s;
  top: 0;
  -webkit-animation: loop 4s 0s linear infinite;
  animation: loop 4s 0s linear infinite;
}
.btn_entry > span span::before {
  content: 'ENTRY・ENTRY・';
  position: absolute;
  right: 100%;
  top: 0;
  bottom: 0;
  white-space: nowrap;
}
.btn_entry > span span::after {
  content: '・ENTRY・ENTRY';
  position: absolute;
  left: 100%;
  top: 0;
  bottom: 0;
  white-space: nowrap;
}
.entryWrap {
  position: fixed;
  z-index: 1020;
  left: 17px;
  bottom: 30px;
}
.entry--on .btn_entry, .entry--on .btn_entry > span span {
  animation: none;
}
.entry--on .btn_entry > span span::before, .entry--on .btn_entry > span span::after {
  display: none;
}
/* == header ============================================== */
header {
  transition: opacity .2s;
}
body.navEnd header {
  opacity: 0;
  pointer-events: none;
}
.h_navBtn {
  position: fixed;
  z-index: 1010;
  left: 0;
  top: calc(20% - 20px);
  margin: auto;
  width: 40px;
  height: 40px;
  transform: translateX(-100px);
  transition: transform .6s, opacity .4s;
  cursor: pointer;
}
body.navEnd .h_navBtn {
  opacity: 0;
  pointer-events: none;
}
.h_navBtn::after {
  content: 'CLOSE';
  font-size: 7px;
  color: #fff;
  font-family: "neue-haas-unica", sans-serif;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  opacity: 0;
  transition: opacity .4s;
  box-sizing: border-box;
  padding: 0 0 0 .5em;
}
body.nav--none .h_navBtn {
  transform: translateX(0);
}
body.nav--open .h_navBtn {
  transform: translateX(0) !important;
}
.h_navBtn span {
  display: inline-block;
  background: #fff;
  position: absolute;
  height: 2px;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  transition: background .2s, transform .4s, opacity .4s, width .4s;
  transform-origin: center;
}
header.type01 .h_navBtn span {
  background: #000;
}
header.type03 .h_navBtn span {
  background: #fff;
}
header.type04 .h_navBtn {
  transform: translateX(-200px);
}
body.nav--open .h_navBtn span {
  background: #fff !important;
}
body.header--black .h_navBtn span {
  background: #000;
}
.h_navBtn span:nth-child(1) {
  width: 88%;
  bottom: 15px;
}
.h_navBtn span:nth-child(2) {
  width: 78%;
}
.h_navBtn span:nth-child(3) {
  width: 68%;
  top: 15px;
}
body.nav--open .h_navBtn span:nth-child(1) {
  transform: translateY(8px) rotateZ(30deg);
}
body.nav--open .h_navBtn span:nth-child(2) {
  opacity: 0;
}
body.nav--open .h_navBtn span:nth-child(3) {
  transform: translateY(-8px) rotateZ(-30deg);
  width: 88%;
}
body.nav--open .h_navBtn::after {
  opacity: 1;
}
/**/
header .hWrap {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  height: 100lvh;
}
header .hWrap::before {
  content: '';
  width: 130px;
  height: calc(100% - 50px);
  background: rgba(0, 0, 0, .35);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  position: absolute;
  z-index: 2;
  left: 0;
  top: 50px;
  transition: all .4s;
}
header.type04 .hWrap {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
body.nav--none header .hWrap::before, header.type02 .hWrap::before {
  background: rgba(0, 0, 0, 0);
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
  transform: translateX(-200px);
}
header.type01 .hWrap::before {
  background: rgba(255, 255, 255, .35);
}
body.nav--open header .hWrap {
  transform: translateX(-200px);
}
header .h_inner {
  position: fixed;
  width: 100%;
  height: 50px;
  z-index: 1001;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, .35);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}
body.page--under header .h_inner {
  background: rgba(200, 200, 200, .10);
}
header.type02 .h_inner {
  background: rgba(0, 0, 0, 0);
}
header .h_logo {
  width: 106px;
  margin: 15px 0 0 15px;
}
header .h_logo a {
  display: block;
  overflow: hidden;
  text-indent: 150%;
  white-space: nowrap;
  height: 24px;
  background-image: url(../img/logo01.svg);
  background-repeat: no-repeat;
  background-size: 106px 24px;
}
header.type01 .h_logo a {
  background-image: url(../img/logo02.svg);
	  background-size: 106px 24px;
}
header .h_lead {
  position: absolute;
  line-height: 1;
  height: 1em;
  top: 1em;
  bottom: 0;
  right: 1.6em;
  margin: auto;
  color: #fff;
  font-size: 9px;
  letter-spacing: .04em;
  transition: all .2s;
}
header.type01 .h_lead {
  color: #000;
}
header nav.hNav {
  transition: all .6s;
  position: fixed;
  left: 12px;
  top: 0;
  height: 100lvh;
  z-index: 100;
  display: flex;
  align-items: center;
}
body.nav--none header nav.hNav {
  transform: translateX(-300px);
}
header .list_hNav {
  position: relative;
  z-index: 5;
  padding: 1em 0 0;
}
header .list_hNav::before {
  content: 'CONTENTS';
  position: absolute;
  left: 0;
  top: -1.6em;
  color: #fff;
  opacity: .5;
  font-size: 9px;
}
header .list_hNav > li {
  line-height: 1;
  position: relative;
}
.list_hNav > li > a, .list_hNav > li > span {
  color: #fff;
  display: inline-block;
  font-size: 10px;
  line-height: 3.3333334;
  letter-spacing: .05em;
  position: relative;
}
.list_hNav > li > a::before {
  content: '';
  width: 0;
  height: 1px;
  background: #E50012;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: all .4s;
}
.list_hNav > li > span {
  display: block;
  cursor: pointer;
}
.list_hNav > li > span::before, .list_hNav > li > span::after {
  content: '';
  width: 10px;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all .4s;
}
.list_hNav > li.link--on > span::before, .list_hNav > li.link--on > span::after {
  background-color: #E50012;
}
.list_hNav > li > span::after {
  transform: rotateZ(90deg);
}
.list_hNav > li.link--on > span::after {
  transform: rotateZ(0deg);
}
.list_hNavSub {
  position: absolute;
  left: calc(100% + 1em);
  top: .65em;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all .4s;
  font-size: 10px;
}
.list_hNav > li.link--on .list_hNavSub {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.list_hNavSub > li {
  background: #000;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
}
.list_hNavSub > li a {
  display: block;
  padding: .5em 1em;
}
.list_hNavSub > li + li {
  margin: .5em 0 0;
}
/**/
.list_entryDetails > li {
  width: 300px;
  margin: 0 0 12px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(243, 8, 9, 1) 27%, rgba(81, 5, 0, 1) 50%, rgba(236, 99, 99, 1) 73%, rgba(255, 255, 255, 1) 95%);
  animation: border 8s 0s linear infinite;
  -webkit-animation: border 8s 0s linear infinite;
  background-size: 200% 100%;
  border-radius: 50px;
  overflow: hidden;
}
.list_entryDetails > li:nth-child(2) {
  animation-delay: 2s;
}
.list_entryDetails > li:nth-child(3) {
  animation-delay: 4s;
}
.list_entryDetails > li a {
  display: block;
  color: #fff;
  background-image: url(../img/link_arrow01.webp);
  background-repeat: no-repeat;
  background-position: right 15px center;
  background-size: 1em auto;
  background-color: #000;
  padding: .5em 1em;
  margin: 2px;
  border-radius: 50px;
  transition: all .4s;
  font-size: 12px;
}
.entryWrap .list_entryDetails {
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  transform: translateY(10%);
  transition: all .3s;
  position: absolute;
  left: 0;
  bottom: 30px;
}
.entryWrap.entry--on .list_entryDetails {
  pointer-events: auto;
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
body.navEnd .entryWrap, body.nav--open .entryWrap {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
/* == footer ============================================== */
footer {
  background: #000000;
  padding: 50px 0 6%;
  position: relative;
  z-index: 1000;
  box-sizing: border-box;
}
footer .f_logos {
  position: absolute;
  left: 0;
  top: 20px;
  width: 100%;
  height: 50px;
}
footer .f_logos .f_logo {
  width: 106px;
  margin: 15px 0 0 15px;
}
footer .f_logos .f_logo a {
  display: block;
  overflow: hidden;
  text-indent: 150%;
  white-space: nowrap;
  height: 24px;
  background: url(../img/logo01.svg) no-repeat;
  background-size: contain;
  transition: all .3s;
}
footer .f_logos .f_lead {
  position: absolute;
  line-height: 1;
  height: 1em;
  top: 1em;
  bottom: 0;
  right: 1.6em;
  margin: auto;
  color: #fff;
  font-size: 9px;
  letter-spacing: .04em;
}
footer .footerFlex {
  padding: 13% 0 0;
}
.list_fNav {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1em;
}
.list_fNav > li {
  width: 49.5%;
  margin: 0 0 1.2em;
}
.list_fNav > li dl dt {
  color: #FFFFFF;
  opacity: .5;
  font-size: 58%;
  font-family: "neue-haas-unica", sans-serif;
  letter-spacing: 0.1em;
}
.list_fNav > li .nav_name {
  line-height: 1.3;
}
.list_fNav > li .nav_name a {
  display: inline-block;
  color: #fff;
  font-size: 79%;
  line-height: 1.7;
  position: relative;
  padding: .1em 0;
  letter-spacing: 0;
}
.list_fNav > li .nav_name + .nav_name {
  margin: .1em 0 0;
}
.list_entryLinks {
  overflow: hidden;
  width: 84%;
  position: relative;
  margin: 0 0 6%;
}
.list_entryLinks > li {
  position: relative;
  z-index: 5;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(243, 8, 9, 1) 27%, rgba(81, 5, 0, 1) 50%, rgba(236, 99, 99, 1) 73%, rgba(255, 255, 255, 1) 95%);
  background-size: 200% 100%;
  -webkit-animation: border 8s 0s linear infinite;
  animation: border 8s 0s linear infinite;
  border-radius: 50px;
}
.list_entryLinks > li:nth-child(2) {
  animation-delay: 2s;
}
.list_entryLinks > li:nth-child(3) {
  animation-delay: 4s;
}
.list_entryLinks > li + li {
  margin: 3% 0 0;
}
.list_entryLinks > li a {
  display: block;
  font-size: 107%;
  color: #fff;
  line-height: 1.4;
  padding: .4em 1.4em;
  margin: 2px;
  background-color: #000;
  background-image: url("../img/link_arrow01.webp");
  background-repeat: no-repeat;
  background-position: right 8% center;
  background-size: 1.4em auto;
  border-radius: 50px;
}
.list_sns {
  display: flex;
}
.list_sns > li {
  margin: 0 1.5em;
}
.list_sns > li a {
  display: block;
  width: 22px;
  height: 22px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 150%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: all .3s;
}
.list_sns > li.sns01 a {
  background-image: url(../img/sns_fb.svg);
}
.list_sns > li.sns02 a {
  background-image: url(../img/sns_x.svg);
}
.list_sns > li.sns03 a {
  background-image: url("../img/sns_insta.svg");
}
.list_sns > li.sns04 a {
  background-image: url(../img/sns_youtube.svg);
}
.f_bottom {
  margin: 7% auto 0;
}
.f_bottom .list_fLinks {
  display: flex;
  justify-content: center;
  line-height: 1;
  margin: 0 0 3%;
}
.f_bottom .list_fLinks > li {
  line-height: 1;
}
.f_bottom .list_fLinks > li a {
  display: block;
  color: #fff;
  font-size: 72%;
}
.f_bottom .list_fLinks > li + li {
  margin: 0 0 0 1em;
  padding: 0 0 0 1em;
  border-left: solid 1px #fff;
}
.f_bottom .copyright {
  font-size: 68%;
  color: #fff;
  text-align: center;
}
/**/
body.nav--open footer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100svh;
}
body.nav--open footer .f_logos {
  top: 0;
}
body.nav--open .footerFlex {
  height: calc(100lvh - 120px);
  display: flex;
  margin: 0 0 120px 0;
  align-items: center;
  padding: 0;
}
body.nav--open footer .f_bottom {
  position: absolute;
  bottom: 3%;
  left: 0;
  right: 0;
  margin: auto;
}
/* == frontpage ==============================================*/
.slideFixed {
  position: fixed;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100lvh;
  pointer-events: none;
  overflow: hidden;
}
.slideFixed .swiper {
  height: 100%;
}
.slideFixed .swiper-slide img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  transform: scale(1);
}
.slideFixed .swiper-slide.swiper-slide-active img, .slideFixed .swiper-slide.swiper-slide-prev img, .slideFixed .swiper-slide.swiper-slide-duplicate-active img {
  -webkit-animation: scale 5s linear 0s forwards;
  animation: scale 5s linear 0s forwards;
}
.block_frontMv {
  position: relative;
  overflow: hidden;
  height: 100lvh;
}
.lineAnimation {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  z-index: 10;
  pointer-events: none;
}
.lineAnimation svg {
  width: 150%;
  height: auto;
  stroke-dasharray: 5000;
  stroke-dashoffset: 0;
  position: absolute;
  left: -25%;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  z-index: 10;
}
.swiper-slide-active .lineAnimation svg {
  -webkit-animation: hello 3s ease 0s forwards;
  animation: hello 3s ease 0s forwards;
  animation-timing-function: cubic-bezier(.75, -0.01, .84, -0.02)
}
.block_frontMv .mv_title {
  position: absolute;
  z-index: 5;
  width: 53%;
  top: 13%;
  right: 4%;
}
.block_frontMv .mv_title img {
  vertical-align: top;
}
.block_frontMv .mv_newsSummary {
  position: absolute;
  width: 52%;
  z-index: 10;
  right: 0;
  bottom: 3.5%;
  background: #000;
  overflow: hidden;
  box-sizing: border-box;
}
.block_frontMv .mv_newsSummary .swiper {
  margin: 0 0 0 auto;
  overflow: visible;
}
.block_frontMv .mv_newsSummary .swiper-button-prev, .block_frontMv .mv_newsSummary .swiper-button-next {
  width: 1.25em;
  height: 1.25em;
  top: auto;
  bottom: 10%;
  margin: auto;
  line-height: 1;
}
.block_frontMv .mv_newsSummary .swiper-button-prev {
  right: 24%;
  left: auto;
  transition: all .2s;
}
.block_frontMv .mv_newsSummary .swiper-button-next {
  right: 9%;
  transition: all .2s;
}
.block_frontMv .mv_newsSummary .swiper-button-prev::before, .block_frontMv .mv_newsSummary .swiper-button-next::before {
  content: '';
  width: 70%;
  height: 70%;
  box-sizing: border-box;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 0 !important;
  left: 0 !important;
  bottom: 0;
  right: 0;
  margin: auto;
  transform: rotateZ(-135deg);
}
.block_frontMv .mv_newsSummary .swiper-button-next::before {
  transform: rotateZ(45deg);
}
.block_frontMv .mv_newsSummary .swiper-button-prev::after, .block_frontMv .mv_newsSummary .swiper-button-next::after {
  display: none;
}
.block_frontMv .mv_newsSummary .newsText {
  color: #FFFFFF;
  width: 100%;
  box-sizing: border-box;
  padding: 11% 8% 16%;
}
.block_frontMv .mv_newsSummary .newsText span.time {
  font-family: shippori-antique, sans-serif;
  opacity: .5;
  font-size: 64.3%;
  display: block;
  line-height: 1.33;
  margin: 0 0 1%;
}
.block_frontMv .mv_newsSummary .newsText span.text {
  font-size: 72%;
  line-height: 1.8;
  overflow: hidden;
}
/*----------*/
.block_frontMessage {
  padding: 30% 0 15%;
  background: #fff;
}
.block_frontMessage .message_text p {
  font-size: 86%;
  line-height: 2.167;
  letter-spacing: .1em;
}
.block_frontMessage .message_text p + p {
  margin: 2.1em 0 0;
}
.block_frontMessage .btn_link {
  margin: 14% 5% 0 auto;
}
/*----------*/
.block_frontProject {
  background: #F0B45A;
  overflow: hidden;
  transition: all 1s;
}
.block_frontProject.number1 {
  background: #8CB2C5;
}
.block_frontProject.number2 {
  background: #8CD282;
}
.block_frontProject.number3 {
  background: #1DD2F0;
}
.block_frontProject .sticky_wrap {
  overflow: hidden;
  display: flex;
  top: 0;
  left: 0;
  height: 100vh;
  min-width: calc(100% + 20vw);
}
.block_frontProject .sticky_wrap .project_nav {
  position: absolute;
  z-index: 10;
  left: 0;
  right: 0;
  bottom: 100px;
  margin: 0 0 0 10vw;
  width: 85vw;
}
.block_frontProject .sticky_wrap .project_nav .project_progress {
  position: absolute;
  left: 0;
  bottom: -1em;
  width: 100%;
  height: 2px;
  overflow: hidden;
}
.block_frontProject .sticky_wrap .project_nav .project_progress span {
  background: #fff;
  width: 100%;
  height: 100%;
  display: block;
  transform: translateX(-110%);
}
.block_frontProject .sticky_wrap .list_projectAnchor {
  display: flex;
  justify-content: center;
  z-index: 100;
  color: #fff;
}
.list_projectAnchor > li {
  width: 25%;
  font-size: 57%;
  line-height: 1;
  letter-spacing: 0;
}
.list_projectAnchor > li span {
  display: block;
  margin: 0 0 .5em;
}
.block_frontProject .scroll_contents {
  display: flex;
  align-items: center;
}
.block_frontProject .scroll_contents .titleWrap {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
}
.block_frontProject .scroll_contents .titleWrap .projectCenter {
  width: 100%;
  text-align: center;
}
.block_frontProject .scroll_contents .project_title {
  font-size: 250%;
  line-height: 1.43;
  font-weight: 300;
  color: #666666;
}
.block_frontProject .scroll_contents .project_lead {
  margin: 20px 0 0;
}
.block_frontProject .scroll_contents .project_lead span {
  display: inline-block;
  background: url("../img/link_arrow03.webp") no-repeat center bottom;
  background-size: contain;
  padding: 0 3em 1.5em;
  font-size: 93%;
  line-height: 1.333;
}
.block_frontProject .scroll_contents .projectWrap {
  width: 100%;
  box-sizing: border-box;
  position: relative;
  margin: auto;
}
.block_frontProject .scroll_contents .projectWrap .project_image {
  margin: 0 auto 25%;
  width: 70%;
}
.block_frontProject .scroll_contents .projectWrap .project_image a {
  display: block;
  overflow: hidden;
}
.block_frontProject .scroll_contents .projectWrap .project_image img {
  vertical-align: top;
}
.block_frontProject .scroll_contents .projectWrap .project_image video {
  width: 100%;
}
/**/
.block_frontProject .scroll_contents .projectWrap .project_tateText {
  writing-mode: vertical-rl;
  line-height: 1;
  color: #fff;
  position: absolute;
  left: 10%;
  top: 10%;
}
.block_frontProject .scroll_contents .projectWrap .project_tateText span {
  display: inline-block;
}
.block_frontProject .scroll_contents .projectWrap .project_tateText.color01 span {
  background: #EB7E2D;
}
.block_frontProject .scroll_contents .projectWrap .project_tateText.color02 span {
  background: #327697;
}
.block_frontProject .scroll_contents .projectWrap .project_tateText.color03 span {
  background: #289C14;
}
.block_frontProject .scroll_contents .projectWrap .project_tateText.color04 span {
  background: #0091BE;
}
.block_frontProject .scroll_contents .projectWrap .project_number {
  font-size: 108%;
}
.block_frontProject .scroll_contents .projectWrap .project_number span.en {
  padding: .8em .4em .8em .7em;
  margin: 0 0 0 -.1em;
}
.block_frontProject .scroll_contents .projectWrap .project_number span.en span {
  position: relative;
  display: inline-block;
}
.block_frontProject .scroll_contents .projectWrap .project_number span.en span::before {
  content: '';
  width: 1px;
  height: 100%;
  background: #fff;
  position: absolute;
  left: -.4em;
  top: 0;
}
.block_frontProject .scroll_contents .projectWrap .project_leadTitle {
  position: absolute;
  z-index: 5;
  left: 25%;
  top: 80%;
  pointer-events: none;
}
.block_frontProject .scroll_contents .projectWrap .project_leadTitle span {
  display: inline-block;
  line-height: 1;
  background: rgba(255, 255, 255, .8);
  font-size: 114.3%;
  font-weight: 400;
  padding: .3em .5em .5em;
}
.block_frontProject .scroll_contents .projectWrap .project_desc {
  font-size: 124%;
}
.block_frontProject .scroll_contents .projectWrap .project_desc span {
  padding: .7em .4em;
  text-orientation: upright;
}
.block_frontProject .scroll_contents .projectWrap .project_desc span.second {
  margin: 0 -.7em 0 0;
}
/**/
.block_frontProject .scroll_contents .projectWrap .projectText {
  position: relative;
  z-index: 5;
  color: #fff;
  pointer-events: none;
  display: inline-block;
  text-align: left;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_number {
  font-size: 79%;
  line-height: 1.2;
  margin: 0 0 1%;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_name {
  font-size: 315%;
  font-weight: 300;
  line-height: 1;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_desc {
  font-size: 125%;
  line-height: 1.5;
}
/*----------*/
.block_frontContents {
  background: rgba(40, 40, 40, .85);
  padding: 33% 0;
}
.block_frontContents .stickyWrap {
  position: relative;
  top: 0;
  height: 660dvw;
}
.block_frontContents .title_baseEn {
  color: #fff;
  margin: 0 0 10%;
}
.block_frontContents .area_about {
  color: #fff;
  background: #333333;
}
.block_frontContents .btn_linkLong {
  width: 90%;
  margin: 0 0 3% auto;
}
.block_frontContents .area_about .btn_linkLong a::after {
  background: #333333;
}
.block_frontContents .area_jobs {
  color: #fff;
  background: #666666;
}
.block_frontContents .area_jobs .btn_linkLong a::after {
  background: #666666;
}
.block_frontContents .area_interviews {
  color: #fff;
  background: #999999;
}
.block_frontContents .area_interviews .btn_linkLong a::after {
  background: #999999;
}
.block_frontContents .area_env {
  color: #000;
  background: #CCCCCC;
}
.block_frontContents .area_env .btn_linkLong a::before {
  background: #000;
}
.block_frontContents .area_env .btn_linkLong a::after {
  background: #CCCCCC;
}
.block_frontContents .area_talk {
  color: #000;
  background: #FFFFFF;
}
.block_frontContents .area_talk .interviewsText .swiper-slide {
  background: #fff;
}
.block_frontContents .area_talk .btn_linkLong a::before {
  background: #000;
}
.block_frontContents .area_talk .btn_linkLong a::after {
  background: #FFFFFF;
}
.block_frontContents .contentsSet {
  width: 100%;
  padding: 3% 0 8% 3%;
  box-sizing: border-box;
  overflow: hidden;
  position: sticky;
  left: 0;
  top: 50px;
}
.block_frontContents .contentsSet .set_title {
  font-size: 143%;
  font-weight: 400;
  letter-spacing: .01em;
  font-family: "neue-haas-unica", sans-serif;
  margin: 0 0 .2em;
}
.block_frontContents .content_thumbnail {
  overflow: hidden;
  border-radius: 1.3em;
  margin: 0 8% 4% 0;
}
.block_frontContents .contentsSet .content_thumbnail img {
  vertical-align: top;
}
.block_frontContents .content_thumbnail a {
  display: block;
  overflow: hidden;
}
.block_frontContents .contents_lead {
  font-size: 79%;
  line-height: 2;
  padding: 0 8% 0 0;
  margin: 0 0 8%;
}
.block_frontContents .interviewsThumbnail {
  position: relative;
}
.block_frontContents .interviewsThumbnail .thumbnail {
  overflow: hidden;
  border-radius: .8em;
  position: relative;
  height: 0;
  width: 60%;
  padding: 60% 0 0;
  margin: 0 auto 3%;
}
.block_frontContents .interviewsThumbnail .thumbnail a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.block_frontContents .interviewsThumbnail .thumbnail a img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.block_frontContents .interviewsThumbnail .thumbnail::before {
  content: '';
  width: 10vw;
  height: 10vw;
  position: absolute;
  right: 3%;
  bottom: 7%;
  z-index: 1000;
  pointer-events: none;
  overflow: hidden;
  border-radius: 50%;
  clip-path: polygon(50% 0, 50% 0, 50% 0, 50% 0, 50% 0, 50% 0, 50% 50%);
  background: url(../img/loading.webp) no-repeat;
  background-size: contain;
}
.block_frontContents .interviewsThumbnail .swiper-slide-active .thumbnail::before {
  animation: clip 3s linear forwards;
  animation-delay: .4s;
}
.block_frontContents .interviewsThumbnail img {
  pointer-events: none;
  vertical-align: top;
  transition: all .4s;
}
.block_frontContents .flexRight {
  overflow: hidden;
  position: relative;
}
.block_frontContents .interviews_tag {
  margin: 0 0 2%;
}
.block_frontContents .interviews_tag span {
  display: inline-block;
  line-height: 1.5;
  letter-spacing: 0;
  border-radius: 4px;
  padding: .1em .7em;
  font-size: 86%;
  color: #fff;
}
.block_frontContents .interviews_tag span.cat01 {
  background: #5F94AE;
}
.block_frontContents .interviews_tag span.cat02 {
  background: #86B182;
}
.block_frontContents .interviews_tag span.cat03 {
  background: #C88C75;
}
.block_frontContents .interviews_title {
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  min-height: 3em;
}
.block_frontContents .interviews_name span.jp {
  font-size: 93%;
}
.block_frontContents .interviews_name span.en {
  font-size: 68.75%;
  letter-spacing: 0.01em;
  margin: 0 0 0 1em;
}
.block_frontContents .btn_text {
  margin: 0 16% 0 0;
  text-align: right;
}
.block_frontContents .interviews_number {
  font-size: 68.75%;
  font-family: "neue-haas-unica", sans-serif;
  letter-spacing: .025em;
}
.block_frontContents .interviews_lead {
  font-size: 75%;
  padding: 0 15% 0 0;
  line-height: 2;
  min-height: 4em;
}
.block_frontContents .area_talk .btn_text {
  margin: 0 0 0 auto;
}
.block_frontContents .area_talk .btn_text a {
  color: #000;
}
.block_frontContents .area_talk .btn_text a::before {
  background: #000;
}
.block_frontContents .interviewsTicker {
  overflow: visible;
  margin: 4% 0 0;
}
.block_frontContents .overflow {
  overflow: hidden;
}
.block_frontContents .overflow.width7 .interviewsTicker {
  width: calc(100% / 5.2);
}
.block_frontContents .overflow.width3 {
  width: calc(100% / 1.2);
}
.block_frontContents .overflow.width3 .interviewsTicker {
  width: calc((100% / 4) - 10px);
}
.block_frontContents .interviewsTicker .interviews_ticker {
  overflow: hidden;
  border-radius: .3em;
  cursor: pointer;
  transition: all .2s;
  position: relative;
}
.block_frontContents .interviewsTicker .interviews_ticker::before {
  content: '';
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(243, 8, 9, 1) 27%, rgba(81, 5, 0, 1) 50%, rgba(236, 99, 99, 1) 73%, rgba(255, 255, 255, 1) 95%);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  pointer-events: none;
  border-image-slice: 1;
  box-sizing: border-box;
  opacity: 0;
  transition: all .4s;
}
.block_frontContents .interviewsTicker .swiper-slide-active .interviews_ticker::before {
  opacity: 1;
}
.block_frontContents .interviewsTicker .interviews_ticker img {
  vertical-align: top;
  position: relative;
  z-index: 10;
  margin: 2px;
  width: calc(100% - 4px);
}
/*----------*/
.block_frontVideo {
  padding: 40% 0 0;
}
.block_frontVideo .area_videoSlide {
  background: #666666;
  padding: 12% 0 11%;
  overflow: hidden;
}
.block_frontVideo .swiper-slide {
  cursor: pointer;
}
.block_frontVideo .video_title {
  font-size: 143%;
  color: #fff;
  font-weight: 400;
  line-height: 1.3;
  margin: 0 0 6% 3%;
}
.block_frontVideo .video_thumbnail {
  height: 0;
  padding: 62.5% 0 0;
  position: relative;
  overflow: hidden;
  margin: 0 0 5%;
  border-radius: 1em;
}
.block_frontVideo .video_thumbnail img {
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transition: all .4s;
}
.block_frontVideo .video_text {
  font-size: 79%;
  color: #fff;
  line-height: 2;
  width: 80%;
  margin: auto;
}
.block_frontVideo .video_slider {
  overflow: visible;
}
.block_frontVideo .video_slider .swiper-button-prev, .block_frontVideo .video_slider .swiper-button-next {
  width: 1.25em;
  height: 1.25em;
  top: -2.5em;
  margin: auto;
  line-height: 1;
}
.block_frontVideo .video_slider .swiper-button-prev {
  right: 11%;
  left: auto;
  transition: all .2s;
}
.block_frontVideo .video_slider .swiper-button-next {
  right: 3%;
  transition: all .2s;
}
.block_frontVideo .video_slider .swiper-button-prev::before, .block_frontVideo .video_slider .swiper-button-next::before {
  content: '';
  width: 70%;
  height: 70%;
  box-sizing: border-box;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 0 !important;
  left: 0 !important;
  margin: auto;
  transform: rotateZ(-135deg);
}
.block_frontVideo .video_slider .swiper-button-next::before {
  transform: rotateZ(45deg);
}
.block_frontVideo .video_slider .swiper-button-prev::after, .block_frontVideo .video_slider .swiper-button-next::after {
  display: none;
}
/*----------*/
.videoFrame {
  position: fixed;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, .8);
  width: 100%;
  height: 100%;
  z-index: 2000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all .4s;
  cursor: pointer;
}
.videoFrame::before, .videoFrame::after {
  content: '';
  width: 50px;
  height: 2px;
  background: #fff;
  position: absolute;
  right: 20px;
  top: 40px;
  transform-origin: center;
}
.videoFrame::before {
  transform: rotateZ(45deg);
}
.videoFrame::after {
  transform: rotateZ(-45deg);
}
.videoFrame .video_contentsWrap {
  width: 94%;
  height: 0;
  padding: 56.25% 0 0;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.videoFrame .video_contentsWrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
body.modal--open .videoFrame {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
/*----------*/
.parts_kodou {
  background: #fff;
  padding: 20% 0 22%;
  position: relative;
  overflow: hidden;
}
.parts_kodou .kodou {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}
.parts_kodou .kodou::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url(../img/kodou.webp) no-repeat center;
  background-size: 150% auto;
  position: absolute;
  left: 0;
  top: 0;
}
.parts_kodou.scroll--anime .kodou {
  transform: translateX(-100%);
  transition: all 1.2s ease .2s;
}
.parts_kodou.scroll--start .kodou {
  transform: translateX(0%);
}
.parts_kodou.scroll--anime .kodou::before {
  transform: translateX(100%);
  transition: all 1.2s ease .2s;
}
.parts_kodou.scroll--start .kodou::before {
  transform: translateX(0%);
}
.parts_kodou .kodou_text {
  width: 50%;
  margin: auto;
  position: relative;
  z-index: 5;
}
.parts_kodou .kodou_text img {
  vertical-align: top;
}
.parts_underNav {
  background: #333333;
}
.list_underNav {
  width: 87%;
  margin: 0 0 0 auto;
  padding: 16% 0;
}
.list_underNav > li + li {
  margin: 13% 0 0;
}
.list_underNav .underNav_title {
  color: #CCCCCC;
  font-size: 114.3%;
  font-weight: 300;
  letter-spacing: .02em;
  line-height: 1;
  margin: 0 0 .7em;
}
.list_underNav .underNav_thumbnail {
  margin: 0 0 .3em;
  overflow: hidden;
  width: 86%;
}
.list_underNav .underNav_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_underNav .underNav_name {
  font-size: 79%;
  color: #fff;
  letter-spacing: .1em;
}
.list_underNav .underNav_name small {
  display: block;
  font-size: 90%;
}
.list_underNav > li a {
  display: block;
}
/* == underpage ============================================== */
.sideAnchor {
  position: fixed;
  z-index: 999;
  left: 0;
  top: calc(18% + 50px);
  color: #000;
  background: rgba(255, 255, 255, .7);
  border-top-right-radius: .5em;
  border-bottom-right-radius: .5em;
  padding: .5em 1.2em;
  transition: all .3s ease .7s;
}
.sideAnchor #anchorTab {
  content: '';
  width: 34px;
  height: 52px;
  background: url(../img/side_index.svg) no-repeat;
  background-size: contain;
  position: absolute;
  right: -34px;
  top: 0;
  transform-origin: left top;
  z-index: 10;
  opacity: 0;
  transform: translateX(0) rotateZ(90deg);
  transition: all .3s ease .7s;
}
body.header--black .sideAnchor {
  color: #000;
}
body.nav--open .sideAnchor {
  color: #fff !important;
}
body.page--open .sideAnchor {
  transform: translateX(-100%);
}
body.index--none .sideAnchor {
  transition: all .3s;
}
body.page--open .sideAnchor #anchorTab {
  opacity: 1;
  transform: translateX(0) rotateZ(0);
}
body.page--open .sideAnchor.anchor--open {
  transform: translateX(0);
  transition: all .3s;
}
body.page--open .sideAnchor.anchor--open #anchorTab {
  opacity: 0;
  transform: translateX(0) rotateZ(90deg);
  transition: all .3s;
}
/**/
.sideAnchor .anchor_title {
  font-size: 72%;
  color: #000000;
  opacity: .5;
  position: relative;
}
.sideAnchor .anchor_title::before, .sideAnchor .anchor_title::after {
  content: '';
  width: 1.5em;
  height: 1px;
  background: #000000;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.sideAnchor .anchor_title::before {
  transform: rotateZ(45deg);
}
.sideAnchor .anchor_title::after {
  transform: rotateZ(-45deg);
}
body.navEnd .sideAnchor {
  opacity: 0;
  pointer-events: none;
}
.list_sideAnchor {
  font-size: 72%;
  margin: 5% 0 0;
}
.list_sideAnchor li a {
  display: block;
  line-height: 1.5;
  position: relative;
  padding: .75em 0;
}
.list_sideAnchor li a::before {
  content: '';
  width: 0;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: all .4s;
}
body.header--black .sideAnchor li a::before {
  background: #000;
}
body.nav--open .sideAnchor li a::before {
  background: #fff !important;
}
.block_pageTop {
  position: relative;
  overflow: hidden;
}
.block_pageTop .pageTop_kv img {
  vertical-align: top;
  max-width: none;
  width: 100%;
}
.block_pageTop .crosstalk_title {
  position: absolute;
  z-index: 10;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.block_pageTop .crosstalk_title img {
  vertical-align: top;
}
.crosstalk03 .block_pageTop .crosstalk_title {
  width: 100%;
  height: 10.5%;
}
.crosstalk04 .block_pageTop .crosstalk_title {
  width: 110%;
  height: 22.5%;
  top: 50%;
  left: -5%;
}
.block_pageTop.margin {
  margin: 50px 0 0;
}
.block_pageTop #js_pageTopSlide {
  pointer-events: none;
}
.block_pageTop #js_pageTopSlide .swiper-wrapper {
  transition-timing-function: linear !important;
  pointer-events: none;
}
.block_pageTop .swiper::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .15);
  z-index: 10;
  pointer-events: none;
}
.block_pageTop .swiper-slide img {
  vertical-align: top;
}
.block_pageTop .area_title {
  position: absolute;
  z-index: 100;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.block_pageTop .area_title .title_underPage {
  color: #fff;
  line-height: 1;
  position: absolute;
  left: 60px;
  bottom: 10%;
}
.block_pageTop .area_title .title_underPage .en {
  font-size: 164.3%;
  font-weight: 500;
  letter-spacing: 0;
  margin: 0 0 .4em;
}
.block_pageTop .area_title .title_underPage .jp {
  letter-spacing: .07em;
}
.block_pageTop .area_title .title_underPage2 {
  display: inline-block;
  color: #fff;
  line-height: 1;
  text-align: left;
  position: absolute;
  right: 5%;
  bottom: 5%;
}
.block_pageTop .area_title .title_underPage2 .en {
  font-size: 200%;
  font-weight: 400;
  letter-spacing: 0;
  margin: 0 0 .25em;
}
.block_pageTop .area_title .title_underPage2 .jp {
  font-size: 112.5%;
  margin: 0 0 1em;
}
.block_pageTop .area_title .title_underPage2 .mincyo {
  font-size: 200%;
  line-height: 1;
}
.block_pageTop .area_title .title_underPage2 .mincyo span {
  display: inline-block;
  background: #000;
  padding: .2em .5em;
}
.block_pageTop .area_archive {
  padding: 0;
}
.block_pageTop .area_tateText {
  position: absolute;
  z-index: 10;
  right: 4%;
  top: 21%;
  writing-mode: vertical-rl;
}
.block_pageTop .area_tateText .text {
  color: #fff;
  line-height: 1;
}
.block_pageTop .area_tateText .text img.talk01 {
  width: 15%;
}
.block_pageTop .area_tateText .text > span {
  background: #000000;
  display: inline-block;
}
.project--color01 .block_pageTop .area_tateText .text > span {
  background: #f0a064;
}
.project--color02 .block_pageTop .area_tateText .text > span {
  background: #8cb2c5;
}
.project--color03 .block_pageTop .area_tateText .text > span {
  background: #8cd282;
}
.project--color04 .block_pageTop .area_tateText .text > span {
  background: #23B9D2;
}
.block_pageTop .area_tateText .text span.en {
  letter-spacing: 0;
  font-size: 107.14%;
  padding: 1em .4em 1em .8em;
}
.block_pageTop .area_tateText .text span.en span {
  display: inline-block;
  position: relative;
}
.block_pageTop .area_tateText .text span.en span::before {
  content: '';
  width: 1px;
  height: 100%;
  background: #fff;
  position: absolute;
  left: -.4em;
  top: 0;
}
.block_pageTop .area_tateText .text span.name {
  font-size: 157.14%;
  font-weight: 700;
  padding: .6em .4em;
  text-orientation: upright;
  letter-spacing: 0.07em;
}
.block_pageTop .area_bottomText {
  position: absolute;
  z-index: 10;
  right: 4%;
  bottom: 10%;
}
.block_pageTop .area_bottomText .text {
  font-size: 128.57%;
  font-weight: 400;
  line-height: 1;
  text-align: right;
}
.block_pageTop .area_bottomText .text > span {
  display: inline-block;
  background: #FFFFFF;
  padding: .3em;
}
.block_pageTop .area_imageText {
  position: absolute;
  z-index: 10;
  right: 4%;
  top: 24%;
}
.block_pageTop .area_imageText.talk01 {
  width: min(16%, 80px);
}
.block_pageTop .area_imageText.talk02 {
  width: min(16%, 80px);
}
.block_pageTop .area_interviewTitle {
  position: absolute;
  right: 4%;
  top: 13%;
  z-index: 5;
  writing-mode: vertical-rl;
  line-height: 1;
  color: #fff;
}
.block_pageTop .area_interviewTitle .tate_title {
  font-size: 150%;
  letter-spacing: 0;
}
.block_pageTop .area_interviewTitle .tate_title span {
  display: inline-block;
  background: #000;
  padding: 1.1em .35em;
}
.block_pageTop .area_interviewTitle .tate_lead {
  font-size: 143%;
  margin: 2.5em 0 0;
}
.block_pageTop .area_interviewTitle .tate_lead span {
  display: inline-block;
  padding: .8em .3em .9em;
}
.block_pageTop .area_interviewTitle .tate_lead.color01 span {
  background: #8CB2C5;
}
.block_pageTop .area_interviewTitle .tate_lead.color02 span {
  background: #A4C4A1;
}
.block_pageTop .area_interviewTitle .tate_lead.color03 span {
  background: #D19F8B;
}
.block_pageTop .area_interviewName {
  position: absolute;
  z-index: 5;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .5);
  width: 100%;
  padding: 0 0 26%;
}
.block_pageTop .area_interviewName .interviewName_en {
  color: #fff;
  font-size: 162%;
  font-weight: 350;
  padding: 0 0 0 2.35em;
  letter-spacing: 0.035em;
}
.block_pageTop .area_interviewName .interviewName_jp {
  background: #8CB2C5;
  font-size: 120%;
  line-height: 1.53;
  font-weight: 700;
  padding: .8em 0 .9em 3.2em;
  letter-spacing: 0.2em;
}
.block_pageTop .area_interviewName .interviewName_jp.color02 {
  background: #A4C4A1;
}
.block_pageTop .area_interviewName .interviewName_jp.color03 {
  background: #D19F8B;
}
.block_pageLead {
  padding: 13.5% 0 20%;
}
.block_pageLead .leadText {
  font-size: 114.3%;
  line-height: 2;
  letter-spacing: 0;
  margin: 0 3% 0 0;
}
.block_pageLead .inner--interview .leadText {
  font-size: 100%;
  line-height: 1.86;
  letter-spacing: .08em;
  margin: 0 7% 0 0;
}
/* ====== 
page-name #
======*/
.block_project .bg {
  background-position: center top;
  background-size: contain;
  background-repeat: repeat;
}
.block_project .bg.bg--01 {
  background-image: url(../img/crosstalk/talk01/bg_sp.webp);
}
.block_project .bg.bg--02 {
  background-image: url(../img/crosstalk/talk02/bg_sp.webp);
}
.block_project .bg.bg--03 {
  background-image: url(../img/crosstalk/talk03/bg.webp);
}
.block_project .bg.bg--04 {
  background-image: url(../img/crosstalk/talk04/bg.webp);
}
.block_project .area_archive {
  margin: 0 0 20%;
}
.list_projectArchive {
  display: flex;
  flex-wrap: wrap;
  padding: 20% 0 0;
}
.list_projectArchive > li + li {
  margin: 25% auto 0;
}
.list_projectArchive .archive_thumbnail {
  padding: 16.5% 0;
  overflow: hidden;
  position: relative;
}
.list_projectArchive .project01 .archive_thumbnail {
  background: #F0A064;
}
.list_projectArchive .project02 .archive_thumbnail {
  background: #8CB2C5;
}
.list_projectArchive .project03 .archive_thumbnail {
  background: #8CD282;
}
.list_projectArchive .project04 .archive_thumbnail {
  background: #1DD2F0;
}
.list_projectArchive .archive_thumbnail .archive_title {
  position: absolute;
  z-index: 10;
  left: 4.5%;
  top: 6.5%;
  writing-mode: vertical-rl;
  line-height: 1;
  color: #fff;
}
.list_projectArchive .archive_thumbnail .thumbWrap {
  overflow: hidden;
}
.list_projectArchive .archive_thumbnail .thumbWrap img {
  vertical-align: top;
  transition: all .4s;
}
.list_projectArchive .archive_thumbnail .archive_title > span {
  background: #000000;
  display: inline-block;
}
.list_projectArchive .project01 .archive_thumbnail .archive_title > span {
  background: #EB8436;
}
.list_projectArchive .project02 .archive_thumbnail .archive_title > span {
  background: #327697;
}
.list_projectArchive .project03 .archive_thumbnail .archive_title > span {
  background: #5EAF50;
}
.list_projectArchive .project04 .archive_thumbnail .archive_title > span {
  background: #0091BE;
}
.list_projectArchive .archive_thumbnail .archive_title .en {
  letter-spacing: 0;
  font-weight: 500;
  padding: .8em .4em .8em .7em;
}
.list_projectArchive .archive_thumbnail .archive_title .en span {
  position: relative;
  display: inline-block;
}
.list_projectArchive .archive_thumbnail .archive_title .en span::before {
  content: '';
  width: 1px;
  height: 100%;
  background: #fff;
  position: absolute;
  left: -.4em;
  top: 0;
}
.list_projectArchive .archive_thumbnail .archive_title .name {
  font-size: 114.3%;
  font-weight: 500;
  padding: .8em .4em;
  text-orientation: upright;
  letter-spacing: 0.07em;
  letter-spacing: 0;
  text-align: left;
}
.list_projectArchive .archive_thumbnail .archive_title .name.second {
  margin: 0 -.7em 0 0;
}
.list_projectArchive .textBox {
  margin: 1.6em 0 0;
  line-height: 1.4;
}
.list_projectArchive .textBox .archive_title {
  margin: 0 0 1em;
  position: relative;
  transition: all .3s;
}
.list_projectArchive .textBox .archive_title::before {
  content: '';
  width: 0;
  height: 110%;
  position: absolute;
  right: -3%;
  top: -5%;
  transition: all .4s;
  background: #333;
}
.list_projectArchive .project01 .textBox .archive_title::before {
  background: #EB8436;
}
.list_projectArchive .project02 .textBox .archive_title::before {
  background: #327697;
}
.list_projectArchive .project03 .textBox .archive_title::before {
  background: #5EAF50;
}
.list_projectArchive .project04 .textBox .archive_title::before {
  background: #1DD2F0;
}
.list_projectArchive a:hover .textBox .archive_title::before {
  width: 106%;
  left: -3%;
  right: auto;
}
.list_projectArchive a:hover .textBox .archive_title {
  color: #fff;
}
.list_projectArchive .textBox .archive_title span {
  position: relative;
  z-index: 5;
}
.list_projectArchive .textBox .archive_title span.num {
  font-size: 78.57%;
  display: block;
  letter-spacing: .025em;
}
.list_projectArchive .textBox .archive_title span.title {
  letter-spacing: .05em;
  display: block;
}
.list_projectArchive .textBox .archive_lead {
  font-size: 86%;
  letter-spacing: .13em;
  line-height: 2;
}
/*---------------*/
.block_project .area_intro {
  background: #7CB27B;
  padding: 20% 0 20%;
  position: relative;
}
.project--color01 .block_project .area_intro {
  background: #f0a064;
}
.project--color02 .block_project .area_intro {
  background: #8CB2C5;
}
.project--color03 .block_project .area_intro {
  background: #8cd282;
}
.project--color04 .block_project .area_intro {
  background: #23B9D2;
}
.block_project .area_intro .introFlex .imgBox {
  width: 73%;
  margin: auto;
}
.block_project .area_intro .introFlex .imgBox img {
  vertical-align: top;
}
.block_project .area_intro .introFlex .imgBox .small {
  width: 67%;
  margin: 11% auto 0;
}
.block_project .area_intro .introFlex .textBox {
  font-size: 86%;
  line-height: 2;
  color: #fff;
  margin: 12% auto 0;
  letter-spacing: .05em;
}
.block_project .area_intro .introFlex .textBox p + p {
  margin: 2em 0 0;
}
.block_project .area_intro .intro_lead {
  font-size: 86%;
  line-height: 2;
}
/*---------------*/
.block_project .area_member {
  padding: 20% 0 10%;
  background: #EBF4EB;
  overflow: hidden;
}
.project--color01 .block_project .area_member {
  background: #FDF1E8;
}
.project--color02 .block_project .area_member {
  background: #EEF3F6;
}
.project--color03 .block_project .area_member {
  background: #EEF8EC;
}
.project--color04 .block_project .area_member {
  background: #DDF8FD;
}
.list_memberProfile {
  margin: 0 0 20%;
}
.list_memberProfile > li {
  position: relative;
}
.list_memberProfile > li + li {
  margin: 14% 0 0;
}
.list_memberProfile > li .profile_thumbnail {
  width: 32%;
  margin: 0 0 4%;
}
.list_memberProfile > li .profile_thumbnail img {
  vertical-align: top;
}
.list_memberProfile > li .textBox {
  margin: .5em 0;
  letter-spacing: 0.05em;
}
.list_memberProfile > li .textBox .profile_type {
  font-size: 143%;
  line-height: 1;
  position: absolute;
	left: 40%;
  top: 10vw;
}
.list_memberProfile > li .textBox .profile_type span {
  display: inline-block;
  background: #fff;
  border: solid 1px #fff;
  color: #000;
  padding: .5em;
}
.list_memberProfile > li .textBox .profile_type.ver02 span {
  background: none;
  color: #fff;
}
.list_memberProfile > li .textBox .profile_name {
  margin: 0 0 .2em;
}
.list_memberProfile > li .textBox .profile_name strong {
  font-size: 129%;
  font-weight: 400;
}
.list_memberProfile > li .textBox .profile_position {
  font-size: 75%;
  line-height: 1.833;
}
.list_memberProfile > li .textBox .profile_desc {
  border-top: solid 1px rgba(0, 0, 0, .5);
  padding: 1.4em 0 0;
  margin: 1.4em 0 0;
  font-size: 72%;
  line-height: 2;
}
.temp_swipeYoko {
  background: #FFFFFF;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
  padding: 0 0 1em;
}
.block_project .temp_swipeYoko {
  transform: translateX(-4vw);
  width: 86vw;
  padding: 13% 0 0 6%;
}
.temp_swipeYoko .yokoFlex {
  position: relative;
}
.temp_swipeYoko .yokoFlex .title_base {
  margin: 0 0 5%;
  box-sizing: border-box;
}
.temp_swipeYoko .yokoFlex .title_base .jp {
  line-height: 1.4;
  text-align: left;
}
.temp_swipeYoko .yokoFlex .title_base .jp small {
  font-size: 90%;
}
.temp_swipeYoko .yokoFlex .yoko_image {
  margin: 0 0 4% 15%;
}
.temp_swipeYoko .yokoFlex .yoko_image img {
  vertical-align: top;
}
.swipeYokoWrap {
  padding: 0 5% 3% 0;
}
.swipeYokoWrap ul {
  position: relative;
}
.swipeYokoWrap ul::before {
  content: '';
  width: 1px;
  height: 100%;
  background: #000;
  position: absolute;
  left: .8em;
  top: 0;
}
.swipeYokoWrap ul > li {
  width: 100%;
  display: flex;
  position: relative;
}
.swipeYokoWrap ul > li:last-child {
  padding: 0 0 8%;
}
.swipeYokoWrap ul > li:last-child::before {
  content: '';
  width: 3em;
  height: calc(100% - 2.1em);
  background: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 5;
}
.swipeYokoWrap ul > li + li {
  margin: 11% 0 0;
}
.swipeYokoWrap ul > li .num {
  font-family: "neue-haas-unica", sans-serif;
  font-size: 143%;
  font-weight: 300;
  letter-spacing: .05em;
  margin: 0 0 .5em;
  box-sizing: border-box;
  width: 2.5em;
}
.swipeYokoWrap ul > li .num span {
  display: inline-block;
  background: #fff;
  position: relative;
  z-index: 5;
}
.swipeYokoWrap ul > li .num span.color01 {
  color: #78B478;
}
.swipeYokoWrap ul > li .num span.color02 {
  color: #DCB478;
}
.swipeYokoWrap ul > li .num span.color03 {
  color: #DC9678;
}
.swipeYokoWrap ul > li .num span.color04 {
  color: #DC78B4;
}
.swipeYokoWrap ul > li .num span.color05 {
  color: #9978BE;
}
.swipeYokoWrap ul > li .textBox {
  width: calc(100% - 2.5em);
}
.swipeYokoWrap ul > li .textBox dl dt {
  font-size: 114.3%;
  font-weight: 500;
  margin: .25em 0 .6em;
}
.swipeYokoWrap ul > li .textBox dl dt small {
  display: block;
  font-size: 75%;
}
.swipeYokoWrap ul > li .textBox dl dd {
  font-size: 86%;
  line-height: 2;
  letter-spacing: .05em;
}
.swipeYokoWrap ul > li .textBox p + p {
  margin: .7em 0 0;
}
.swipeYokoWrap ul > li .textBox p span.waku {
  border: solid 1px #000;
  display: block;
  border-radius: .5em;
  padding: 1em;
  text-align: center;
  margin: 1.5em 0 0;
}
.swipeYokoWrap ul > li .textBox p span.waku span {
  text-align: left;
  display: inline-block;
}
.swipeYokoWrap .assign span {
  display: inline-block;
  vertical-align: middle;
}
.swipeYokoWrap .assign span.img {
  width: 40px;
}
.swipeYokoWrap .assign span.img img {
  vertical-align: top;
}
.swipeYokoWrap .assign span.caption {
  width: calc(100% - 50px);
  margin: 0 0 0 10px;
}
/*---------------*/
.block_project .area_talk {
  padding: 20% 0 20%;
  background: #EBF4EB;
  overflow: hidden;
}
.project--color01 .block_project .area_talk {
  background: #fdf1e8;
}
.project--color02 .block_project .area_talk {
  background: #eef3f6;
}
.project--color03 .block_project .area_talk {
  background: #eef8ec;
}
.project--color04 .block_project .area_talk {
  background: #DDF8FD;
}
.block_project .area_talk .talkSet + .talkSet {
  margin: 20% 0 0;
}
.dl_talkContents {
  margin: 12% 0;
}
.dl_talkContents dt {
  font-size: 107.14%;
  font-weight: 500;
  letter-spacing: .1em;
  position: relative;
  padding: 0 0 0 3.5em;
  margin: 0 0 2.5em;
}
.dl_talkContents dt.none {
  display: none;
}
.dl_talkContents dt::before {
  content: '';
  width: 2.5em;
  height: 1px;
  background: #333333;
  position: absolute;
  left: 0;
  top: .83em;
  margin: auto;
}
.dl_talkContents .talk_member {
  display: flex;
  justify-content: space-between;
}
.dl_talkContents .talk_member + .talk_member {
  margin: 4.5em 0 0;
}
.dl_talkContents .talk_member .member_img {
  width: 40px;
}
.dl_talkContents .talk_member .member_img img {
  vertical-align: top;
}
.dl_talkContents .talk_member .member_text {
  width: calc(100% - 50px);
  font-size: 85.7%;
  line-height: 2.5;
  margin: 0 0 0;
  letter-spacing: .025em;
  box-sizing: border-box;
}
.dl_talkContents .talk_member .member_text p + p {
  margin: 2.5em 0 0;
}
.dl_talkContents .image.margin {
  margin: 2.5em 0 0;
}
.dl_talkContents .contents_flex + .contents_flex {
  margin: 20% 0 0;
}
.dl_talkContents .contents_flex .flexRight {
  width: 83%;
  margin: 0 0 12% auto;
}
.block_project .sp_topImage {
  position: relative;
  width: 83%;
  margin: 12% 0 12% auto;
}
.dl_talkContents.sp_imageTop .flexRight {
  position: absolute;
  right: 0;
  top: 0;
  margin: 0;
}
.block_project .area_ticker {
  background: #E1E1E1;
  padding: 20% 0;
  overflow: hidden;
}
.block_project .area_ticker .title_talk .en {
  line-height: 1.5;
}
.block_project .area_ticker .ticker_image {
  height: 0;
  padding: 83.333% 0 0;
  background-repeat: repeat-x;
  background-size: auto 100%;
}
.block_project .area_ticker .ticker_image.image02 {
  background-image: url(/assets/img/project/project02/ticker.webp);
  -webkit-animation: bgTicker 20s linear 0s infinite;
  animation: bgTicker 20s linear 0s infinite;
}
.block_project .area_end {
  background: #638F63;
  padding: 15% 0;
}
.block_project.type--talk .area_end {
  background: #000;
}
.project--color01 .block_project .area_end {
  background: #ed8e46;
}
.project--color02 .block_project .area_end {
  background: #327697;
}
.project--color03 .block_project .area_end {
  background: #72b966;
}
.project--color04 .block_project .area_end {
  background: #00BEEE;
}
.block_project .area_end img {
  vertical-align: top;
  pointer-events: none;
}
/* ========================
page-name #crosstalk
========================*/
.block_crosstalk .area_talk01 {
  background: #CCCCCC;
  padding: 21% 0 19%;
}
.block_crosstalk .area_talk02 {
  background: #000000;
  padding: 21% 0 19%;
}
.block_crosstalk .talk_sectionTitle {
  font-size: 114.3%;
  border: solid 1px #333333;
  letter-spacing: .05em;
  padding: .6em 1em;
  margin: 0 0 20%;
  line-height: 1.4;
}
.block_crosstalk .talk_sectionTitle span {
  display: inline-block;
  width: 5.8em;
  border-right: solid 1px #333333;
}
.list_talkSummary > li + li {
  margin: 17% auto 0;
}
.list_talkSummary .talk_thumbnail {
  overflow: hidden;
}
.list_talkSummary .talk_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_talkSummary .textBox {
  margin: 1.3em 0 0;
}
.list_talkSummary .talk_name {
  letter-spacing: .05em;
  margin: 0 0 1em;
  position: relative;
  transition: all .3s;
}
.list_talkSummary .talk_name::before {
  content: '';
  width: 0;
  height: 110%;
  position: absolute;
  right: -3%;
  top: -5%;
  transition: all .4s;
  background: #000;
}
.list_talkSummary .talk_name span {
  position: relative;
  z-index: 5;
}
.list_talkSummary .talk_desc {
  font-size: 86%;
  line-height: 2;
}
/**/
.block_crosstalk .area_talk02 .talk_sectionTitle {
  border-color: #fff;
  color: #fff;
}
.block_crosstalk .area_talk02 .talk_sectionTitle span {
  border-color: #fff;
}
.block_crosstalk .area_talk02 .list_talkSummary {
  color: #fff;
}
.block_crosstalk .area_talk02 .list_talkSummary a:hover .talk_name {
  color: #000;
}
.block_crosstalk .area_talk02 .list_talkSummary .talk_name::before {
  background: #fff;
}
/* ========================
page-name #crosstalk
========================*/
.block_crosstalk .area_talk01 {
  background: #CCCCCC;
  padding: 5em 0 6em;
}
.block_crosstalk .area_talk02 {
  background: #000000;
  padding: 5em 0 6em;
}
.block_crosstalk .talk_sectionTitle {
  font-size: 150%;
  border: solid 1px #333333;
  letter-spacing: .05em;
  padding: .82em 1.18em;
  margin: 0 0 2.5em;
}
.block_crosstalk .talk_sectionTitle span {
  display: inline-block;
  width: 8.1em;
  border-right: solid 1px #333333;
}
.list_talkSummary .talk_thumbnail {
  overflow: hidden;
}
.list_talkSummary .talk_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_talkSummary .talk_name {
  letter-spacing: .05em;
  margin: 0 0 .4em;
  position: relative;
  transition: all .3s;
}
.list_talkSummary .talk_name span {
  position: relative;
  z-index: 5;
}
.list_talkSummary .talk_desc {
  font-size: 86%;
  line-height: 2;
}
/**/
.block_crosstalk .area_talk02 .talk_sectionTitle {
  border-color: #fff;
  color: #fff;
}
.block_crosstalk .area_talk02 .talk_sectionTitle span {
  border-color: #fff;
}
.block_crosstalk .area_talk02 .list_talkSummary {
  color: #fff;
}
.block_crosstalk .area_talk02 .list_talkSummary a:hover .talk_name {
  color: #000;
}
.block_crosstalk .area_talk02 .list_talkSummary .talk_name::before {
  background: #fff;
}
/**/
.block_project.type--talk .area_intro {
  background: rgba(51, 51, 51, 0.4);
  color: #fff;
  padding: 20% 0 10%;
}
.block_project.type--talk .area_member {
  background: rgba(51, 51, 51, 0.4);
  color: #fff;
}
.block_project.type--talk .list_memberProfile > li + li {
  margin: 3.5em 0 0;
}
.block_project.type--talk .list_memberProfile > li .profile_thumbnail {
  width: 45%;
}
.block_project.type--talk .list_memberProfile > li .textBox {
  margin: 0;
}
.block_project.type--talk .list_memberProfile > li .textBox .profile_desc {
  border-color: #fff;
}
.block_project.type--talk .list_memberProfile > li .profile_thumbnail img {
  width: 80%;
  margin: 0 10% 0 0;
}
.block_project.type--talk .area_talk {
  background: #EEEEEE;
  padding: 6em 0 4.5em;
}
/* ========================
page-name #crosstalk
========================*/
.block_talk .area_intro {
  background: #000000;
  padding: 8.5em 0 0;
}
.block_talk .area_intro .intro_title {
  text-align: center;
  font-size: 172%;
  font-weight: 300;
  border: solid 2px #FFFFFF;
  color: #fff;
  background: #000;
  position: relative;
  z-index: 5;
  max-width: 60%;
  margin: auto;
  border-bottom: none;
  padding: .3em 0 .1em;
  letter-spacing: .02em;
  line-height: 1;
}
.block_talk .area_intro .intro_lead {
  font-size: 86%;
  line-height: 2;
  letter-spacing: .05em;
  color: #fff;
  border: solid 2px #FFFFFF;
  margin: -3px auto 0;
  max-width: 95%;
  box-sizing: border-box;
  padding: 1.2em 1.8em;
}
/*-----*/
.block_talk .area_member {
  background: #000;
  padding: 18% 0 20%;
}
.block_talk .area_member .title_center {
  color: #fff;
}
.list_vsMember {
  margin: 20% auto 0;
  position: relative;
}
.list_vsMember > li {
  color: #fff;
}
.list_vsMember > li + li {
  padding: 72% 0 0;
  background: url(../img/crosstalk/talk03/vs.webp);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 54% auto;
  margin: 21% auto 0;
}
.list_vsMember .member_image {
  margin: 0 auto 4%;
  width: 66%;
}
.list_vsMember .member_name {
  text-align: center;
  margin: 5% 0 1%;
}
.list_vsMember .member_name strong {
  font-weight: 400;
  font-size: 129%;
  display: inline-block;
}
.list_vsMember .member_position {
  text-align: center;
  font-size: 75%;
  line-height: 1.6;
  letter-spacing: .05em;
}
.list_vsMember .member_desc {
  border-top: solid 1px #fff;
  font-size: 72%;
  line-height: 1.86;
  margin: 1.3em 0 0;
  padding: 1.5em 0 0;
  letter-spacing: .05em;
}
/*-----*/
.block_talk .area_contents {
  padding: 20% 0;
}
.block_talk .area_contents.contents01 {
  background: #333333;
}
.block_talk .area_contents.contents02 {
  background: #666666;
}
.block_talk .area_contents.contents03 {
  background: #999999;
}
.block_talk .area_contents.contents04 {
  background: #CCCCCC;
}
.block_talk .area_contents .contents_title {
  text-align: center;
  color: #fff;
  margin: 0 0 12%;
}
.block_talk .area_contents .contents_title .title {
  margin: 0 0 .6em;
  text-align: center;
}
.block_talk .area_contents .contents_title.type--black .title {
  color: #000;
}
.block_talk .area_contents .contents_title .title .font--en {
  display: block;
  font-weight: 300;
  letter-spacing: .05em;
}
.block_talk .area_contents .contents_title .title .jp {
  font-weight: 400;
  font-size: 129%;
  letter-spacing: .05em;
}
.block_talk .area_contents .contents_title .att {
  font-size: 107%;
  line-height: 1.5;
  margin: -.3em 0 0;
}
.block_talk .area_contents .contents_title .att span {
  display: inline-block;
  background: #E50012;
  color: #fff;
  padding: .2em 1em;
}
.block_talk .area_contents .contents_title .text {
  font-size: 129%;
  line-height: 1;
  letter-spacing: .1em;
  margin: auto;
}
.block_talk .area_contents .contents_title .text span {
  display: inline-block;
  background: #000;
  padding: .32em .5em;
}
.block_talk .area_contents .setWrap {
  margin: 17% 0 0;
}
.block_talk .area_contents .talkSet {
  display: flex;
}
.block_talk .area_contents .talkSet + .talkSet {
  margin: 2.4em 0 0;
}
.block_talk .area_contents .talkSet .set_image {
  width: 60px;
  position: relative;
}
.block_talk .area_contents .talkSet .set_image img {
  vertical-align: top;
}
.block_talk .area_contents .talkSet.type01 .set_image::before {
  content: '';
  width: 20px;
  height: 2px;
  background: #50FF50;
  position: absolute;
  z-index: 5;
  right: -20px;
  top: 29px;
}
.block_talk .area_contents .talkSet.type02 .set_image::before {
  content: '';
  width: 20px;
  height: 2px;
  background: #FF7800;
  position: absolute;
  z-index: 5;
  left: -20px;
  top: 29px;
}
.block_talk .area_contents .talkSet .set_text {
  width: calc(100% - 70px);
  background: #fff;
  box-sizing: border-box;
  position: relative;
}
.block_talk .area_contents .talkSet.type01 .set_text {
  background: #50FF50;
  clip-path: polygon(50% 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px, 10px 0);
  margin: 0 0 0 10px;
}
.block_talk .area_contents .talkSet.type01 .set_text .textWrap {
  background: #fff;
  box-sizing: border-box;
  height: 100%;
  clip-path: polygon(50% 2px, calc(100% - 12px) 2px, calc(100% - 2px) 12px, calc(100% - 2px) calc(100% - 12px), calc(100% - 12px) calc(100% - 2px), 12px calc(100% - 2px), 2px calc(100% - 12px), 2px 12px, 12px 2px);
  display: flex;
  align-items: center;
  padding: 1em 1.8em;
}
.block_talk .area_contents .talkSet .textWrap p {
  font-size: 86%;
  line-height: 2.5;
  letter-spacing: .025em;
  width: 100%;
  box-sizing: border-box;
}
.block_talk .area_contents .talkSet.type02 {
  flex-direction: row-reverse;
}
.block_talk .area_contents .talkSet.type02 .set_text {
  margin: 0 10px 0 0;
  border: solid 2px #FF7800;
  border-radius: 1em;
}
.block_talk .area_contents .talkSet.type02 .set_text .textWrap {
  padding: 1em 1.8em;
}
.block_talk .area_contents.contentsEnd .contents_title .title {
  font-style: italic;
  font-size: 143%;
}
.block_talk .area_contents.contentsEnd .contents_title .text {
  font-size: 179%;
}
.block_talk .area_contents .lead_image img {
  vertical-align: top;
  display: block;
}
.block_talk .area_contents .lead_image img + img {
  margin: 5% 0 0;
}
.block_talk .area_contents.contentsEnd .lead_image {
  margin: 5.7em 0 0;
}
/* ========================
page-name #interview
========================*/
body#page_interview {
  background: #DDDDDD;
}
body#page_interview .block_pageLead {
  padding: 8.5% 0 14%;
}
body .block_pageTop.margin--top {
  margin: 50px 0 0;
}
.block_interview .area_archive {
  margin: 5em 0 26%;
}
.block_interview .archiveSet + .archiveSet {
  margin: 29% 0 0;
}
.block_interview .archive_titleWrap {
  color: #fff;
  margin: 0 0 2.8em;
  background: #000;
}
.block_interview .archive_titleWrap .archive_title {
  font-size: 200%;
  font-weight: 700;
  padding: .2em 0 .4em 1.2em;
  box-sizing: border-box;
  letter-spacing: 0;
}
.block_interview .set01 .archive_titleWrap .archive_title {
  background: #8CB2C5;
}
.block_interview .set02 .archive_titleWrap .archive_title {
  background: #A4C4A1;
}
.block_interview .set03 .archive_titleWrap .archive_title {
  background: #D19F8B;
}
.block_interview .archive_titleWrap .archive_lead {
  line-height: 1.86;
  box-sizing: border-box;
  padding: 1em 2.5em 1.4em;
  letter-spacing: 0;
}
.list_archiveSummary {
  width: 95%;
}
.list_archiveSummary > li {
  margin: 12% 0 0;
}
.list_archiveSummary .archive_thumbnail img {
  vertical-align: top;
}
.list_archiveSummary .archive_desc {
  font-size: 143%;
  font-weight: 700;
  line-height: 1.5;
  margin: -2.3em 0 .4em;
  letter-spacing: .05em;
}
.set01 .list_archiveSummary .archive_desc span {
  background: #8CB2C5;
}
.set02 .list_archiveSummary .archive_desc span {
  background: #A4C4A1;
}
.set03 .list_archiveSummary .archive_desc span {
  background: #D19F8B;
}
.list_archiveSummary .archive_desc span {
  display: inline-block;
  padding: 0 .5em .1em;
}
.list_archiveSummary .archive_info span {
  line-height: 1.3125;
  letter-spacing: .02em;
}
.list_archiveSummary .archive_info span.positon {
  display: block;
  font-size: 114.3%;
}
.list_archiveSummary .archive_info span.name {
  display: block;
  font-size: 129%;
}
/*--------------------------------------------------*/
.block_interview .area_info .infoWrap {
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  margin: 14% 0 0;
  padding: 12.5% 0 4.5%;
  position: relative;
}
.block_interview .area_info .infoWrap .thumbnail {
  width: 36.6%;
}
.block_interview .area_info .infoWrap .thumbnail img {
  vertical-align: top;
}
.block_interview .area_info .infoWrap .sp-position {
  position: absolute;
  left: 42%;
  top: 12%;
  width: 56%;
}
.block_interview .area_info .infoWrap .info_join {
  line-height: 2.14;
}
.block_interview .area_info .infoWrap .info_join span {
  display: inline-block;
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  letter-spacing: 0;
  line-height: 1;
  padding: .25em .6em;
}
.block_interview .area_info .infoWrap .info_name {
  margin: .1em 0 .6em;
}
.block_interview .area_info .infoWrap .info_name.font--small {
  font-size: 80%;
}
.block_interview .area_info .infoWrap .info_name span {
  display: block;
  font-weight: 500;
}
.block_interview .area_info .infoWrap .info_name span.position {
  font-size: 114.3%;
  line-height: 1.3125;
}
.block_interview .area_info .infoWrap .info_name span.name {
  font-size: 128.6%;
  line-height: 1.44;
}
.block_interview .area_info .infoWrap .info_desc {
  letter-spacing: .01em;
  margin: 1.5em 0;
}
.block_interview .area_contents .set {
  padding: 29% 0 0;
}
.block_interview .area_contents .set .image img {
  vertical-align: top;
}
.block_interview .area_contents .set .image {
  margin: 0 0 2.2em;
}
.block_interview .area_contents .set .set_caption .caption_text {
  display: inline-block;
  padding: 1em 1.3em 1em 0;
  background: #555555;
  font-size: 107.14%;
}
.block_interview .area_contents .set .set_caption .caption_text span {
  display: inline-block;
  border: solid 1px #fff;
  padding: .1em 1em;
  margin: 0 1em 0 0;
}
.block_interview .area_contents .set .set_caption dl {
  padding: 1.8em 2.3em 1.3em 0;
  background: #555555;
  align-items: center;
  line-height: 1;
}
.block_interview .area_contents .set .set_caption dt {
  width: 8em;
  border: solid 1px #fff;
  text-align: center;
  padding: .45em 0 .45em;
  margin: 0 0 1.2em;
}
.block_interview .area_contents .set .set_caption dd {
  font-size: 128.6%;
  box-sizing: border-box;
  line-height: 1.44;
}
.block_interview .area_contents .set .set_caption {
  position: relative;
  color: #fff;
  letter-spacing: .1em;
  margin: 0 0 14%;
}
.block_interview .area_contents .set .set_caption::before {
  content: '';
  width: calc(2% + 55px);
  height: 100%;
  background: #555555;
  position: absolute;
  right: 100%;
  top: 0;
}
.block_interview .area_contents .contents_title {
  font-size: 143%;
  line-height: 1.4;
  margin: 0 0 1.2em;
  letter-spacing: 0.05em;
}
.block_interview .area_contents .contents_text {
  font-size: 86%;
  line-height: 2.5;
  letter-spacing: .05em;
}
.block_interview .area_contents .contents_text p + p {
  margin: 2.3em 0 0;
}
.block_interview .area_contents .contentsCenter {
  max-width: 650px;
  margin: 3em auto 0;
}
.block_interview .area_contentsSlide {
  margin: 25% 0 0;
  pointer-events: none;
}
.block_interview .area_contentsSlide img {
  vertical-align: top;
}
.block_interview .area_food {
  background: #8CB2C5;
  padding: 13% 0 8%;
}
.block_interview .area_food.color02 {
  background: #A4C4A1;
}
.block_interview .area_food.color03 {
  background: #D19F8B;
}
.block_interview .area_food .inner--small {
  position: relative;
}
.block_interview .area_food .food_title {
  overflow: hidden;
  line-height: 1;
  height: 0;
  width: 62%;
  padding: 15% 0 0;
  background: url(../img/interview/meshi.webp) no-repeat;
  background-size: contain;
  text-indent: 150%;
}
.block_interview .area_food .foodWrap .food_img {
  width: 88%;
  margin: 8% 0 0;
}
.block_interview .area_food .foodWrap .foodRight {
  padding: 3.5% 0 0;
}
.block_interview .area_food .foodWrap .foodRight .food_text {
  font-size: 86%;
  line-height: 2.5;
  letter-spacing: 0.05em;
}
.block_interview .area_food .foodWrap .food_win {
  width: 48.9%;
  margin: -2% 7% 0 auto;
}
.block_interview .area_food .foodWrap .food_win img {
  vertical-align: top;
}
/**/
.block_interview .area_point {
  background: #555555;
  padding: 9.5% 0 12%;
  margin: 9.5% 0 3%;
}
.block_interview .area_point .point_title {
  text-align: center;
  color: #fff;
}
.block_interview .area_point .point_title .en {
  font-size: 257.14%;
  font-weight: 350;
  line-height: 1.5;
  letter-spacing: 0;
}
.block_interview .area_point .point_title .jp {
  font-size: 93%;
}
.list_interviewPoint {
  color: #fff;
  position: relative;
  margin: 3em 0 0;
}
.list_interviewPoint::before {
  content: '';
  width: 1px;
  height: calc(100% - 2em);
  position: absolute;
  left: 1.15em;
  top: 1em;
  background: #fff;
}
.list_interviewPoint li {
  position: relative;
  padding: 0 0 0 4em;
}
.list_interviewPoint li::before {
  content: '';
  width: .6em;
  height: .6em;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  z-index: 5;
  left: .9em;
  top: .9em;
}
.list_interviewPoint li::after {
  content: '';
  width: 2em;
  height: 2em;
  border-radius: 50%;
  position: absolute;
  z-index: 4;
  left: .2em;
  top: .2em;
  background: rgba(164, 196, 161, 0.5);
}
.list_interviewPoint li + li {
  margin: 2.1em 0 0;
}
.list_interviewPoint .point_desc {
  position: relative;
}
.list_interviewPoint li:last-child .point_desc::before {
  content: '';
  background: #555555;
  width: 1em;
  height: calc(100% + 1.5em);
  position: absolute;
  left: -3em;
  bottom: 0;
}
.list_interviewPoint .point_period {
  font-size: 112.5%;
  font-weight: 700;
  margin: 0 0 0.6em;
}
.list_interviewPoint .point_period span {
  display: inline-block;
  border: solid 1px #fff;
  padding: .1em 1em;
}
.block_interview .area_point .pointWrap {
  text-align: center;
}
.block_interview .area_point .pointWrap .list_interviewPoint {
  display: inline-block;
  text-align: left;
}
/**/
.block_interview .set_job {
  background: rgba(255, 255, 255, .3);
  padding: 14% 5% 0;
  box-sizing: border-box;
  margin: 10% 0 4%;
}
.block_interview .set_job .job_title {
  text-align: center;
  color: #D19F8B;
  line-height: 1;
  margin: 0 0 2.75em;
}
.block_interview .set_job .job_title .en {
  font-size: 257%;
  font-weight: 300;
  letter-spacing: 0;
  margin: 0 0 .3em;
}
.block_interview .set_job .job_title .jp {
  font-weight: 700;
  font-size: 93%;
}
.block_interview .set_job .job_ratio {
  display: flex;
  align-items: center;
}
.block_interview .set_job .job_ratio .ratio_text {
  text-align: center;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  padding: .87em 0;
}
.block_interview .set_job .job_ratio .ratio_text span.text {
  display: inline-block;
  vertical-align: middle;
  font-size: 129%;
}
.block_interview .set_job .job_ratio .ratio_text span.num {
  display: inline-block;
  vertical-align: middle;
  font-size: 213%;
  margin: 0 0 0 .2em;
}
.block_interview .set_job .job_ratio .ratio_text.color01 {
  background: #B76748;
}
.block_interview .set_job .job_ratio .ratio_text.color02 {
  background: #D19F8B;
}
.block_interview .set_job .job_ratio .ratio_text.per9 {
  width: 90%;
}
.block_interview .set_job .job_ratio .ratio_text.per8 {
  width: 80%;
}
.block_interview .set_job .job_ratio .ratio_text.per7 {
  width: 70%;
}
.block_interview .set_job .job_ratio .ratio_text.per6 {
  width: 60%;
}
.block_interview .set_job .job_ratio .ratio_text.per5 {
  width: 50%;
}
.block_interview .set_job .job_ratio .ratio_text.per4 {
  width: 40%;
}
.block_interview .set_job .job_ratio .ratio_text.per3 {
  width: 30%;
}
.block_interview .set_job .job_ratio .ratio_text.per2 {
  width: 20%;
}
.block_interview .set_job .job_ratio .ratio_text.per1 {
  width: 10%;
}
.block_interview .set_job .jobWrap {
  margin: 2.2em 0 0;
}
.block_interview .set_job .jobWrap .job_text {
  font-size: 86%;
  line-height: 2.167;
}
.block_interview .set_job .jobWrap .job_person {
  width: 56%;
  margin: 6% 3% 0 auto;
}
.block_interview .set_job .jobWrap .job_person img {
  vertical-align: top;
}
/*--------------------------------------------------*/
.block_pageBase {
  margin: 50px 0 0;
}
.block_pageBase .pageBase_image img {
  vertical-align: top;
}
.block_pageBase .area_title {
  padding: 9.5% 0;
}
.block_pageBase .base_title {
  line-height: 1;
  margin: 0 0 10%;
}
.block_pageBase .base_title .font--en {
  font-size: 171.43%;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.block_pageBase .base_title .jp {
  font-size: 129%;
  font-weight: 500;
  position: relative;
  padding: .7em 0 0;
  margin: .7em 0 0;
}
.block_pageBase .base_title .jp::before {
  content: '';
  width: 24px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
}
.block_pageBase .base_lead {
  line-height: 1.857;
  letter-spacing: .05em;
}
.block_pageBase .base_lead p + p {
  margin: 2em 0 0;
}
.block_pageBase .area_contents {
  padding: 10% 0;
}
.dl_base {
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
}
.dl_base + .dl_base {
  border-top: none;
}
.dl_base {
  padding: 9% 0 10%;
}
.dl_base > dt {
  font-size: 128.6%;
  line-height: 1.67;
  margin: 0 0 1em;
}
.dl_base > dd {
  line-height: 1.86;
  letter-spacing: 0;
}
.dl_base > dd p + p {
  margin: 1.7em 0 0;
}
.list_recruitFlow {
  margin: 8% 0 0;
}
.list_recruitFlow > li {
  text-align: center;
  background: #A4C4A180;
  font-size: 129%;
  padding: 1.2em 0;
  letter-spacing: .1em;
  position: relative;
}
.list_recruitFlow > li.height {
  line-height: 1.5;
}
.list_recruitFlow > li .nittei {
  font-size: 85%;
}
.list_recruitFlow.color02 > li {
  background: #D19F8B80;
}
.list_recruitFlow > li + li {
  margin: 1.25em 0 0;
}
.list_recruitFlow > li + li::before {
  content: '';
  width: 5px;
  height: 28px;
  background: url(../img/arrow_bottom.webp) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  top: -27px;
  margin: auto;
}
.block_pageBase .btnWrap {
  margin: 26% 0 10%;
}
/* ========================
page-name #message
========================*/
.title_gray {
  line-height: 1;
  margin: 0 0 1.8em;
}
.title_gray .font--en {
  color: #C8C8C8;
  font-size: 171.43%;
  font-weight: 400;
  letter-spacing: .05em;
  margin: 0 0 .3em;
}
.title_gray .jp {
  font-size: 86%;
}
.title_gray .jp.color--white {
  color: #fff;
}
.block_message .area_top {
  margin: 2em 0 6em;
}
.block_message .area_top .title_gray {
  padding: 3em 0 0;
}
.block_message .area_top .lead_title {
  font-size: 129%;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin: 0 0 1.3em;
  line-height: 1.56;
}
.block_message .area_top .lead_text {
  line-height: 2.286;
  margin: 0 0 4em;
  letter-spacing: 0.03em;
}
.block_message .area_top .lead_text p + p {
  margin: 2em 0 0;
}
.block_message .area_ideal {
  background: #666666;
  padding: 5.3em 0 1em;
  overflow: hidden;
}
.block_message .area_ideal .ideal_lead {
  color: #fff;
  line-height: 2;
  margin: 0 0 3em;
  letter-spacing: 0.03em;
}
.block_message .area_ideal .temp_swipeYoko {
  width: calc(100vw - 55px);
  box-sizing: border-box;
  padding: 9% 0 0 6%;
}
.block_message .area_ideal .swipeYokoWrap ul > li.image div {
  width: 85%;
  margin: 0 auto 0;
}
.block_message .area_ideal .swipeYokoWrap ul > li.image::before {
  content: '';
  width: 10px;
  height: 115%;
  background: #fff;
  position: absolute;
  left: 10px;
  top: 0;
}
.block_message .area_people {
  background: #666666;
  padding: 4em 0 5em;
}
.block_message .area_people .people_lead {
  color: #fff;
  line-height: 2.29;
  margin: 0 0 3em;
  letter-spacing: 0.03em;
}
/* ========================
page-name #about
========================*/
.block_about .area_top {
  margin: 5em 0 7em
}
.block_about .area_top .lead_image {
  margin: 3em 0 2.5em;
}
.block_about .area_top .lead_title {
  font-size: 129%;
  font-weight: 700;
  margin: 0 0 1.2em;
  letter-spacing: 0;
}
.block_about .area_top .lead_text {
  line-height: 2.25;
}
.block_about .area_business {
  background: #666666;
  position: relative;
  padding: 0 0 6em;
}
.block_about .area_business .business_image {
  margin: 0 0 20% auto;
  width: 77%;
}
.block_about .area_business .business_image img {
  vertical-align: top;
}
.block_about .area_business .business_lead {
  color: #fff;
  line-height: 2.25;
  margin: 0 0 2em;
}
.list_business > li {
  background: rgba(255, 255, 255, .75);
  border-radius: .7em;
  overflow: hidden;
}
.list_business > li + li {
  margin: 8% 0 0;
}
.list_business .thumbnail {
  overflow: hidden;
}
.list_business .thumbnail img {
  vertical-align: top;
  pointer-events: none;
}
.list_business > li .textBox {
  padding: 1.4em;
}
.list_business > li .textBox dt {
  font-size: 125%;
  font-weight: 700;
}
.list_business > li .textBox dd {
  border-top: dashed 1px #000000;
  padding: .7em 0 0;
  margin: .7em 0 0;
  letter-spacing: 0;
}
.block_about .area_functions {
  background: #999999;
  position: relative;
  padding: 0 0 5.5em;
}
.block_about .area_functions .title_gray .font--en {
  color: #fff;
}
.block_about .area_functions .functions_image {
  margin: 0 0 18% auto;
  width: 77%;
}
.block_about .area_functions .lead_text {
  line-height: 2.2;
  margin: 0 0 2em;
}
/* ========================
page-name #env
========================*/
.block_env .area_institution {
  padding: 0 0 20%;
}
.block_env .area_institution .title_gray {
  padding: 3em 0 0;
}
.block_env .area_institution .institution_lead {
  font-size: 112.5%;
  line-height: 2;
}
.list_institution {
  margin: 5.5em 0 0;
}
.list_institution > li {
  align-items: center;
}
.list_institution > li + li {
  margin: 5em 0 0;
}
.list_institution > li .thumbnail {
  width: 60%;
  margin: 0 auto 12%;
  text-align: center;
}
.list_institution > li .thumbnail img {
  vertical-align: top;
  display: block;
  width: 75%;
  margin: auto;
}
.list_institution > li .institution_sectionTitle {
  font-size: 128.6%;
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
  margin: 0 0 1.2em;
  line-height: 2;
}
.list_institutionDetail {
  line-height: 1.7;
  letter-spacing: .05em;
  margin: 0 0 0 1.5em;
}
.list_institutionDetail > li {
  list-style: disc;
  font-size: 93%;
}
.list_institutionDetail > li + li {
  margin: .7em 0 0;
}
.block_env .area_ticker {
  margin: 5% 0;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.block_env .area_ticker .ticker_image {
  width: 100%;
  height: 100%;
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: bgTicker var(--animation-duration) linear infinite;
}
.block_env .area_ticker .ticker_image.image_env {
  background-image: url(/assets/img/env/ticker.webp);
}
.block_env .area_support {
  background: #666666;
  padding: 6em 0;
}
.block_env .area_support .title_gray .jp {
  color: #fff;
}
.block_env .area_support .support_lead {
  color: #fff;
  line-height: 2.286;
  letter-spacing: .05em;
}
.list_support {
  width: 98%;
  margin: 3.6em auto 0;
}
.list_support > li .support_thumbnail {
  width: 94%;
  margin: auto;
}
.list_support > li .support_sectionTitle {
  font-size: 129%;
  color: #fff;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  line-height: 2;
  margin: 14% 0 8%;
}
.list_support > li .support_text {
  color: #fff;
  margin: 1em 0 0;
  letter-spacing: .04em;
  line-height: 1.72;
}
.list_support > li + li {
  margin: 3.6em 0 0;
}
.parts_ticker {
  margin: 20% 0 0;
  position: relative;
  overflow: hidden;
  height: auto;
}
.parts_ticker .tickerImage {
  display: flex;
  width: 400%;
  -webkit-animation: bgTickerSP 20s linear infinite;
  animation: bgTickerSP 20s linear infinite;
}
.parts_ticker .tickerImage img {
  width: 100%;
  height: auto;
  flex-shrink: 0;
  vertical-align: top;
}
.block_project .area_ticker .parts_ticker {
  margin: 0;
}
.block_project .area_ticker .parts_ticker .tickerImage {
  width: 600%;
  -webkit-animation: bgTickerSPBIG 60s linear infinite;
  animation: bgTickerSPBIG 60s linear infinite;
}
.block_project .area_ticker .parts_ticker .tickerImage img {
  width: 150%;
}
/* ========================
page-name #job
========================*/
.dl_job {
  margin: 3% 0 0;
  line-height: 1.65;
}
.dl_job dt {
  background: #000;
  color: #fff;
  font-size: 143%;
  text-align: center;
  width: 5.7em;
  padding: .2em 0;
  margin: 0 0 .9em;
}
.dl_job dt.color--white {
  border: solid 2px #000;
  background: none;
  color: #000;
}
.dl_job dd {
  font-size: 114.3%;
  line-height: 1.9;
}
.block_job .area_lead {
  margin: 0 0 6em;
}
.block_job .area_lead .job_title {
  font-size: 125%;
  font-weight: 500;
  padding: 3em 0 0;
  margin: 0 0 1.3em;
  line-height: 1.7;
}
.block_job .area_lead .job_text {
  color: #666666;
  line-height: 2.29;
  margin: 0 0 3.6em;
}
.job_dlWrap {
  border-radius: .5em;
  background: #CCCCCC;
}
.dl_jobDetail {
  padding: 1.6em 1.4em;
  margin: 0 0 4em;
}
.dl_jobDetail dt {
  font-weight: 700;
}
.dl_jobDetail dd {
  box-sizing: border-box;
  border-top: dotted 1px #000000;
  line-height: 1.625;
  padding: .9em 0 0;
  margin: .9em 0 0;
}
.dl_jobDetail dd ul {
  margin: 0 0 0 1.5em;
}
.dl_jobDetail dd ul li {
  list-style: disc;
  font-size: 93%;
  line-height: 2;
}
.dl_jobDetail dd ul li + li {
  margin: .25em 0 0;
}
.block_job .area_lead .job_img img {
  vertical-align: top;
}
.block_job .area_jobDesc {
  background: #666666;
  padding: 0 0 6em;
}
.block_job .area_jobDesc .desc_image {
  margin: 0 0 18% auto;
  width: 77%;
}
.block_job .area_jobDesc .desc_image img {
  vertical-align: top;
}
.block_job .area_jobDesc .desc_lead {
  color: #fff;
  font-size: 86%;
  line-height: 2;
  margin: 0 0 3em;
}
.list_jobDesc {
  color: #fff;
}
.list_jobDesc > li {
  border-bottom: solid 1px #fff;
  line-height: 1.5;
  font-size: 93%;
  padding: .89em 0;
}
.list_jobDesc > li ul {
  margin: .5em 0 0 1.5em;
}
.list_jobDesc > li ul li {
  font-size: 88.89%;
  list-style: disc;
}
.block_job .area_jobDesc .desc_att {
  color: #fff;
  text-align: right;
  margin: 1em 0 0;
  font-size: 75%;
}
.block_job .area_jobDesc .desc_imageSet {
  margin: 15% 0 0;
}
.block_job .area_jobDesc .desc_imageSet .swiper-wrapper {
  transition-timing-function: linear !important;
  pointer-events: none;
}
.block_job .area_jobDesc .desc_imageSet .swiper-slide {
  width: 62.5vw !important;
  padding: 45% 0 0;
}
.block_job .area_jobDesc .desc_imageSet img {
  vertical-align: top;
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.block_job .area_jobVoice {
  background: #999999;
  padding: 0 0 6em;
}
.block_job .area_jobVoice .voice_image {
  margin: 0 0 6% auto;
  width: 77%;
}
.block_job .area_jobVoice .desc_image img {
  vertical-align: top;
}
.block_job .area_jobVoice .title_gray .font--en {
  color: #fff;
}
.block_job .area_jobVoice .voice_lead {
  line-height: 2;
  margin: 0 0 4em;
}
.dl_voiceSet {
  display: flex;
  justify-content: space-between;
}
.dl_voiceSet + .dl_voiceSet {
  margin: 2em 0 0;
}
.dl_voiceSet > dt {
  width: 72px;
}
.dl_voiceSet > dt img {
  vertical-align: top;
}
.dl_voiceSet > dd {
  width: calc(100% - 100px);
  background: #fff;
  position: relative;
  border-radius: .5em;
  box-sizing: border-box;
  padding: 1.1em 1.2em;
}
.dl_voiceSet > dd::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-right: 20px solid #ffffff;
  border-left: 0;
  position: absolute;
  right: 100%;
  top: 32px;
}
.dl_voiceSet:nth-of-type(even) {
  flex-direction: row-reverse;
}
.dl_voiceSet:nth-of-type(even) > dd::before {
  right: auto;
  left: 100%;
  border-right: 0;
  border-left: 20px solid #ffffff;
}
.block_job .area_jobVoice .voice_end {
  margin: 3em 0 0;
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
  padding: 1.2em 0;
}
.block_job .area_path {
  padding: 6em 0 3em;
  background: #CCCCCC;
}
.block_job .area_path .title_gray .font--en {
  color: #fff;
}
.block_job .area_path .path_lead {
  margin: 0 0 3em;
  font-size: 86%;
  line-height: 2;
}
.block_job .area_path .path_title {
  font-size: 129%;
  margin: 0 0 2em;
  letter-spacing: .05em;
  line-height: 1.5556;
}
.block_job .area_pathEX {
  padding: 3em 0 6em;
  background: #CCCCCC;
}
.block_job .area_pathEX .title_gray .font--en {
  color: #fff;
}
.block_job .area_pathEX .path_lead {
  margin: 0 0 3em;
  font-size: 86%;
  line-height: 2;
}
.block_job .area_pathEX .pathEXWrap {
  margin: 3.7em 0 0;
}
.block_job .area_pathEX .case_set {
  background: #666666;
  border-radius: .8em;
  box-sizing: border-box;
  padding: 1em 1.6em 0.2em;
  color: #fff;
}
.block_job .area_pathEX .case_set + .case_set {
  margin: 3em 0 0;
}
.block_job .area_pathEX .case_set .font--en {
  color: #CCCCCC;
  font-size: 143%;
  font-weight: 400;
  padding: 2.3em 0 2.3em 1.4em;
  line-height: 1;
  background-position: right 11% center;
  background-repeat: no-repeat;
  background-size: 10% auto;
  letter-spacing: 0;
}
.block_job .area_pathEX .case_set .font--en.illust01 {
  background-image: url(/assets/img/job/illust01.webp);
}
.block_job .area_pathEX .case_set .set_lead {
  font-size: 114.3%;
  letter-spacing: 0;
}
.list_pathCase {
  border-top: dotted 1px #fff;
  margin: 1.5em 0 0;
  padding: 2.2em 0 0;
  position: relative;
}
.list_pathCase > li {
  display: flex;
  position: relative;
  padding: 0 0 2em;
}
.list_pathCase > li + li {
  margin: .25em 0 0;
}
.list_pathCase > li:not(:last-child)::before {
  content: '';
  width: 1px;
  height: calc(100% - 22vw);
  position: absolute;
  left: 9vw;
  top: 22vw;
  background: #fff;
}
.list_pathCase > li .case_time {
  width: 18vw;
  height: 18vw;
  box-sizing: border-box;
  border: solid 1px #fff;
  text-align: center;
  border-radius: 50%;
  display: flex;
  align-items: center;
  font-size: 114.3%;
}
.list_pathCase > li .case_time span {
  display: block;
  width: 100%;
}
.list_pathCase > li .textBox {
  width: calc(100% - 18vw);
  box-sizing: border-box;
  padding: 0 0 0 1em;
}
.list_pathCase > li .textBox .case_title {
  font-size: 114.3%;
  font-weight: 700;
  padding: 1.2em 0 0;
  margin: 0 0 .9em;
  letter-spacing: .03em;
  line-height: 1.625;
}
.list_pathCase > li .textBox .case_text {
  line-height: 2;
}
/*----------*/
.block404 {
  background: #000;
}
.block404 .area404 {
  padding: 52% 0 20%;
}
.block404 .title404 {
  color: #fff;
  line-height: 1;
}
.block404 .title404 .font--en {
  font-size: 171.2%;
  font-weight: 500;
  letter-spacing: 0;
  margin: 0 0 .5em;
}
.block404 .title404 .jp {
  font-size: 86%;
  font-weight: 600;
}
.block404 .lead404 {
  font-size: 86%;
  color: #fff;
  padding: 14% 0 0;
  margin: 16% 0 10%;
  border-top: solid 1px #fff;
  line-height: 2;
  letter-spacing: .05em;
}