@charset "utf-8";
/* ===================================================================================================================

	トップページ

=================================================================================================================== */

.home_section {
  position: relative;
  margin: 0 5%;
  background: #F2F2F2;
}
.home_section:not(:last-child) {
  margin-bottom: 20%;
}
.home_section:not(:last-child):before {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 0;
  margin-top: -1px;
  padding-top: 18%;
  clip-path: polygon(0 0, 100% 0, 100% 5%, 50% 95%, 0 5%);
  background: #F2F2F2;
}
.home_section:not(:first-child) {
  margin-top: 20%;
}
.home_section:not(:first-child):after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: 0;
  padding-top: 18%;
  margin-bottom: -1px;
  clip-path: polygon(0 0, 50% 95%, 100% 0, 100% 100%, 0 100%);
  background: #F2F2F2;
}

.home_section > .inner {
  padding: 8%;
}
.home_section p {
  /*letter-spacing: -.05em;*/
  font-feature-settings: "palt";
}




#home .catchcopy {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
/*  height: 95vh;
  height: calc(100dvh - 50px);*/
  height: 60vh;
  background: url("../images/index/bg-x.svg") no-repeat top right / auto 100%;
}
#home .catchcopy .inner {
  width: 80%;
  margin: auto;
}
#home .catchcopy h2 {
  margin-bottom: 3em;
}
#home .catchcopy p {
  font-size: 1.3em;
}







.flex-l-ttl {
  gap: 5%;
}
.flex-l-ttlR {
  flex-direction: row-reverse;
}
.flex-l-ttl .flex-ttl {
  width: 5em;
}
.flex-l-ttl .flex-txt {
  width: 50%;
  flex-grow: 1;
}
.flex-l-ttl .flex-txt > *:first-child {
  margin-top: 0;
}
/*
.flex-s-ttl {
  gap: 5%;
}
.flex-s-ttlR {
  flex-direction: row-reverse;
}
.flex-s-ttl .flex-ttl {
  width: 30%;
}
.flex-s-ttlL .flex-ttl {
  margin-top: -7%;
  margin-left: -5%;
}
.flex-s-ttlR .flex-ttl {
  margin-top: -7%;
  margin-right: -5%;
}
.flex-s-ttl .flex-ttl .hd03 {
  height: 6em;
}
.flex-s-ttl .flex-txt {
  width: 60%;
  flex-grow: 1;
}
.flex-s-ttl .flex-txt > *:first-child {
  margin-top: 0;
}*/

.flex-s-ttl {
  position: relative;
  display: block;
}
.flex-s-ttl:after {
  content: '';
  clear: both;
}
.flex-s-ttl .flex-ttl {
  width: 32%;
  margin-top: -10%;
}
.flex-s-ttlL .flex-ttl {
  float: left;
  margin-left: -5%;
}
.flex-s-ttlR .flex-ttl {
  float: right;
  margin-right: -5%;
}
.flex-s-ttl .flex-ttl .hd03 {
  /*height: 5em;*/
  position: relative;
  height: 0;
  padding-top: 100%;
}
.flex-s-ttl .flex-ttl .hd03 > span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
.flex-s-ttlL .flex-txt {
  margin-left: 35%;
}
.flex-s-ttlR .flex-txt {
}
.flex-s-ttl .flex-txt > *:first-child {
  margin-top: 0;
}


.block-business {
  margin-top: 3rem;
}
.block-business figure {
  margin-bottom: 1em;
}

#business_media .hd03 {
  background: rgba(0,42,57,.8);
}
#business_design .hd03 {
  background: rgba(49,30,43,.8);
}
#business_event .hd03 {
  background: rgba(67,60,0,.8);
}
#business_cameraman .hd03 {
  background: rgba(0,42,57,.8);
}
#business_drone .hd03 {
  background: rgba(49,30,43,.8);
}


.tbl_company {
}
.tbl_company th, .tbl_company td  {
  padding: .25em 1em;
}
.tbl_company th {
  vertical-align: top;
  text-align-last: justify;
  border-right: 1px solid #231815;
  width: 7em;
}
.tbl_company td {
}

