/* Scss Document */
main {
  padding-top: 0;
}

.mainimage {
  width: 100%;
  min-width: 1140px;
  overflow: hidden;
  background-color: #000;
  z-index: -9999 !important;
  font-size: 0;
  line-height: 0;
  position: relative;
}
.mainimage .maincopy img {
  background-color: transparent;
}
.mainimage video {
  width: 100%;
  min-width: 1140px;
  opacity: 0.8;
  height: 70%;
  object-fit: cover;
  z-index: -9999 !important;
}

.maincopy {
  top: 40%;
  right: 15%;
  position: absolute;
  width: 25%;
}
.title-wrapper {
  margin: 6em auto;
}
.title-wrapper h2 {
  margin-top: 0.75em;
  font-size: 1.5rem;
}
.title-wrapper.middle {
  margin: 4em auto;
}
.title-wrapper.middle h2 {
  margin-top: 0.5em;
}

table.autot {
  width: 100%;
  min-width: 1140px;
}
table.autot th {
  width: 50%;
  vertical-align: middle;
}
table.autot td {
  width: 50%;
}
table.autot td img {
  width: 100%;
}

.nonehaikei {
  background-image: none !important;
}

.group {
  background-image: url(img/worksb.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  min-width: 1140px;
}

.block3 {
  width: 100%;
  min-width: 1140px;
}
.block3 figure {
  margin-bottom: 1.5em;
}

.no1 {
  position: absolute;
  bottom: 20px;
  left: 20px;
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  line-height: 1.3;
  text-align: left;
  color: #fff;
}
.no1 > div {
  margin-left: 1.5em;
}
.no1 .notes {
  margin: 0.5em 0;
  font-size: 1.2rem;
}

section {
  margin: 0 auto;
}

.index-content-wrapper {
  display: flex;
  align-items: center;
}
.index-content-wrapper.reverse {
  flex-direction: row-reverse;
}
.index-content-wrapper .index-content-body {
  width: 50%;
}
.index-content-wrapper figure {
  width: 50%;
}

.concept h3 {
  margin: 0.75em auto 1em;
  font-size: 2rem;
}

.works {
  padding: 40px 0 140px;
  background: #EEEEEE;
  overflow: hidden;
}

.works-wrapper {
  margin: 0 auto;
  width: 1080px;
}
.works-wrapper .bx-viewport {
  overflow: visible !important;
}
.works-wrapper .bx-wrapper {
  position: relative;
}
.works-wrapper .bx-wrapper .bx-controls {
  position: absolute;
  top: calc(50% - 21px);
  left: 0;
  width: 100%;
}
.works-wrapper .bx-wrapper .bx-controls .bx-prev, .works-wrapper .bx-wrapper .bx-controls .bx-next {
  width: 42px;
  height: 42px;
  overflow: hidden;
  text-indent: -200%;
}
.works-wrapper .bx-wrapper .bx-controls .bx-prev {
  margin-left: -21px;
  float: left;
  background: url(../img/index/arw_his_l.png) no-repeat left top;
}
.works-wrapper .bx-wrapper .bx-controls .bx-prev.hide {
  display: none;
}
.works-wrapper .bx-wrapper .bx-controls .bx-next {
  float: right;
  margin-right: -21px;
  background: url(../img/index/arw_his_r.png) no-repeat left top;
}
.works-wrapper .bx-wrapper .bx-controls .bx-next.hide {
  display: none;
}

.works-items .works-item:nth-child(odd) {
  margin-top: 50px;
}
.works-items .works-item a {
  text-decoration: none;
  text-align: left;
  font-weight: 400;
  font-size: 1.4rem;
  color: #000;
}
.works-items .works-item a figcaption {
  margin-top: 0.75em;
}

.pickup-items {
  display: flex;
  justify-content: space-between;
}
.pickup-items .pickup-item {
  width: 33%;
}
.pickup-items .pickup-item figure {
  margin: 0 auto 1.5em;
  width: 90%;
}

.newsevent .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.newsevent .inner .title-wrapper {
  margin-bottom: 4em;
}
.newsevent .inner .news,
.newsevent .inner .event {
  width: 100%;
}
.newsevent .inner .news dl,
.newsevent .inner .event dl {
  padding: 1em 0;
  border-top: solid 1px #CCC;
  text-align: left;
  display: flex;
}
.newsevent .inner .news dl dt,
.newsevent .inner .event dl dt {
  width: 10em;
  font-weight: 400;
  letter-spacing: 0.15em;
}
.newsevent .inner .news dl dd a,
.newsevent .inner .event dl dd a {
  color: #000;
  text-decoration: none;
}
.newsevent .inner .news dl:last-of-type,
.newsevent .inner .event dl:last-of-type {
  margin-bottom: 3em;
  border-bottom: solid 1px #CCC;
}

@media only screen and (max-width: 600px) {
  main {
    padding-top: 0;
  }

  .mainimage {
    width: 100%;
    min-width: 100%;
    overflow: hidden;
  }
  .mainimage .maincopy img {
    background-color: transparent;
  }
  .mainimage video {
    width: 185%;
    min-width: 185%;
    opacity: 0.8;
    height: 70%;
    object-fit: cover;
    z-index: -9999 !important;
  }

  .maincopy {
    width: 60%;
    min-width: auto;
    top: 20vw;
    left: 6vw;
  }
  .maincopy img {
    width: 100%;
    min-width: 100%;
  }

  .no1 {
    position: static;
    color: #231815;
    padding: 4vw;
    font-size: 1.2rem;
    line-height: 1.2;
    background: #fff;
  }
  .no1 figure {
    width: 25%;
  }
  .no1 > div {
    width: 75%;
  }
  .no1 .notes {
    font-size: 1rem;
  }
  .no1 .notes br {
    display: none;
  }

  .title-wrapper {
    margin: 6vw auto;
    line-height: 1.3;
  }
  .title-wrapper .en img {
    height: 3vw;
  }
  .title-wrapper h2 {
    margin-top: 0;
    font-size: 2.5rem;
  }
  .title-wrapper.middle {
    margin: 4em auto;
    line-height: 1.4;
  }
  .title-wrapper.middle h2 {
    margin-top: 0.5em;
    font-size: 1.8rem;
  }

  table.autot {
    width: 100%;
    min-width: 100%;
  }
  table.autot th {
    width: 50%;
    vertical-align: middle;
  }
  table.autot td {
    width: 50%;
  }
  table.autot td img {
    width: 100%;
  }

  .nonehaikei {
    background-image: none !important;
  }

  .group {
    background-image: url(img/worksb.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    width: 100%;
    min-width: 100%;
  }

  .block3 {
    width: 100%;
    min-width: 100%;
  }
  .block3 figure {
    margin-bottom: 1.5em;
  }

  section {
    margin: 0 auto;
  }

  .index-content {
    padding: 0 4vw;
  }

  .index-content-wrapper {
    display: block;
  }
  .index-content-wrapper .index-content-body {
    padding: 6vw 0;
    width: 100%;
  }
  .index-content-wrapper .index-content-body .num {
    margin: 0 auto;
    width: 15%;
  }
  .index-content-wrapper figure {
    width: 100%;
  }

  .concept h3 {
    margin: 0.75em auto 1em;
    font-size: 2rem;
  }

  .works {
    padding: 2vw 0 8vw;
    background: #EEEEEE;
    overflow: hidden;
  }

  .works-wrapper {
    margin: 0 auto;
    width: 100vw;
  }
  .works-wrapper .bx-viewport {
    margin: 0 auto;
    overflow: visible !important;
    width: 40vw !important;
  }
  .works-wrapper .bx-wrapper {
    overflow: hidden;
    position: relative;
    width: 100%;
  }
  .works-wrapper .bx-wrapper .bx-controls {
    position: absolute;
    top: calc(50% - 21px);
    left: 0;
    width: 100%;
  }
  .works-wrapper .bx-wrapper .bx-controls .bx-prev, .works-wrapper .bx-wrapper .bx-controls .bx-next {
    width: 42px;
    height: 42px;
    overflow: hidden;
    text-indent: -200%;
  }
  .works-wrapper .bx-wrapper .bx-controls .bx-prev {
    margin-left: -21px;
    float: left;
    background: url(../img/index/arw_his_l.png) no-repeat left top;
  }
  .works-wrapper .bx-wrapper .bx-controls .bx-prev.hide {
    display: none;
  }
  .works-wrapper .bx-wrapper .bx-controls .bx-next {
    float: right;
    margin-right: -21px;
    background: url(../img/index/arw_his_r.png) no-repeat left top;
  }
  .works-wrapper .bx-wrapper .bx-controls .bx-next.hide {
    display: none;
  }

  .works-items .works-item {
    padding: 0 1vw;
    width: 40vw !important;
  }
  .works-items .works-item:nth-child(odd) {
    margin-top: 0;
  }
  .works-items .works-item a {
    text-decoration: none;
    text-align: left;
    font-weight: 400;
    font-size: 1.2rem;
    color: #000;
  }
  .works-items .works-item a figcaption {
    margin-top: 0.75em;
    line-height: 1.2;
  }

  .pickup {
    padding: 4vw;
  }

  .pickup-items {
    display: block;
  }
  .pickup-items .pickup-item {
    margin: 0 auto 1em;
    width: 100%;
    display: flex;
    justify-content: space-between;
    position: relative;
    text-align: left;
    line-height: 1.4;
  }
  .pickup-items .pickup-item .title-wrapper {
    margin: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 54%;
  }
  .pickup-items .pickup-item .title-wrapper .en {
    display: none;
  }
  .pickup-items .pickup-item .title-wrapper h2 {
    margin: 0;
  }
  .pickup-items .pickup-item .pickup-body {
    padding-top: 2.5em;
    width: 54%;
  }
  .pickup-items .pickup-item .pickup-body .btn-more {
    display: none;
  }
  .pickup-items .pickup-item figure {
    margin: 0;
    width: 42.8%;
  }

  .newsevent .inner {
    display: block;
  }
  .newsevent .inner .title-wrapper {
    margin-bottom: 2em;
  }
  .newsevent .inner .news,
.newsevent .inner .event {
    margin: 4em auto;
    width: 100%;
  }
  .newsevent .inner .news dl,
.newsevent .inner .event dl {
    padding: 1em 0;
    border-top: solid 1px #CCC;
    text-align: left;
    display: flex;
    font-size: 1.3rem;
  }
  .newsevent .inner .news dl dt,
.newsevent .inner .event dl dt {
    width: 11em;
    font-weight: 400;
    letter-spacing: 0;
  }
  .newsevent .inner .news dl dd,
.newsevent .inner .event dl dd {
    line-height: 1.4;
  }
  .newsevent .inner .news dl dd a,
.newsevent .inner .event dl dd a {
    color: #000;
    text-decoration: none;
  }
  .newsevent .inner .news dl:last-of-type,
.newsevent .inner .event dl:last-of-type {
    margin-bottom: 3em;
    border-bottom: solid 1px #CCC;
  }
}

/* 20241001 Instagram */
.top-insta {
 width: 100%;
 max-width: 900px;
 margin: 0 auto;
}
.top-insta-en {
 font-size: 40px;
 margin-bottom: -20px;
}
.insta-grp {
 width: 100%;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 align-items: stretch;
}
.insta-item {
 width: calc(100% / 3);
}
@media (max-width: 600px) {
 .top-insta-en {
  font-size: 17px;
  margin-bottom: -5px;
 }
 .insta-item {
  width: 50%;
 }
 .insta-item a {
  display: inline-block;
 }
}

/* 20241001 OTHER */
.title-wrapper h2.top-other-en {
 font-size: 40px;
 font-weight: unset;
}
.other-flex {
 display: flex;
 align-items: center;
 width: 80%;
 margin: 0px auto;
}
.other-flex-imgbox {
 width: 27%;
 margin-right: 3%;
}
.other-flex-img {
 width: 70%;
}
.other-flex-txt {
 width: 70%;
 text-align: left;
}
@media (max-width: 600px) {
 .other-flex {
  display: block;
 }
 .other-flex-imgbox {
  width: 100%;
  margin-right: unset;
  margin-bottom: 26px;
 }
 .other-flex-txt {
  width: 100%;
 }
}