@charset "utf-8";
.sp-only {
  display: none !important;
}
.inner--front {
  padding: 0 0 0 clamp(300px, 20%, 335px);
  max-width: 1030px;
  margin: auto;
}
.inner--page {
  padding: 0 2% 0 300px;
  max-width: 950px;
  margin: auto;
}
.inner--interview {
  padding: 0 0 0 clamp(300px, 26%, 347px);
  max-width: 1020px;
  margin: auto;
}
.inner--interview.type--right {
  text-align: right;
}
.inner--small {
  padding: 0 14px 0 300px;
  max-width: 887px;
  margin: auto;
  position: relative;
}
.inner--base {
  padding: 0 35px 0 300px;
  max-width: 864px;
  margin: auto;
}
body.nav--open, body.modal--open {
  overflow: hidden;
}
@media all and (max-width:1024px) {
  .inner--front {
    padding: 0 0 0 180px;
  }
  .inner--page {
    padding: 0 2% 0 230px;
  }
}
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 3.5em;
  line-height: 1;
  letter-spacing: 0.02em;
}
.title_base.color--white {
  color: #fff;
}
.title_base .en {
  font-size: 250%;
  font-weight: 300;
  margin: 0 0 .25em;
}
.title_base.color--gray .en {
  color: #C8C8C8;
}
.title_base .jp {
  font-weight: 600;
}
.title_baseEn {
  font-size: 343.75%;
  font-family: "neue-haas-unica", sans-serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: .05em;
}
.title_talk {
  line-height: 1;
  margin: -2em 0 2em;
  padding: 2em 0 0;
}
.title_talk .en {
  font-size: 75%;
  font-weight: 400;
  letter-spacing: .025em;
  margin: 0 0 2em;
}
.title_talk .jp {
  font-size: 187.5%;
  font-weight: 400;
  letter-spacing: .05em;
  line-height: 1.3;
}
.title_center {
  text-align: center;
  line-height: 1;
}
.title_center .en {
  font-size: 250%;
  font-weight: 300;
  letter-spacing: .025em;
  margin: 0 0 .3em;
}
.title_center .jp {
  font-weight: 700;
}
/**/
.btn_base {
  width: 296px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 1) 5%, rgba(232, 56, 57, 1) 23%, rgba(65, 0, 0, 1) 41%, rgba(214, 51, 124, 1) 59%, rgba(255, 90, 211, 1) 77%, 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 1em;
  transition: all .3s;
}
.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:hover {
  box-shadow: 0 0 5px 2px #aaa;
}
.btn_base a:hover {
  background: #fff;
  color: #000;
}
.btnWrap {
  display: flex;
  justify-content: center;
  gap: 0 5.5%;
}
/**/
.btn_link {
  width: 525px;
  background: #000000;
  border-radius: 4px;
}
.btn_link a {
  color: #fff;
  display: block;
  font-size: 87.5%;
  font-weight: 500;
  padding: 1em .8em 1.487em;
  letter-spacing: .05em;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}
.btn_link a::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url("../img/link_arrow04.webp") no-repeat left top 80%;
  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 a:hover::after {
  animation: btn_link .6s ease 1 forwards;
}
.btn_link span {
  position: relative;
  z-index: 5;
}
.btn_link.link--small {
  width: 300px;
  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_linkLong {
  overflow: hidden;
}
.btn_linkLong a {
  display: block;
  font-size: 112.5%;
  position: relative;
  background: url(../img/link_arrow03.webp) no-repeat left bottom;
  background-size: 100% auto;
  padding: 0 0 1.3em .2em;
}
.btn_linkLong a::after {
  content: '';
  width: 0;
  height: 100%;
  background: #000;
  position: absolute;
  z-index: 3;
  left: 0;
  top: 0;
}
.btn_linkLong a:hover::after {
  animation: btn_link .6s ease 1 forwards;
}
.btn_linkLong span {
  position: relative;
  z-index: 5;
}
/**/
.btn_text a {
  display: inline-block;
  padding: 0 1.5em 0 0;
  position: relative;
  color: #fff;
  font-size: 87.5%;
  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_text a:hover::before {
  width: 100%;
  left: 0;
  right: auto;
}
/**/
.btn_entry {
  width: 174px;
  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;
}
.btn_entry:hover > span {
  background: #fff;
  color: #000;
}
.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;
}
.h_navBtn {
  position: fixed;
  z-index: 1010;
  left: 48px;
  top: 210px;
  width: 50px;
  height: 50px;
  transform: translateX(-200px);
  transition: transform .6s;
  cursor: pointer;
}
.h_navBtn::after {
  content: 'CLOSE';
  font-size: 8px;
  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 .7em;
}
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;
}
body.navEnd .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: 1001;
  left: 0;
  top: 0;
  width: 285px;
  height: 100dvh;
  min-height: 520px;
  transition: opacity .2s;
}
header .hWrap::before {
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .35);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
  transition: all .2s;
}
body.navEnd .hWrap {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
header.type02 .hWrap::before {
  background: rgba(0, 0, 0, 0);
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
}
body.header--white .hWrap::before {
  background: rgba(0, 0, 0, 0);
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
}
body.header--black .hWrap::before {
  background: rgba(0, 0, 0, 0);
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
}
body.header--black header.type01 .hWrap::before {
  background: rgba(255, 255, 255, 0.35);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}
body.nav--open header .hWrap {
  transform: translateX(-500px);
}
header .h_inner {
  position: relative;
  z-index: 10;
  left: 0;
  top: 0;
  margin: 40px 0 40px 48px;
}
header .h_logo {
  width: 195px;
  margin: 0 0 65px;
}
@media all and (max-height:650px) {
  header .h_inner {
    margin: 20px 0 20px 48px;
  }
  header .h_logo {
    margin: 0 0 20px;
  }
  .h_navBtn {
    top: 125px;
  }
}
header .h_logo a {
  display: block;
  overflow: hidden;
  text-indent: 150%;
  white-space: nowrap;
  height: 44px;
  background-image: url(../img/logo01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  transition: all .2s;
}
header.type01 .h_logo a, body.header--black .h_logo a {
  background-image: url(../img/logo02.svg);
}
header .h_lead {
  color: #fff;
  line-height: 1.25;
  letter-spacing: 0;
  transition: all .2s;
}
header.type01 .h_lead, body.header--black .h_lead {
  color: #000;
}
header nav.hNav {
  transition: all .6s;
  position: relative;
  z-index: 100;
}
body.nav--none header nav.hNav {
  transform: translateX(-500px);
}
header .list_hNav {
  position: relative;
  z-index: 5;
  margin: 0 0 0 48px;
  padding: 30px 0 0;
}
header .list_hNav::before {
  content: 'CONTENTS';
  position: absolute;
  left: 0;
  top: 0;
  color: #fff;
  opacity: .5;
  font-size: 62.5%;
}
header .list_hNav > li {
  line-height: 1;
  position: relative;
}
.list_hNav > li > a, .list_hNav > li > span {
  color: #fff;
  display: inline-block;
  font-size: 81.25%;
  line-height: 2.154;
  letter-spacing: .05em;
  position: relative;
}
.list_hNav > li > a::before {
  content: '';
  width: 0;
  height: 1px;
  background: #E50012;
  position: absolute;
  right: 0;
  bottom: 3px;
  transition: all .4s;
}
.list_hNav > li > a:hover::before {
  right: auto;
  left: 0;
  width: 100%;
}
.list_hNav > li > span {
  display: block;
  cursor: pointer;
}
.list_hNav > li > span::before, .list_hNav > li > span::after {
  content: '';
  width: 13px;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 6em;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all .4s;
}
.list_hNav > li:hover > span::before, .list_hNav > li:hover > span::after, .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;
  z-index: 10;
  left: calc(100% - 4em);
  top: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all .4s;
}
.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;
  font-size: 81.25%;
  padding: .5em .9em;
  transition: all .2s;
}
.list_hNavSub > li a:hover {
  color: #E50012;
}
.list_hNavSub > li + li {
  margin: .5em 0 0;
}
/**/
header .entryWrap {
  position: fixed;
  z-index: 1010;
  bottom: 50px;
  left: 48px;
}
@media all and (max-height:650px) {
  header .entryWrap {
    bottom: 25px;
  }
}
body.navEnd header .entryWrap {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.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;
}
.list_entryDetails > li a:hover {
  background-color: #fff;
  color: #000;
}
.entryWrap .list_entryDetails {
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  transform: translateY(10%);
  transition: all .3s;
  position: absolute;
  left: 0;
  bottom: 35px;
}
.entryWrap.entry--on .list_entryDetails {
  pointer-events: auto;
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  height: auto;
}
body.nav--open .entryWrap {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
@media all and (max-width:1024px) {
  header .h_inner {
    margin: 20px 0 20px 24px;
  }
  header .h_logo {
    width: 130px;
    margin: 0 0 44px;
  }
  header .h_lead {
    font-size: 12px;
  }
  header .hWrap::before {
    background: none !important;
    -webkit-backdrop-filter: blur(0px) !important;
    backdrop-filter: blur(0px) !important;
  }
  header nav.hNav {
    transform: translateX(-500px);
  }
  header .list_hNav {
    margin: 0 0 0 24px;
  }
  .h_navBtn {
    left: 24px;
    transform: translateX(0);
  }
  header .entryWrap {
    left: 24px;
  }
  .btn_entry {
    width: 116px;
  }
}
/* == footer ============================================== */
footer {
  background: #000000;
  padding: 0 0 3%;
  position: relative;
  z-index: 1000;
  box-sizing: border-box;
  min-height: 600px;
}
footer .footerFlex {
  padding: 135px 0 0;
}
footer .f_logos {
  position: absolute;
  left: 48px;
  top: 40px;
}
footer .f_logos .f_logo {
  width: 195px;
  margin: 0 0 65px;
}
@media all and (max-height:600px) {
  footer .f_logos {
    top: 20px;
  }
  footer .f_logos .f_logo {
    margin: 0 0 20px;
  }
}
footer .f_logos .f_logo a {
  display: block;
  overflow: hidden;
  text-indent: 150%;
  white-space: nowrap;
  height: 44px;
  background: url(../img/logo01.svg) no-repeat;
  background-size: contain;
  transition: all .3s;
}
footer .f_logos .f_logo a:hover {
  opacity: .7;
}
footer .f_logos .f_lead {
  color: #fff;
  line-height: 1.25;
  letter-spacing: 0;
}
.list_fNav {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1.5em;
}
.list_fNav > li {
  width: 48.5%;
  margin: 0 0 1.4em;
}
.list_fNav > li dl dt {
  color: #FFFFFF;
  opacity: .5;
  font-size: 62.5%;
  font-family: "neue-haas-unica", sans-serif;
  letter-spacing: 0.1em;
}
.list_fNav > li .nav_name a {
  display: inline-block;
  color: #fff;
  font-size: 112.5%;
  line-height: 1.6667;
  position: relative;
  padding: .2em 0;
}
.list_fNav > li .nav_name a::before {
  content: '';
  width: 0;
  height: 2px;
  position: absolute;
  right: 0;
  bottom: 0;
  background: #E50012;
  transition: all .4s;
}
.list_fNav > li .nav_name a:hover::before {
  width: 100%;
  right: auto;
  left: 0;
}
.list_fNav > li .nav_name + .nav_name {
  margin: .1em 0 0;
}
.list_entryLinks {
  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;
  display: flex;
  width: 92%;
  max-width: 880px;
  padding: 2px;
  border-radius: 50px;
  position: relative;
  margin: 0 0 2em;
}
.list_entryLinks::before {
  content: '';
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  background: #000;
  position: absolute;
  left: 2px;
  top: 2px;
  border-radius: 50px;
}
.list_entryLinks > li {
  position: relative;
  z-index: 5;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  transition: all .4s;
}
.list_entryLinks > li + li::before {
  content: '';
  width: 1px;
  height: calc(100% - 1.4em);
  background: #474747;
  position: absolute;
  left: 0;
  top: .7em;
}
.list_entryLinks > li a {
  display: block;
  font-size: 125%;
  color: #fff;
  line-height: 1.4;
  padding: .5em 2.5em .5em 0;
  background: url("../img/link_arrow01.webp") no-repeat right 15% center;
  background-size: 1.1em auto;
  transition: all .4s;
}
.list_entryLinks > li:hover {
  background: #fff;
}
.list_entryLinks > li:hover a {
  color: #000;
}
.list_sns {
  display: flex;
  justify-content: flex-end;
  margin: 0 8% 0 0;
}
.list_sns > li + li {
  margin: 0 0 0 4%;
}
.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 a:hover {
  opacity: .7;
}
.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 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 93%;
  margin: 4% auto 0;
}
.f_bottom .list_fLinks {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  line-height: 1;
}
.f_bottom .list_fLinks > li {
  line-height: 1;
}
.f_bottom .list_fLinks > li a {
  display: block;
  color: #fff;
  font-size: 75%;
  transition: all .4s;
}
.f_bottom .list_fLinks > li a:hover {
  opacity: .7;
}
.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: 75%;
  color: #fff;
  margin: 0 2.5em 0 0;
}
/**/
body.nav--open footer {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100dvh;
}
body.nav--open .footerFlex {
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0;
}
body.nav--open footer .f_bottom {
  position: absolute;
  bottom: 3%;
  left: 0;
  right: 0;
  margin: auto;
}
@media all and (max-width:1024px) {
  footer .footerFlex {
    padding: 90px 0 0;
  }
  footer .inner--front {
    padding: 120px 24px 0;
    font-size: 85%;
    margin: auto;
  }
  footer .f_logos {
    left: 24px;
  }
  body.nav--open footer .f_logos {
    top: 20px;
  }
  footer .f_logos .f_logo {
    width: 130px;
    margin: 0 0 44px;
  }
  footer .f_logos .f_lead {
    font-size: 12px;
  }
  .list_entryLinks {
    width: 100%;
  }
  .list_sns {
    margin: 0;
  }
  .f_bottom .copyright {
    margin: 0;
  }
}
@media all and (max-width:1024px) and (max-height: 860px) {
  footer .inner--front {
    padding: 0 24px 0 180px;
  }
}
/* == frontpage ==============================================*/
.slideFixed {
  position: fixed;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100dvh;
  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: 100dvh;
}
.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: 100%;
  height: auto;
  stroke-dasharray: 5000;
  stroke-dashoffset: 0;
  position: absolute;
  left: 0;
  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: 55.64%;
  top: 3.8%;
  right: 6.6%;
}
.block_frontMv .mv_title img {
  vertical-align: top;
}
.block_frontMv .mv_newsSummary {
  position: absolute;
  width: 60.77%;
  z-index: 10;
  right: 0;
  bottom: 3.8%;
  padding: .95em 10% .95em 0;
  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: 0;
  bottom: 0;
  margin: auto;
  line-height: 1;
}
.block_frontMv .mv_newsSummary .swiper-button-prev {
  right: -5%;
  left: auto;
  transition: all .2s;
}
.block_frontMv .mv_newsSummary .swiper-button-next {
  right: -8%;
  transition: all .2s;
}
.block_frontMv .mv_newsSummary .swiper-button-prev:hover, .block_frontMv .mv_newsSummary .swiper-button-next:hover {
  opacity: .7;
}
.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 {
  display: flex;
  align-items: center;
  color: #FFFFFF;
  line-height: 1.3;
  min-height: 2.6em;
}
.block_frontMv .mv_newsSummary .newsText span.time {
  font-family: shippori-antique, sans-serif;
  opacity: .5;
  font-size: 62.5%;
  text-align: center;
  width: 15%;
}
.block_frontMv .mv_newsSummary .newsText span.text {
  font-size: 87.5%;
  margin: 0 0 0 .8%;
  width: 84.2%;
}
.block_frontMv .mv_newsSummary .newsText a {
  transition: all .2s;
  display: inline-block;
}
.block_frontMv .mv_newsSummary .newsText a:hover {
  opacity: .7;
}
@media all and (max-width:1366px) {
  .block_frontMv .mv_newsSummary {
    font-size: 1.171vw;
  }
}
/*----------*/
.block_frontMessage {
  padding: 228px 0 122px;
  background: #fff;
}
.block_frontMessage .inner--front {
  max-width: 750px;
}
.block_frontMessage .message_text p {
  font-size: 156.25%;
  line-height: 2;
  letter-spacing: .15em;
}
.block_frontMessage .message_text p + p {
  margin: 2em 0 0;
}
.block_frontMessage .btn_link {
  margin: 90px 0 0 auto;
}
@media all and (max-width:1024px) {
  .block_frontMessage {
    padding: 18% 5% 10% 0;
  }
  .block_frontMessage .message_text p {
    font-size: 2.5vw;
  }
}
/*----------*/
.block_frontProject {
  background: #F0A064;
  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;
}
.block_frontProject .sticky_wrap .project_nav {
  position: absolute;
  z-index: 10;
  left: 335px;
  bottom: 60px;
  width: calc(100vw - 335px);
}
.block_frontProject .sticky_wrap .project_nav .project_progress {
  position: absolute;
  left: 0;
  bottom: -1em;
  width: calc(100vw - 335px);
  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: 56.25%;
  line-height: 1;
}
.list_projectAnchor > li span {
  display: inline-block;
  margin: 0 2em 0 0;
}
#anchor_project01 {
  width: 100vw !important;
}
.block_frontProject .scroll_contents .titleWrap {
  display: flex;
  align-items: center;
  height: 100%;
}
.block_frontProject .scroll_contents .titleWrap .projectCenter {
  width: 100%;
  text-align: center;
}
.block_frontProject .scroll_contents .project_title {
  font-size: 593.75%;
  line-height: 1;
  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 14em 1.2em 1em;
  font-size: 112.5%;
  line-height: 1.333;
}
.block_frontProject .scroll_contents .projectWrap {
  display: flex;
  align-items: center;
  height: 100%;
  position: relative;
  width: 100%;
  max-width: 1250px;
  margin: auto;
  box-sizing: border-box;
}
/**/
.block_frontProject .scroll_contents .projectWrap .project_tateText {
  writing-mode: vertical-rl;
  line-height: 1;
  color: #fff;
  margin: 0 0 0 23%;
  position: relative;
  z-index: 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: 125%;
}
.block_frontProject .scroll_contents .projectWrap .project_number span.en {
  padding: .8em .4em .8em .7em;
}
.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_desc {
  font-size: 150%;
}
.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;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_number {
  font-size: 68.75%;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_name {
  font-size: 750%;
  font-weight: 300;
  line-height: 1;
}
.block_frontProject .scroll_contents .projectWrap .projectText .project_desc {
  font-size: 125%;
  line-height: 1.5;
}
.block_frontProject .scroll_contents .projectWrap .project_image {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 750px;
  height: 500px;
}
.block_frontProject .scroll_contents .projectWrap .project_image a {
  display: block;
  height: 100%;
  overflow: hidden;
  transition: all .4s ease-in-out 0s;
}
.block_frontProject .scroll_contents .projectWrap .project_image a:hover {
  border-radius: 30px;
}
.block_frontProject .scroll_contents .projectWrap .project_image img {
  vertical-align: top;
  transition: all .4s ease-in-out 0s;
}
.block_frontProject .scroll_contents .projectWrap .project_image a:hover img {
  transform: scale(1.1);
  border-radius: 20px;
}
.block_frontProject .scroll_contents .projectWrap .project_image video {
  width: 100%;
}
.block_frontProject .scroll_contents .projectWrap .project_leadTitle {
  position: absolute;
  z-index: 5;
  left: 35%;
  top: 60%;
  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: 200%;
  font-weight: 400;
  padding: .3em .5em .5em;
}
@media all and (max-width:1200px) {
  .block_frontProject .sticky_wrap .project_nav {
    left: 180px;
    width: calc(100vw - 180px);
  }
  .block_frontProject .sticky_wrap .project_nav .project_progress {
    width: calc(100vw - 180px);
  }
  .block_frontProject .scroll_contents .project_title {
    font-size: 450%;
  }
  .block_frontProject .scroll_contents .projectWrap .projectText .project_name {
    font-size: 600%;
  }
  .block_frontProject .scroll_contents .projectWrap {
    max-width: 937.5px;
  }
  .block_frontProject .scroll_contents .projectWrap .project_image {
    width: 562.5px;
    height: 375px;
  }
}
/*----------*/
.block_frontContents {
  background: rgba(40, 40, 40, .85);
  padding: 88px 0;
}
.block_frontContents .stickyWrap {
  position: relative;
  top: 0;
  height: 130em;
}
.block_frontContents .title_baseEn {
  letter-spacing: .03em;
  margin: 0 0 32px;
}
.block_frontContents .title_baseEn {
  color: #fff;
}
.block_frontContents .area_about {
  color: #fff;
  background: #333333;
}
.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 {
  max-width: 1030px;
  width: 100%;
  padding: min(1%, 10px) 0 min(1%, 10px) 47%;
  box-sizing: border-box;
  overflow: hidden;
  position: sticky;
  left: 0;
  top: 0;
  min-height: min(22vw, 300px);
}
.block_frontContents .area_interviews.contentsSet, .block_frontContents .area_talk.contentsSet {
  min-height: min(35vw, 450px);
}
.block_frontContents .contentsSet .content_thumbnail, .block_frontContents .contentsSet .swiper.interviewsThumbnail {
  width: 42.156863%;
  overflow: hidden;
  border-radius: 1.3em;
  position: absolute;
  left: min(1%, 10px);
  top: min(3%, 10px);
}
.block_frontContents .contentsSet .set_title {
  font-size: 187.5%;
  font-weight: 400;
  letter-spacing: .01em;
  font-family: "neue-haas-unica", sans-serif;
  margin: .25em 0 .5em;
}
.block_frontContents .contentsSet img {
  vertical-align: top;
}
.block_frontContents .content_thumbnail a {
  display: block;
  overflow: hidden;
}
.block_frontContents .content_thumbnail a img {
  transition: all .4s;
}
.block_frontContents .content_thumbnail a:hover img {
  transform: scale(1.1);
}
.block_frontContents .contents_lead {
  font-size: 75%;
  line-height: 2;
  padding: 3% 15% 0 0;
}
.block_frontContents .interviewsThumbnail {
  width: 42.156863%;
  margin: 0 !important;
  position: relative;
}
.block_frontContents .interviewsThumbnail .thumbnail {
  overflow: hidden;
  border-radius: 1.3em;
  position: relative;
}
.block_frontContents .interviewsThumbnail .thumbnail a {
  display: block;
  position: relative;
}
.block_frontContents .interviewsThumbnail .thumbnail::before {
  content: '';
  width: 9.303%;
  height: 9.303%;
  position: absolute;
  right: 3%;
  bottom: 3%;
  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 .interviewsThumbnail a:hover img {
  transform: scale(1.1);
}
.block_frontContents .flexRight .interviewsText {
  margin: 3% 0 0;
}
.block_frontContents .interviews_tag {
  margin: 0 0 1.8%;
}
.block_frontContents .interviews_tag span {
  display: inline-block;
  line-height: 1.5;
  letter-spacing: 0;
  border-radius: 4px;
  padding: .1em .5em;
  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-size: 125%;
  font-weight: 700;
  line-height: 1.8;
  margin: 0 0 2%;
  min-height: 3.6em;
}
.block_frontContents .interviews_name span.en {
  font-size: 68.75%;
  letter-spacing: 0.01em;
  margin: 0 0 0 1em;
}
.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 a {
  color: #000;
}
.block_frontContents .area_talk .btn_text a::before {
  background: #000;
}
.block_frontContents .overflow {
  overflow: hidden;
}
.block_frontContents .overflow.width3 {
  width: calc(100% / 1.6);
}
.block_frontContents .interviewsTicker {
  overflow: visible;
  margin: 5% 0 0 !important;
}
.block_frontContents .overflow.width7 .interviewsTicker {
  width: calc(100% / 8);
}
.block_frontContents .overflow.width3 .interviewsTicker {
  width: calc(100% / 4.4);
}
.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%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 5;
  pointer-events: none;
  border-image-slice: 1;
  box-sizing: border-box;
  opacity: 0;
  transition: all .4s;
  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%);
}
.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);
}
@media all and (max-width:1366px) {
  .block_frontContents .stickyWrap {
    font-size: 1.171vw;
  }
}
/*----------*/
.block_frontVideo {
  padding: 22% 0 0;
}
.block_frontVideo .area_videoSlide {
  background: #666666;
  padding: 25px 0 96px;
  overflow: hidden;
}
.block_frontVideo .swiper-slide {
  cursor: pointer;
}
.block_frontVideo .video_title {
  font-size: 187.5%;
  color: #fff;
  font-weight: 400;
  line-height: 1.3;
  margin: 0 0 34px;
}
.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 .swiper-slide:hover .video_thumbnail img {
  transform: scale(1.1);
}
.block_frontVideo .video_text {
  font-size: 87.5%;
  color: #fff;
  line-height: 2;
  text-align: left;
}
.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: -3.5em;
  margin: auto;
  line-height: 1;
}
.block_frontVideo .video_slider .swiper-button-prev {
  right: 5%;
  left: auto;
  transition: all .2s;
}
.block_frontVideo .video_slider .swiper-button-next {
  right: 3%;
  transition: all .2s;
}
.block_frontVideo .video_slider .swiper-button-prev:hover, .block_frontVideo .video_slider .swiper-button-next:hover {
  opacity: .7;
}
.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: 40px;
  top: 60px;
  transform-origin: center;
}
.videoFrame::before {
  transform: rotateZ(45deg);
}
.videoFrame::after {
  transform: rotateZ(-45deg);
}
.videoFrame .video_contentsWrap {
  max-width: 800px;
  width: 94%;
  height: 0;
  padding: min(56.25%, 450px) 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: 11.2% 0;
  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: contain;
  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: 39%;
  margin: auto;
  position: relative;
  z-index: 5;
}
.parts_kodou .kodou_text img {
  vertical-align: top;
}
.parts_underNav {
  background: #333333;
}
.list_underNav {
  display: flex;
  flex-direction: row-reverse;
  padding: 78px 0;
}
.list_underNav > li {
  width: 42.11%;
}
.list_underNav > li + li {
  margin: 0 10.5% 0 0;
}
.list_underNav.reverse {
  flex-direction: row;
}
.list_underNav.reverse > li + li {
  margin: 0 0 0 10.5%;
}
.list_underNav .underNav_title {
  color: #CCCCCC;
  font-size: 187.5%;
  font-weight: 300;
  letter-spacing: .02em;
  line-height: 1;
  margin: 0 0 .75em;
}
.list_underNav .underNav_thumbnail {
  margin: 0 0 .85em;
  overflow: hidden;
}
.list_underNav .underNav_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_underNav .underNav_name {
  font-size: 112.5%;
  color: #fff;
  letter-spacing: .1em;
}
.list_underNav .underNav_name small {
  display: block;
  font-size: 80%;
}
.list_underNav > li a {
  display: block;
}
.list_underNav > li a:hover .underNav_thumbnail img {
  transform: scale(1.05);
}
@media all and (max-width:900px) {
  .list_underNav {
    display: block;
  }
  .list_underNav > li {
    width: 100%;
    max-width: 400px;
    margin: auto;
  }
  .list_underNav > li + li {
    margin: 8% auto 0;
  }
  .list_underNav .pc-only {
    display: none;
  }
  .list_underNav .sp-only {
    display: block !important;
  }
}
/* == underpage ============================================== */
.sideAnchor {
  position: fixed;
  z-index: 1001;
  left: 50px;
  top: 270px;
  color: #fff;
  transition: all .3s;
}
body.header--black .sideAnchor {
  color: #000;
}
body.nav--open .sideAnchor {
  display: none;
}
@media all and (max-width:1024px) {
  .sideAnchor {
    left: 26px;
  }
}
@media all and (max-height:650px) {
  .sideAnchor {
    top: 185px;
  }
}
.sideAnchor .anchor_title {
  font-size: 62.5%;
  opacity: .5;
}
body.navEnd .sideAnchor {
  opacity: 0;
  pointer-events: none;
}
.list_sideAnchor {
  font-size: 81.25%;
}
.list_sideAnchor li + li {
  margin: .8em 0 0;
}
.list_sideAnchor li a {
  display: inline-block;
  line-height: 1.2;
  position: relative;
  padding: .4em 0;
}
.list_sideAnchor li a::before {
  content: '';
  width: 0;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 0;
  bottom: 0;
  transition: all .4s;
}
.list_sideAnchor li a:hover::before {
  width: 100%;
  left: 0;
  right: auto;
}
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;
  font-size: 1.171vw;
}
.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: 55.64%;
  height: 18.5%;
}
.crosstalk04 .block_pageTop .crosstalk_title {
  width: 55.64%;
  height: 40%;
  top: 60%;
}
.block_pageTop .swiper {
  pointer-events: none;
}
.block_pageTop .swiper:not(.filter--none)::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%;
}
.block_pageTop .area_title .title_underPage {
  color: #fff;
  line-height: 1;
  margin: min(8%, 73px) 0 0 45px;
}
.block_pageTop .area_title .title_underPage .en {
  font-size: 287.5%;
  font-weight: 500;
  letter-spacing: 0;
  margin: 0 0 .25em;
}
.block_pageTop .area_title .title_underPage .jp {
  font-size: 112.5%;
}
.block_pageTop .area_title .title_underPage2 {
  display: inline-block;
  color: #fff;
  line-height: 1;
  margin: min(6%, 55px) 0 0;
  text-align: left;
  padding: 0 11.5% 0 0;
}
.block_pageTop .area_title .title_underPage2 .en {
  font-size: 400%;
  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: 270%;
  line-height: 1;
}
.block_pageTop .area_title .title_underPage2 .mincyo span {
  display: inline-block;
  background: #000;
  padding: .2em .5em;
}
.block_pageTop .area_archive {
  padding: 40px 0;
}
.block_pageTop .area_tateText {
  position: absolute;
  z-index: 10;
  right: 6%;
  top: 18%;
  writing-mode: vertical-rl;
}
.block_pageTop .area_tateText .text {
  color: #fff;
  line-height: 1;
}
.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: 125%;
  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: 187.5%;
  font-weight: 700;
  padding: .5em .4em;
  text-orientation: upright;
  letter-spacing: 0.07em;
}
.block_pageTop .area_bottomText {
  position: absolute;
  z-index: 10;
  right: 6%;
  bottom: 7.5%;
}
.block_pageTop .area_bottomText .text {
  font-size: 225%;
  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_bottomText .text > span.first {
  padding: .3em 0 .3em .3em;
}
.block_pageTop .area_bottomText .text > br.sp-only + span {
  padding: .3em .3em .3em 0em;
  margin: 0 0 0 -.2em;
}
.block_pageTop .area_imageText {
  position: absolute;
  z-index: 10;
  right: 6%;
  top: 18%;
}
.block_pageTop .area_imageText.talk01 {
  width: min(6%, 80px);
}
.block_pageTop .area_interviewTitle {
  position: absolute;
  right: 20.2%;
  top: 4%;
  z-index: 5;
  writing-mode: vertical-rl;
  line-height: 1;
  color: #fff;
}
.block_pageTop .area_interviewTitle .tate_title {
  font-size: 215%;
  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: 225%;
  margin: 1.2em 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;
  margin: 4em 0 0;
}
.block_pageTop .area_interviewName {
  position: absolute;
  z-index: 5;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .5);
  width: 100%;
  padding: 0 0 3.3%;
}
.block_pageTop .area_interviewName .interviewName_en {
  color: #fff;
  font-size: 237.5%;
  font-weight: 350;
  padding: .20em 0 .05em clamp(300px, 28%, 383px);
}
.block_pageTop .area_interviewName .interviewName_jp {
  background: #8CB2C5;
  font-size: 212.5%;
  line-height: 1.53;
  font-weight: 700;
  padding: .3em 0 .5em clamp(300px, 28%, 383px);
}
.block_pageTop .area_interviewName .interviewName_jp.color02 {
  background: #A4C4A1;
}
.block_pageTop .area_interviewName .interviewName_jp.color03 {
  background: #D19F8B;
}
.block_pageLead {
  padding: 50px 0 95px;
}
.block_pageLead .leadText {
  font-size: 150%;
  line-height: 1.667;
  letter-spacing: .05em;
}
.block_pageLead .inner--interview .leadText {
  font-size: 100%;
  line-height: 2;
  letter-spacing: .08em;
}
/* ========================
page-name #project
========================*/
.block_project .bg {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.block_project .bg.bg--01 {
  background-image: url(../img/crosstalk/talk01/bg.webp);
}
.block_project .bg.bg--02 {
  background-image: url(../img/crosstalk/talk02/bg.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 {
  padding: 0 0 140px;
}
.list_projectArchive {
  display: flex;
  flex-wrap: wrap;
  gap: 90px 5.26%;
  padding: 120px 0 0;
}
.list_projectArchive > li {
  width: 47.3685%;
}
.list_projectArchive .archive_thumbnail {
  padding: 75px 0 75px;
  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 a:hover .archive_thumbnail .thumbWrap img {
  transform: scale(1.1);
}
.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-size: 125%;
  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: 150%;
  font-weight: 500;
  padding: .7em .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: 2.35em 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: 68.75%;
  display: block;
  letter-spacing: .025em;
}
.list_projectArchive .textBox .archive_title span.title {
  font-size: 125%;
  letter-spacing: .05em;
  display: block;
}
.list_projectArchive .textBox .archive_lead {
  font-size: 75%;
  letter-spacing: .13em;
  line-height: 2;
}
@media all and (max-width:1300px) {
  .list_projectArchive .archive_thumbnail .archive_title {
    font-size: 1.23vw;
  }
}
/*---------------*/
.block_project .area_intro {
  background: #7CB27B;
  padding: 8.75em 0 4em;
  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 {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.block_project .area_intro .introFlex .imgBox {
  width: 47.3685%
}
.block_project .area_intro .introFlex .imgBox img {
  vertical-align: top;
}
.block_project .area_intro .introFlex .imgBox .small {
  width: 66%;
  margin: 11% auto 0;
}
.block_project .area_intro .introFlex .textBox {
  width: 47.5%;
  font-size: 112.5%;
  line-height: 2;
  color: #fff;
}
.block_project .area_intro .introFlex .textBox p + p {
  margin: 2em 0 0;
}
.block_project .area_intro .introFlex .textBox small {
  font-size: 77.8%;
}
.block_project .area_intro .intro_lead {
  font-size: 150%;
  line-height: 2;
}
@media all and (max-width:900px) {
  .block_project .area_intro .introFlex {
    display: block;
  }
  .block_project .area_intro .introFlex .imgBox {
    width: 100%;
  }
  .block_project .area_intro .introFlex .textBox {
    width: 100%;
    margin: 10% auto 0;
  }
}
/*---------------*/
.block_project .area_member {
  padding: 4em 0;
  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 4em 9em 0;
}
.list_memberProfile > li {
  display: flex;
  justify-content: space-between;
}
.list_memberProfile > li + li {
  margin: 1.25em 0 0;
}
.list_memberProfile > li .profile_thumbnail {
  width: 28.3%;
}
.list_memberProfile > li .profile_thumbnail img {
  display: block;
  width: 60%;
  margin: auto;
}
.list_memberProfile > li .textBox {
  width: 71.7%;
  margin: 1.5em 0 0;
  letter-spacing: 0.05em;
}
.list_memberProfile > li .textBox .profile_type {
  font-size: 162.5%;
  line-height: 1;
  margin: 0 0 .4em;
}
.list_memberProfile > li .textBox .profile_type span {
  display: inline-block;
  background: #fff;
  border: solid 1px #fff;
  color: #000;
  padding: .35em .4em;
}
.list_memberProfile > li .textBox .profile_type.ver02 span {
  background: none;
  color: #fff;
}
.list_memberProfile > li .textBox .profile_name {
  margin: 0 0 .5em;
}
.list_memberProfile > li .textBox .profile_name strong {
  font-size: 150%;
  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 #000000;
  padding: 1em 0 0;
  margin: 1em 0 0;
  font-size: 87.5%;
}
.temp_swipeYoko {
  background: #FFFFFF;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
  padding: 0 0 1em;
}
.block_project .temp_swipeYoko {
  transform: translateX(-50px);
  width: 80vw;
}
@media all and (min-width:1367px) {
  .block_project .temp_swipeYoko {
    width: calc((100vw - 1120px) / 2 + 950px);
  }
}
.temp_swipeYoko .yokoFlex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.temp_swipeYoko .yokoFlex .title_base {
  width: 32%;
  margin: 0;
  box-sizing: border-box;
  padding: 0 2% 0 4.5%;
}
.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 {
  width: 68%;
}
.temp_swipeYoko .yokoFlex .yoko_image img {
  vertical-align: top;
}
.swipeYokoWrap {
  overflow-x: scroll;
  padding: 48px 3.5% 1em;
  cursor: url("../img/icon_drag.webp"), auto;
}
.swipeYokoWrap ul {
  display: flex;
  width: 200%;
  position: relative;
}
.swipeYokoWrap ul::before {
  content: '';
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  left: 0;
  top: 1.8em;
}
.swipeYokoWrap ul > li {
  width: 100%;
}
.swipeYokoWrap ul > li .num {
  font-family: "neue-haas-unica", sans-serif;
  font-size: 187.5%;
  font-weight: 300;
  letter-spacing: .05em;
  margin: 0 0 .5em;
}
.swipeYokoWrap ul > li .num span {
  display: inline-block;
  background: #fff;
  padding: 0 .5em;
  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 {
  margin: 0 0 0 3%;
}
.swipeYokoWrap ul > li .textBox dl dt {
  font-size: 125%;
  font-weight: 500;
  margin: 0 0 .4em;
}
.swipeYokoWrap ul > li .textBox dl dt small {
  display: block;
  font-size: 80%;
}
.swipeYokoWrap ul > li .textBox dl dd {
  line-height: 2;
  margin: 0 2em 0 0;
  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: 3em 0 4.5em;
  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 {
  margin: 5em 0 0;
}
.block_project .area_talk .talkSet + .talkSet {
  margin: 8em 0 0;
}
.dl_talkContents {
  margin: 6em 0;
}
.dl_talkContents dt {
  font-size: 125%;
  font-weight: 500;
  letter-spacing: .1em;
  position: relative;
  padding: 0 0 0 90px;
  margin: 0 0 2.7em;
}
.dl_talkContents dt.none {
  display: none;
}
.dl_talkContents dt::before {
  content: '';
  width: 70px;
  height: 1px;
  background: #333333;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.dl_talkContents .talk_member {
  display: flex;
  justify-content: space-between;
}
.dl_talkContents .talk_member + .talk_member {
  margin: 3.6em 0 0;
}
.dl_talkContents .talk_member .member_img {
  width: 70px;
}
.dl_talkContents .talk_member .member_img img {
  vertical-align: top;
}
.dl_talkContents .talk_member .member_text {
  width: calc(100% - 90px);
  font-size: 87.5%;
  line-height: 2.5714;
  margin: 1.1em 0 0;
  letter-spacing: .025em;
  box-sizing: border-box;
  padding: 0 10% 0 0;
}
.dl_talkContents .talk_member .member_text p + p {
  margin: 2.5em 0 0;
}
.dl_talkContents .contents_flex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.dl_talkContents .talk_member + .contents_flex {
  margin: 3.6em 0 0;
}
.dl_talkContents .contents_flex + .contents_flex {
  margin: 3.6em 0 0;
}
.dl_talkContents .contents_flex .flexRight {
  width: 47.3684%;
}
.dl_talkContents .contents_flex .flexLeft {
  width: 52.63%;
}
.dl_talkContents .talk_member.small--text {
  width: 52.63%;
}
.dl_talkContents .image.margin {
  margin: 3.6em 0 0;
}
.block_project .area_ticker {
  background: #E1E1E1;
  padding: 45px 0 8.5em;
  overflow: hidden;
  margin: 0 0 -1.5%;
}
.block_project .area_ticker .title_talk .en {
  line-height: 1.5;
}
.block_project .area_ticker .ticker_image {
  height: 625px;
  background-repeat: repeat-x;
  background-size: auto 625px;
}
.block_project .area_ticker .ticker_image.image02 {
  background-image: url(/assets/img/project/project02/ticker.webp);
  -webkit-animation: bgTicker 30s linear 0s infinite;
  animation: bgTicker 30s linear 0s infinite;
}
.block_project .area_end {
  padding: 6em 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;
}
@media all and (max-width:900px) {
  .dl_talkContents .contents_flex {
    display: block;
  }
  .dl_talkContents .contents_flex .flexRight {
    width: 100%;
    margin: 10% 0 0;
  }
  .dl_talkContents .contents_flex .flexLeft {
    width: 100%;
  }
}
/* ========================
page-name #crosstalk
========================*/
.block_crosstalk .area_talk01 {
  background: #CCCCCC;
  padding: 6.3em 0 7.2em;
}
.block_crosstalk .area_talk02 {
  background: #000000;
  padding: 6.3em 0 7.8em;
}
.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 {
  display: flex;
  flex-wrap: wrap;
  gap: 90px 5.26%;
}
.list_talkSummary > li {
  width: 47.3685%;
}
.list_talkSummary .talk_thumbnail {
  overflow: hidden;
}
.list_talkSummary .talk_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_talkSummary a:hover .talk_thumbnail img {
  transform: scale(1.05);
}
.list_talkSummary .textBox {
  margin: 2em 0 0;
}
.list_talkSummary .talk_name {
  font-size: 125%;
  letter-spacing: .05em;
  margin: 0 0 .4em;
  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 a:hover .talk_name {
  color: #fff;
}
.list_talkSummary a:hover .talk_name::before {
  width: 106%;
  left: -3%;
}
.list_talkSummary .talk_name span {
  position: relative;
  z-index: 5;
}
.list_talkSummary .talk_desc {
  font-size: 75%;
  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;
}
.block_project.type--talk .area_member {
  background: rgba(51, 51, 51, 0.4);
  color: #fff;
}
.block_project.type--talk .list_memberProfile {
  margin: 0 4em 3.8em 0;
}
.block_project.type--talk .list_memberProfile > li + li {
  margin: 3.5em 0 0;
}
.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: 250%;
  font-weight: 300;
  border: solid 2px #FFFFFF;
  color: #fff;
  background: #000;
  position: relative;
  z-index: 5;
  max-width: 316px;
  margin: auto;
  border-bottom: none;
  padding: .65em 0 5px;
  letter-spacing: .02em;
  line-height: 1;
}
.block_talk .area_intro .intro_lead {
  font-size: 112.5%;
  line-height: 2;
  letter-spacing: .05em;
  color: #fff;
  border: solid 2px #FFFFFF;
  margin: -3px auto 0;
  max-width: 95%;
  box-sizing: border-box;
  padding: 2.2em 2.8em;
}
/*-----*/
.block_talk .area_member {
  background: #000;
  padding: 7.6em 0 9em;
}
.block_talk .area_member .title_center {
  color: #fff;
}
.list_vsMember {
  display: flex;
  justify-content: space-between;
  margin: 4.9em auto 0;
  max-width: 906px;
  position: relative;
}
.list_vsMember::before {
  content: '';
  width: 23%;
  height: 0;
  padding: 23% 0 0;
  position: absolute;
  left: 0;
  right: 0;
  top: 18%;
  margin: auto;
  background: url(../img/crosstalk/talk03/vs.webp);
  background-size: contain;
  background-repeat: no-repeat;
}
.list_vsMember > li {
  width: 33.6%;
  color: #fff;
}
.list_vsMember .member_image {
  margin: 0 0 4%;
}
.list_vsMember .member_name {
  text-align: center;
  margin: 4% 0 2%;
}
.list_vsMember .member_name strong {
  font-weight: 400;
  font-size: 150%;
  display: inline-block;
}
.list_vsMember .member_position {
  text-align: center;
  font-size: 75%;
  line-height: 1.833;
  letter-spacing: .05em;
}
.list_vsMember .member_desc {
  border-top: solid 1px #fff;
  font-size: 87.5%;
  line-height: 1.86;
  margin: 1em 0 0;
  padding: 1em 0 0;
  letter-spacing: .05em;
}
/*-----*/
.block_talk .area_contents {
  padding: 7.4em 0 6.2em;
}
.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 2.6em;
}
.block_talk .area_contents .contents_title .title {
  font-size: 175%;
  margin: 0 0 .6em;
}
.block_talk .area_contents .contents_title.type--black .title {
  color: #000;
}
.block_talk .area_contents .contents_title .title .font--en {
  font-weight: 300;
  letter-spacing: .05em;
}
.block_talk .area_contents .contents_title .title .jp {
  font-weight: 400;
  letter-spacing: .05em;
}
.block_talk .area_contents .contents_title .att {
  font-size: 187.5%;
  line-height: 1.5;
  margin: -.3em 0 0;
}
.block_talk .area_contents .contents_title .att span {
  display: inline-block;
  background: #E50012;
  color: #fff;
  padding: 0 1em;
}
.block_talk .area_contents .contents_title .text {
  font-size: 225%;
  line-height: 1;
  letter-spacing: .1em;
  margin: auto;
}
.block_talk .area_contents .contents_title .text span {
  display: inline-block;
  min-width: 650px;
  background: #000;
  padding: .2em .6em;
}
@media all and (max-width:1024px) {
  .block_talk .area_contents .contents_title .text span {
    min-width: 0;
  }
}
.block_talk .area_contents .setWrap {
  margin: 5.8em 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: 100px;
  position: relative;
}
.block_talk .area_contents .talkSet .set_image img {
  vertical-align: top;
}
.block_talk .area_contents .talkSet.type01 .set_image::before {
  content: '';
  width: 50px;
  height: 2px;
  background: #50FF50;
  position: absolute;
  z-index: 5;
  right: -70px;
  top: 49px;
}
.block_talk .area_contents .talkSet.type02 .set_image::before {
  content: '';
  width: 50px;
  height: 2px;
  background: #FF7800;
  position: absolute;
  z-index: 5;
  left: -70px;
  top: 49px;
}
.block_talk .area_contents .talkSet .set_text {
  width: calc(100% - 145px);
  max-width: 600px;
  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% - 20px) 0, 100% 20px, 100% calc(100% - 20px), calc(100% - 20px) 100%, 20px 100%, 0 calc(100% - 20px), 0 20px, 20px 0);
  margin: 0 0 0 45px;
}
.block_talk .area_contents .talkSet.type01 .set_text .textWrap {
  background: #fff;
  box-sizing: border-box;
  height: 100%;
  clip-path: polygon(50% 2px, calc(100% - 22px) 2px, calc(100% - 2px) 22px, calc(100% - 2px) calc(100% - 22px), calc(100% - 22px) calc(100% - 2px), 22px calc(100% - 2px), 2px calc(100% - 22px), 2px 22px, 22px 2px);
  display: flex;
  align-items: center;
  padding: 2em 3.1em;
}
.block_talk .area_contents .talkSet .textWrap p {
  font-size: 87.5%;
  line-height: 2.5714;
  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 45px 0 0;
  border: solid 2px #FF7800;
  border-radius: 2em;
}
.block_talk .area_contents .talkSet.type02 .set_text .textWrap {
  padding: 2em 3.1em;
}
.block_talk .area_contents.contentsEnd .contents_title .title {
  font-style: italic;
  font-size: 250%;
}
.block_talk .area_contents.contentsEnd .contents_title .text {
  font-size: 312.5%;
}
.block_talk .area_contents .lead_image img {
  vertical-align: top;
  display: block;
}
.block_talk .area_contents .lead_image img + img {
  margin: 30px 0 0;
}
.block_talk .area_contents.contentsEnd .lead_image {
  margin: 5.7em 0 0;
}
/* ========================
page-name #interview
========================*/
body#page_interview {
  background: #DDDDDD;
}
.block_interview {
  position: relative;
  margin: 6em 0 0;
}
.block_interview .side_title {
  position: absolute;
  right: 16px;
  top: -2em;
  writing-mode: vertical-rl;
  line-height: 1;
  letter-spacing: 0;
}
.block_interview .side_title span.mincyo {
  display: inline-block;
  background: #000;
  color: #fff;
  padding: .75em .3em;
}
.block_interview .side_title span.pageName {
  display: inline-block;
  color: #fff;
  padding: .5em .3em;
}
.block_interview .side_title span.pageName.color01 {
  background: #8CB2C5;
}
.block_interview .side_title span.pageName.color02 {
  background: #A4C4A1;
}
.block_interview .side_title span.pageName.color03 {
  background: #D19F8B;
}
.block_interview .area_archive {
  margin: -7px 0 9.5em;
}
@media all and (max-width:1380px) {
  .block_interview .area_archive {
    font-size: 1.16vw;
  }
}
.block_interview .archiveSet + .archiveSet {
  margin: 5.75em 0 0;
}
.block_interview .archive_titleWrap {
  display: flex;
  align-items: center;
  color: #fff;
  margin: 0 0 2.5em;
  background: #000;
}
.block_interview .archive_titleWrap .archive_title {
  font-size: 225%;
  font-weight: 700;
  padding: .2em 0 .32em 1.14em;
  box-sizing: border-box;
  width: 39.6%;
  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.5;
  width: 60.4%;
  box-sizing: border-box;
  padding: 0 0 0 2.5em;
  letter-spacing: .07em;
}
.list_archiveSummary {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2.8%;
}
.list_archiveSummary > li {
  width: 29.421%;
}
.list_archiveSummary .archive_thumbnail {
  overflow: hidden;
}
.list_archiveSummary .archive_thumbnail img {
  vertical-align: top;
  transition: all .4s;
}
.list_archiveSummary a:hover .archive_thumbnail img {
  transform: scale(1.1);
}
.list_archiveSummary .archive_desc {
  font-size: 113%;
  font-weight: 700;
  line-height: 1.5;
  margin: -2.1em 0 .4em;
  position: relative;
  z-index: 5;
  letter-spacing: .02em;
}
.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 .4em .08em;
}
.list_archiveSummary .archive_info span {
  line-height: 1.3125;
  letter-spacing: .02em;
}
.list_archiveSummary .archive_info span.positon {
  display: block;
}
.list_archiveSummary .archive_info span.name {
  display: block;
  font-size: 112.5%;
}
/*--------------------------------------------------*/
.block_interview .area_info .infoWrap {
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  margin: 7% 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 4% 0 4.5%;
  width: 95%;
}
.block_interview .area_info .infoWrap .thumbnail {
  width: 18.5%;
}
.block_interview .area_info .infoWrap .thumbnail img {
  vertical-align: top;
}
.block_interview .area_info .infoWrap .textBox {
  width: 78.3%;
}
.block_interview .area_info .infoWrap .info_join {
  font-size: 87.5%;
  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: 0 0 .6em;
}
.block_interview .area_info .infoWrap .info_name span {
  display: block;
  font-weight: 500;
}
.block_interview .area_info .infoWrap .info_name span.position {
  line-height: 1.2;
  margin: 0 0 .3em;
}
.block_interview .area_info .infoWrap .info_name span.name {
  font-size: 112.5%;
  line-height: 1.2;
}
.block_interview .area_info .infoWrap .info_desc {
  font-size: 87.5%;
  letter-spacing: .01em;
}
.block_interview .area_contents .set {
  padding: 9.5% 0 0;
  margin: 0 0 7.5%;
  position: relative;
}
.block_interview .area_contents .set .set_caption {
  position: relative;
  color: #fff;
  font-size: 112.5%;
  letter-spacing: .1em;
  margin: 0 0 7%;
}
.block_interview .area_contents .set .set_caption::before {
  content: '';
  width: .9em;
  height: 100%;
  background: #555555;
  position: absolute;
  right: 100%;
  top: 0;
}
@media all and (min-width:1220px) {
  .block_interview .area_contents .set .set_caption::before {
    width: calc((100vw - 1187px) / 2);
    max-width: 98px;
  }
}
.block_interview .area_contents .set .set_caption .caption_text {
  display: inline-block;
  padding: 1.2em 2.3em 1.4em 0;
  background: #555555;
}
.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 {
  display: inline-flex;
  padding: 1.2em 2.3em 1.3em 0;
  background: #555555;
  align-items: center;
  line-height: 1;
}
.block_interview .area_contents .set .set_caption dt {
  width: 126px;
  border: solid 1px #fff;
  text-align: center;
  padding: .45em 0 .45em;
}
.block_interview .area_contents .set .set_caption dd {
  font-size: 133.333%;
  box-sizing: border-box;
  padding: 0 0 0 2em;
}
.block_interview .area_contents .set .image img {
  vertical-align: top;
}
.block_interview .area_contents .set .type--separate {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.block_interview .area_contents .set .type--separate .separateLeft {
  width: 48.704%;
}
.block_interview .area_contents .set .type--separate .separateRight {
  width: 46.8%;
}
@media all and (max-width:820px) {
  .block_interview .area_contents .set .type--separate {
    display: block;
  }
  .block_interview .area_contents .set .type--separate .separateLeft {
    width: 80%;
  }
  .block_interview .area_contents .set .type--separate .separateLeft .image {
    margin: 1.35em 0 0;
  }
  .block_interview .area_contents .set .type--separate .separateRight {
    width: 100%;
    margin: 10% 0 0;
  }
}
.block_interview .area_contents .contents_title {
  font-size: 150%;
  line-height: 1.67;
  margin: 0 0 1.6em;
}
.block_interview .area_contents .contents_text {
  font-size: 87.5%;
  line-height: 2.286;
  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: 11% 0 0;
  pointer-events: none;
}
.block_interview .area_contentsSlide img {
  vertical-align: top;
}
.block_interview .area_food {
  background: #8CB2C5;
  padding: 7% 0;
}
.block_interview .area_food.color02 {
  background: #A4C4A1;
}
.block_interview .area_food.color03 {
  background: #D19F8B;
}
.block_interview .area_food .foodWrap {
  display: flex;
  justify-content: space-between;
}
.block_interview .area_food .food_title {
  position: absolute;
  left: 62%;
  top: 4%;
  overflow: hidden;
  line-height: 1;
  height: 0;
  width: 21%;
  padding: 6% 0 0;
  background: url(../img/interview/meshi.webp) no-repeat;
  background-size: contain;
  text-indent: 150%;
}
.block_interview .area_food .foodWrap .foodLeft {
  width: 42.28%;
}
.block_interview .area_food .foodWrap .foodRight {
  width: 49.72%;
  padding: 11.5% 0 0;
}
.block_interview .area_food .foodWrap .foodRight .food_text {
  font-size: 87.5%;
  line-height: 2.286;
  width: 89%;
  letter-spacing: 0.05em;
}
.block_interview .area_food .foodWrap .food_win {
  width: 40.9%;
  margin: -5% 18% 0 auto;
}
.block_interview .area_food .foodWrap .food_win img {
  vertical-align: top;
}
@media all and (max-width:820px) {
  .block_interview .area_food .foodWrap {
    display: block;
  }
  .block_interview .area_food .food_title {
    position: relative;
    left: 0;
    top: 0;
    width: 50%;
    padding: 12% 0 0;
  }
  .block_interview .area_food .foodWrap .foodLeft {
    width: 80%;
  }
  .block_interview .area_food .foodWrap .foodRight {
    width: 100%;
    padding: 5% 0 0;
  }
  .block_interview .area_food .foodWrap .foodRight .food_text {
    width: 100%;
  }
  .block_interview .area_food .foodWrap .food_win {
    margin: 0 0 0 auto;
  }
}
/**/
.block_interview .area_point {
  background: #555555;
  padding: 7.3% 0 8%;
  margin: 0 0 5.6%;
}
.block_interview .area_point .point_title {
  text-align: center;
  color: #fff;
}
.block_interview .area_point .point_title .en {
  font-size: 375%;
  font-weight: 350;
  line-height: 1.5;
  letter-spacing: 0;
}
.list_interviewPoint {
  color: #fff;
  position: relative;
  margin: 3em 0 0;
}
.list_interviewPoint::before {
  content: '';
  width: 1px;
  height: calc(100% - 2em);
  position: absolute;
  left: .5em;
  top: 1em;
  background: #fff;
}
.list_interviewPoint li {
  position: relative;
  padding: 0 0 0 4em;
}
.list_interviewPoint li::before {
  content: '';
  width: .5em;
  height: .5em;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  z-index: 5;
  left: .3em;
  top: 1em;
}
.list_interviewPoint li::after {
  content: '';
  width: 1.875em;
  height: 1.875em;
  border-radius: 50%;
  position: absolute;
  z-index: 4;
  left: -.4em;
  top: .3em;
  background: rgba(164, 196, 161, 0.5);
}
.list_interviewPoint li + li {
  margin: 2.5em 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: -4em;
  bottom: 0;
}
.list_interviewPoint .point_period {
  font-size: 112.5%;
  font-weight: 700;
  margin: 0 0 0.45em;
}
.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: 3.8em 12% 0;
  box-sizing: border-box;
  margin: 0 0 4.55em;
}
.block_interview .set_job .job_title {
  text-align: center;
  color: #D19F8B;
  line-height: 1;
  margin: 0 0 2.5em;
}
.block_interview .set_job .job_title .en {
  font-size: 375%;
  font-weight: 300;
  letter-spacing: 0;
  margin: 0 0 .3em;
}
.block_interview .set_job .job_title .jp {
  font-weight: 700;
}
.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: 150%;
}
.block_interview .set_job .job_ratio .ratio_text span.num {
  display: inline-block;
  vertical-align: middle;
  font-size: 250%;
}
.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 {
  display: flex;
  justify-content: space-between;
  margin: 1em 0 0;
}
.block_interview .set_job .jobWrap .job_text {
  width: 60%;
  font-size: 87.5%;
  margin: 3em 0 0;
}
.block_interview .set_job .jobWrap .job_person {
  width: 35%;
  margin: 0 -.5em 0 0;
}
.block_interview .set_job .jobWrap .job_person img {
  vertical-align: top;
}
/*--------------------------------------------------*/
.block_pageBase .pageBase_image img {
  vertical-align: top;
}
.block_pageBase .area_title {
  padding: 3.9em 0;
}
.block_pageBase .base_title {
  line-height: 1;
  margin: 0 0 4.3em;
}
.block_pageBase .base_title .font--en {
  font-size: 300%;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.block_pageBase .base_title .jp {
  font-size: 225%;
  font-weight: 500;
  position: relative;
  padding: .7em 0 0;
  margin: .7em 0 0;
}
.block_pageBase .base_title .jp::before {
  content: '';
  width: 48px;
  height: 4px;
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
}
.block_pageBase .base_lead {
  font-size: 87.5%;
  line-height: 2.143;
  letter-spacing: .0214em;
}
.block_pageBase .base_lead p + p {
  margin: 2em 0 0;
}
.block_pageBase .area_contents {
  padding: 3.2em 0;
}
.dl_base {
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
}
.dl_base + .dl_base {
  border-top: none;
}
.dl_base {
  display: flex;
  padding: 3em 0;
}
.dl_base > dt {
  width: 25%;
  font-size: 112.5%;
  line-height: 1.67;
}
.dl_base > dd {
  width: 75%;
  font-size: 87.5%;
  line-height: 2.143;
  letter-spacing: 0;
}
.dl_base > dd p + p {
  margin: 2em 0 0;
}
.list_recruitFlow {
  max-width: 432px;
}
.list_recruitFlow > li {
  text-align: center;
  background: #A4C4A180;
  font-size: 129%;
  padding: 1em 0;
  letter-spacing: .05em;
  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.35em 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: 6.8em 0 4em;
}
/* ========================
page-name #message
========================*/
.title_gray {
  line-height: 1;
  margin: 0 0 4em;
}
.title_gray .font--en {
  color: #C8C8C8;
  font-size: 235%;
  font-weight: 400;
  letter-spacing: .05em;
  margin: 0 0 .3em;
}
.title_gray .jp.color--white {
  color: #fff;
}
.block_message .area_top {
  margin: 0 0 10em;
}
.block_message .area_top .title_gray {
  padding: 6em 0 0;
}
.block_message .area_top .lead_title {
  font-size: 190%;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin: 0 0 2em;
}
.block_message .area_top .lead_text {
  max-width: 730px;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 6em;
}
.block_message .area_top .lead_text p + p {
  margin: 2em 0 0;
}
.block_message .area_ideal {
  background: #666666;
  padding: 9em 0 1em;
  overflow: hidden;
}
.block_message .area_ideal .ideal_lead {
  color: #fff;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 6em;
  letter-spacing: 0.03em;
}
.block_message .area_ideal .temp_swipeYoko {
  width: 76vw;
}
.block_message .area_ideal .temp_swipeYoko .yokoFlex {
  padding: 5% 0 0;
}
.block_message .area_ideal .swipeYokoWrap ul {
  width: 230%;
}
.block_message .area_ideal .swipeYokoWrap ul > li.image {
  border: none;
  padding: 3% 0 0;
  position: relative;
  display: flex;
  align-items: center;
}
.block_message .area_ideal .swipeYokoWrap ul > li.image div {
  width: 80%;
  margin: auto;
}
.block_message .area_ideal .swipeYokoWrap ul > li.image::before {
  content: '';
  width: 100%;
  height: 40px;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
}
.block_message .area_people {
  background: #666666;
  padding: 11em 0 9em;
}
.block_message .area_people .people_lead {
  color: #fff;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 4.6em;
  letter-spacing: 0.03em;
  max-width: 715px;
}
.block_message .area_people .people_image {
  max-width: 715px;
}
/* ========================
page-name #about
========================*/
.block_about .area_top {
  padding: 6em 0 0;
  margin: 0 0 14em
}
.block_about .area_top .lead_image {
  margin: 0 0 6.5em;
}
.block_about .area_top .lead_title {
  font-size: 180%;
  font-weight: 700;
  line-height: 2;
  margin: 0 0 1.8em;
}
.block_about .area_top .lead_text {
  max-width: 720px;
  font-size: 112.5%;
  line-height: 2;
}
.block_about .area_business {
  background: #666666;
  position: relative;
  padding: 0 0 12.5em;
}
.block_about .area_business .business_image {
  margin: 0 0 6% auto;
  width: 55%;
}
.block_about .area_business .business_image img {
  vertical-align: top;
}
.block_about .area_business .business_lead {
  color: #fff;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 5em;
}
.list_business {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 5.26%;
}
.list_business > li {
  width: 47.37%;
  background: rgba(255, 255, 255, .75);
  border-radius: .7em;
  overflow: hidden;
}
.list_business .thumbnail {
  overflow: hidden;
}
.list_business .thumbnail img {
  vertical-align: top;
  pointer-events: none;
}
.list_business > li .textBox {
  padding: 1em;
}
.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;
  line-height: 2;
}
.block_about .area_functions {
  background: #999999;
  position: relative;
  padding: 0 0 12.5em;
}
.block_about .area_functions .title_gray .font--en {
  color: #fff;
}
.block_about .area_functions .functions_image {
  margin: 0 0 6% auto;
  width: 55%;
}
.block_about .area_functions .lead_text {
  max-width: 720px;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 5em;
}
/* ========================
page-name #env
========================*/
.block_env .area_institution {
  padding: 0 0 10%;
}
.block_env .area_institution .title_gray {
  padding: 6em 0 0;
}
.block_env .area_institution .institution_lead {
  font-size: 112.5%;
  line-height: 2;
}
.list_institution {
  margin: 5em 0 0;
}
.list_institution > li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.list_institution > li + li {
  margin: 3.5em 0 0;
}
.list_institution > li .thumbnail {
  width: 20%;
  text-align: center;
}
.list_institution > li .thumbnail img {
  vertical-align: top;
  display: block;
  width: 75%;
  margin: auto;
}
.list_institution > li .textBox {
  width: 74%;
}
.list_institution > li .institution_sectionTitle {
  font-size: 112.5%;
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
  margin: 0 0 30px;
  line-height: 2;
}
.list_institutionDetail {
  line-height: 2;
  letter-spacing: .05em;
  margin: 0 0 0 .8em;
}
.list_institutionDetail > li {
  list-style: disc;
}
.list_institutionDetail > li + li {
  margin: 1em 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: 10em 0;
}
.block_env .area_support .title_gray .jp {
  color: #fff;
}
.block_env .area_support .support_lead {
  color: #fff;
  font-size: 112.5%;
  line-height: 2;
  letter-spacing: .05em;
}
.list_support {
  display: flex;
  margin: 5.8em 0 0;
  justify-content: space-between;
}
.list_support > li {
  width: 29.5%;
}
.list_support > li .support_sectionTitle {
  font-size: 112.5%;
  color: #fff;
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
  line-height: 2;
  margin: 12% 0 6%;
}
.list_support > li .support_text {
  color: #fff;
  margin: 1em 0 0;
  letter-spacing: .04em;
  line-height: 2;
}
.parts_ticker {
  margin: 10% 0 0;
  position: relative;
  overflow: hidden;
  height: auto;
}
.parts_ticker .tickerImage {
  display: flex;
  width: 240%;
  -webkit-animation: bgTicker 20s linear infinite;
  animation: bgTicker 20s linear infinite;
}
.parts_ticker .tickerImage img {
  width: 60%;
  height: auto;
  flex-shrink: 0;
  vertical-align: top;
}
.block_project .area_ticker .parts_ticker {
  margin: 0;
}
.block_project .area_ticker .parts_ticker .tickerImage {
  width: 400%;
  -webkit-animation: bgTickerBIG 60s linear infinite;
  animation: bgTickerBIG 60s linear infinite;
}
.block_project .area_ticker .parts_ticker .tickerImage img {
  width: 100%;
}
/* ========================
page-name #job
========================*/
.dl_job {
  display: flex;
  align-items: center;
  line-height: 1.65;
}
.dl_job dt {
  background: #000;
  color: #fff;
  font-size: 250%;
  text-align: center;
  width: 200px;
}
.dl_job dt.color--white {
  border: solid 2px #000;
  background: none;
  color: #000;
}
.dl_job dd {
  width: calc(100% - 200px);
  font-size: 150%;
  box-sizing: border-box;
  padding: 0 0 0 1em;
}
.block_job .area_lead {
  margin: 0 0 6em;
}
.block_job .area_lead .job_title {
  font-size: 200%;
  font-weight: 500;
  padding: 4em 0 0;
  margin: 0 0 1.5em;
}
.block_job .area_lead .job_text {
  color: #666666;
  max-width: 700px;
  line-height: 2;
  margin: 0 0 4em;
  font-size: 112.5%;
}
.job_dlWrap {
  border-radius: .5em;
  background: #CCCCCC;
  max-width: 700px;
}
.dl_jobDetail {
  display: flex;
  align-items: center;
  padding: 1em;
  margin: 0 0 4em;
}
.dl_jobDetail dt {
  width: 20%;
  text-align: center;
  font-size: 112.5%;
  font-weight: 700;
}
.dl_jobDetail dd {
  box-sizing: border-box;
  width: 80%;
  border-left: dotted 1px #000000;
  line-height: 1.625;
}
.dl_jobDetail dd ul {
  margin: 0 0 0 3em;
}
.dl_jobDetail dd ul li {
  list-style: disc;
  line-height: 2;
}
.block_job .area_lead .job_img {
  max-width: 950px;
}
.block_job .area_lead .job_img img {
  vertical-align: top;
}
.block_job .area_jobDesc {
  background: #666666;
  padding: 0 0 4em;
}
.block_job .area_jobDesc .desc_image {
  margin: 0 0 6% auto;
  width: 55%;
}
.block_job .area_jobDesc .desc_image img {
  vertical-align: top;
}
.block_job .area_jobDesc .desc_lead {
  color: #fff;
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 3em;
}
.list_jobDesc {
  color: #fff;
  max-width: 715px;
}
.list_jobDesc > li {
  border-bottom: solid 1px #fff;
  line-height: 1.5;
  font-size: 112.5%;
  padding: 1.2em 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;
  max-width: 715px;
  margin: 1em 0 0;
  font-size: 75%;
}
.block_job .area_jobDesc .desc_imageSet {
  margin: 6% 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: 45.45vw !important;
  padding: 31% 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: 55%;
}
.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 {
  font-size: 112.5%;
  line-height: 2;
  margin: 0 0 3em;
}
.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.3em 1em;
}
.dl_voiceSet > dd::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 20px solid #ffffff;
  border-left: 0;
  position: absolute;
  right: 100%;
  top: 27px;
}
.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: 4em 0 0;
  border-top: solid 1px #000000;
  border-bottom: solid 1px #000000;
  text-align: center;
  padding: 1.5em 0;
}
.block_job .area_path {
  padding: 5em 0;
  background: #CCCCCC;
}
.block_job .area_path .title_gray .font--en {
  color: #fff;
}
.block_job .area_path .path_lead {
  margin: 0 0 3em;
  font-size: 112.5%;
}
.block_job .area_path .path_title {
  font-size: 150%;
  margin: 0 0 1em;
}
.block_job .area_path .path_image {
  max-width: 750px;
  margin: 3em 0 0;
}
.block_job .area_pathEX {
  padding: 5em 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: 112.5%;
}
.block_job .area_pathEX .pathEXWrap {
  display: flex;
  justify-content: space-between;
  margin: 5.6em 0 0;
}
.block_job .area_pathEX .case_set {
  width: 47.4%;
  background: #666666;
  border-radius: 1.2em;
  box-sizing: border-box;
  padding: 1em 2em;
  color: #fff;
}
.block_job .area_pathEX .case_set .font--en {
  color: #CCCCCC;
  font-size: 250%;
  font-weight: 400;
  padding: 1.6em 0;
  line-height: 1;
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: 42px auto;
}
.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 {
  margin: -1em 0 0;
}
.list_pathCase {
  border-top: dotted 1px #fff;
  margin: 1em 0 0;
  padding: 3em 0 1.5em;
  position: relative;
}
.list_pathCase > li {
  display: flex;
  position: relative;
  padding: 0 0 2em;
}
.list_pathCase > li + li {
  margin: 1.25em 0 0;
}
.list_pathCase > li:not(:last-child)::before {
  content: '';
  width: 1px;
  height: calc(100% - 100px);
  position: absolute;
  left: 40px;
  top: 100px;
  background: #fff;
}
.list_pathCase > li .case_time {
  width: 80px;
  height: 80px;
  box-sizing: border-box;
  border: solid 1px #fff;
  text-align: center;
  border-radius: 50%;
  display: flex;
  align-items: center;
  font-size: 112.5%;
}
.list_pathCase > li .case_time span {
  display: block;
  width: 100%;
}
.list_pathCase > li .textBox {
  width: calc(100% - 80px);
  box-sizing: border-box;
  padding: 0 0 0 1em;
}
.list_pathCase > li .textBox .case_title {
  font-size: 125%;
  font-weight: 700;
  padding: 1.1em 0 0;
  margin: 0 0 .7em;
  letter-spacing: .05em;
}
.list_pathCase > li .textBox .case_text {
  line-height: 2;
}
/*----------*/
.block404 {
  background: #000;
}
.block404 .area404 {
  padding: 73px 0 200px;
  margin: 0 0 0 45px;
}
@media all and (min-height:1024px) {
  .block404 .area404 {
    padding: 150px 0 200px;
  }
}
.block404 .title404 {
  color: #fff;
  line-height: 1;
}
.block404 .title404 .font--en {
  font-size: 287.5%;
  font-weight: 500;
  letter-spacing: 0;
  margin: 0 0 .25em;
}
.block404 .title404 .jp {
  font-size: 112.5%;
  font-weight: 600;
}
.block404 .lead404 {
  font-size: 112.5%;
  color: #fff;
  padding: 50px 0 0;
  margin: 150px 0 90px;
  border-top: solid 1px #fff;
  line-height: 2;
  letter-spacing: .05em;
}