@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
  display: block;
}

audio, canvas, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden] {
  display: none;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-line-break: strict;
  -webkit-word-break: break-strict;
  font-family: sans-serif;
  line-break: strict;
  word-break: break-strict;
}

a:focus {
  outline: thin dotted;
}

a:active, a:hover {
  outline-width: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b {
  font-weight: 700;
}

strong {
  font-weight: 400;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

a {
  text-decoration: none;
}

ol, ul {
  list-style: none;
}

code, kbd, pre, samp {
  font-family: monospace,serif;
  font-size: 1em;
}

pre {
  word-wrap: break-word;
  white-space: pre;
  white-space: pre-wrap;
}

q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}

small {
  font-size: 80%;
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -.5em;
}

sub {
  bottom: -.25em;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: middle;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: .35em .625em .75em;
  border: 1px solid silver;
}

legend {
  padding: 0;
  border: 0;
}

button, input, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
}

button, input {
  line-height: normal;
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], input[disabled] {
  cursor: default;
}

input[type=checkbox], input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

*:focus {
  outline: none;
}

/* Common */
html {
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 62.5%;
}

@font-face {
  src: url("../font/NotoSansJP-Regular-Subset.woff2") format("woff2"), url("../font/NotoSansJP-Regular-Subset.woff") format("woff"), url("../font/NotoSansJP-Regular-Subset.otf") format("otf");
  font-family: 'Noto Sans JP Subset';
}

@font-face {
  src: url("../font/NotoSerifJP-Regular-Subset.woff2") format("woff2"), url("../font/NotoSerifJP-Regular-Subset.woff") format("woff"), url("../font/NotoSerifJP-Regular-Subset.otf") format("otf");
  font-family: 'Noto Serif JP Subset';
}

@font-face {
  src: url("../font/Alice-Regular.woff2") format("woff2"), url("../font/Alice-Regular.woff") format("woff"), url("../font/Alice-Regular.eot?") format("eot");
  font-family: 'Alice';
}

.ff_alice {
  font-family: 'Alice', serif;
}

.ff_noto_serif {
  font-family: 'Noto Serif JP Subset', 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳＰ明朝', 'MS PMincho', 'MS 明朝', serif;
}

body {
  font-display: swap;
  position: relative;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  background: #fff6f2;
  color: #333;
  font-family: 'Noto Sans JP Subset', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Osaka', 'MS PGothic', sans-serif;
  font-size: 1.4rem;
  line-height: 1.8;
}

a,
a:link,
a:hover,
a:visited,
a:focus {
  outline: none;
}

::selection {
  background-color: #e52589;
  color: #fff;
}

.frame {
  display: block;
  z-index: 20;
  position: fixed;
  content: " ";
}

.frame.top,
.frame.bottom {
  left: 0;
  width: 100%;
  height: 1rem;
}

.frame.right,
.frame.left {
  top: 0;
  width: 1rem;
  height: 120%;
}

.frame.top {
  top: 0;
  background: -webkit-gradient(linear, right top, left top, from(#ff6f61), to(#e4007f));
  background: linear-gradient(to left, #ff6f61 0%, #e4007f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
}

.frame.right {
  right: 0;
  background: #ff6f61;
}

.frame.bottom {
  bottom: 0;
  background: -webkit-gradient(linear, right top, left top, from(#ff6f61), to(#e4007f));
  background: linear-gradient(to left, #ff6f61 0%, #e4007f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
}

.frame.left {
  left: 0;
  background: #e4007f;
}

.wrapper {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.inner {
  max-width: 106.8rem;
  margin-right: auto;
  margin-left: auto;
  padding: 0 8%;
}

.section__title {
  padding: 4rem 0;
  background: -webkit-gradient(linear, right top, left top, from(#ff6f61), to(#e4007f));
  background: linear-gradient(to left, #ff6f61 0%, #e4007f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
}

.section__title {
  -webkit-background-clip: text;
          background-clip: text;
  color: rgba(255, 255, 255, 0.1);
  font-size: 13vw;
  text-align: center;
}

.header {
  width: 100vw;
  height: auto;
  min-height: 100vh;
  padding: 1rem 0;
}

.header__inner {
  position: relative;
  width: calc(100% - 2rem);
  min-height: calc(100vh - 2rem);
  margin: 0 auto;
  background: url(../img/mv_bg_sp.jpg) no-repeat center center;
  background-size: cover;
}

.header__logo {
  -webkit-transform: translate(-50%, -50%);
  position: absolute;
  top: 46%;
  left: 50%;
  width: 76%;
  transform: translate(-50%, -62%);
}

.footer {
  padding-bottom: 6.6rem;
  color: #e4007f;
  font-size: 5vw;
  line-height: 1;
  text-align: center;
}

.lead {
  padding: 8vw 0 19.4vw;
}

.lead .inner {
  width: 100%;
  max-width: none;
}

.lead__text > p {
  background: -webkit-gradient(linear, right top, left top, from(#ff6f61), to(#e4007f));
  background: linear-gradient(to left, #ff6f61 0%, #e4007f 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$startColor', endColorstr='$endColor',GradientType=1 );
}

.lead__text > p {
  -webkit-background-clip: text;
          background-clip: text;
  color: rgba(255, 255, 255, 0.1);
}

.lead__text {
  font-size: 6.88vw;
  line-height: 1.6;
}

.lead__text_large {
  margin-top: 4.6vw;
  font-size: 9.8vw;
  line-height: 1;
  text-align: justify;
}

.lead__text .ja {
  font-size: 12vw;
  font-weight: bold;
}

.lead__text .en {
  font-size: 13.2vw;
}

.lead__text_large + .lead__text_large {
  margin-top: -1vw;
}

.lead__image {
  height: 94vw;
  margin-top: 9.4vw;
}

.lead__image_inner {
  overflow: hidden;
}

.lead__image_picure {
  -webkit-transform: translateY(0) scale(1.3);
  display: block;
  top: 0;
  left: 0;
          transform: translateY(0) scale(1.3);
  will-change: auto;
}

.works {
  background: #f8eae4;
}
.works .inner {
  padding-bottom: 50vw;
}

.works__card {
  position: relative;
  padding: 4.4vw;
  background: #fff6f2;
  color: #937c72;
}

.works__card.art {
  margin-top: -4vw;
}

.works__card.design,
.works__card.lecture,
.works__card.performance {
  margin-top: 44vw;
}

.works__card.seminar {
  margin-top: 37vw;
}

.works__card_number {
  -webkit-transform: scale(0.96, 1);
  z-index: 3;
  position: absolute;
  top: 0;
  left: 0;
  width: 31%;
  height: 9.6vw;
          transform: scale(0.96, 1);
  background: #fff6f2;
  font-size: 18.4vw;
  line-height: 0;
  text-align: center;
}

.works__card_image {
  width: 100%;
  height: 52.7vw;
  overflow: hidden;
}

.works__card_image img {
  -webkit-transition: all .4s;
  display: inline-block;
  transition: all .4s;
}

.art .works__card_image img {
  -webkit-transform: scale(1.8) translate(3.8rem, -4.6rem);
          transform: scale(1.8) translate(3.8rem, -4.6rem);
}

.design .works__card_image img {
  -webkit-transform: scale(2.2) translate(-1.2rem, -2.2rem);
          transform: scale(2.2) translate(-1.2rem, -2.2rem);
}

.lecture .works__card_image img {
  -webkit-transform: scale(2) translate(0.5rem, 0rem);
          transform: scale(2) translate(0.5rem, 0rem);
}

.performance .works__card_image img {
  -webkit-transform: scale(1.7) translate(-1.4rem, -1.1rem);
          transform: scale(1.7) translate(-1.4rem, -1.1rem);
}

.seminar .works__card_image img {
  -webkit-transform: scale(1.4) translate(1.2rem, 1rem);
          transform: scale(1.4) translate(1.2rem, 1rem);
}

.works__card_text {
  position: absolute;
  top: 83%;
  right: -8%;
  width: 98%;
  padding: 4vw 8vw 4vw 4vw;
  background: #fff6f2;
  font-size: 4.3vw;
  line-height: 1.9;
  text-align: justify;
}

.works__card_title {
  margin-bottom: 3vw;
  color: #333;
  font-size: 6.3vw;
  font-weight: bold;
  line-height: 1;
}

.works__card_lead {
  letter-spacing: .08rem;
  line-height: 1.8;
}

.works__mainvisual {
  display: block;
  height: 68vw;
  overflow: hidden;
}
.works__mainvisual_picture {
  -webkit-transform: scale(1.4) translateX(3rem);
  display: block;
          transform: scale(1.4) translateX(3rem);
}
.gallery {
  padding-bottom: 6.4rem;
}

.gallery__filter {
  -webkit-transition: all .4s;
  position: absolute;
  width: calc(100% - (8% * 2) * 1);
  height: calc(18vw - 1px);
  overflow: hidden;
  transition: all .4s;
}

.gallery__filter i {
  -webkit-transition: all .4s;
  display: inline-block;
  z-index: 11;
  position: absolute;
  top: 5.1vw;
  right: 1.2rem;
  width: 8vw;
  height: 8vw;
  color: #e4007f;
  font-size: 6vw;
  line-height: 8vw;
  text-align: center;
  transition: all .4s;
}

.gallery__filter_list li {
  width: 100%;
  height: 100%;
  padding-top: .5rem;
}

.gallery__filter_list span {
  -webkit-transform: translateY(-0.5rem);
  display: block;
  z-index: 10;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0 1.2rem;
          transform: translateY(-0.5rem);
  background: #fff;
  background: #e4007f;
  color: #fff;
  font-size: 5.6vw;
  line-height: calc(18vw - 1px);
  cursor: pointer;
}

.gallery__filter_list span.is_active {
  background: #fff;
  color: #e4007f;
}

.is_filter.gallery__filter {
  height: auto;
}

.is_filter.gallery__filter li {
  height: auto;
}

.is_filter.gallery__filter i {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

.is_reverse.gallery__filter i {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

.gallery__grid {
  -ms-flex-wrap: wrap;
  -webkit-transition: all .4s;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
          justify-content: space-between;
  margin-bottom: 6vw;
  padding-top: 9.6rem;
  transition: all .4s;
}

.gallery__grid li {
  -webkit-transition: all .4s;
  display: none;
  width: calc((100% - 5%) / 2);
  margin-bottom: 5%;
  cursor: pointer;
  transition: all .4s;
}

.gallery__grid li.is_default {
  display: block;
}

.gallery__grid img {
  width: 100%;
}

.gallery__more {
  text-align: center;
}

.gallery__more_button {
  display: block;
  width: 100%;
  border: none;
  background: transparent;
  font-size: 5.6vw;
}

.gallery__more_button i {
  margin-left: .2rem;
  color: #e4007f;
}

.is_finish.gallery__more_button {
  font-size: 4vw;
  cursor: default;
  opacity: .6;
}

.is_finish.gallery__more_button i {
  color: #7f7f7f;
}

.profile {
  padding-bottom: 6rem;
  background: #f8eae4;
}

.profile__contents {
  position: relative;
  margin-bottom: 16.2rem;
}

.profile__large {
  width: 92%;
  height: 77vw;
  margin-left: 8%;
}

.profile__large_contents {
  -webkit-transform: translateY(0);
  /* margin-top: 28vw; */
          transform: translateY(0);
  will-change: auto;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.profile__large img {
  -webkit-transform: scale(1.5) translateX(-1rem);
  display: inline-block;
          transform: scale(1.5) translateX(-1rem);
  margin-top: 1rem;
}

.profile__vertical {
  position: absolute;
  top: 32%;
  left: 0;
  width: 40vw;
  height: 58.8vw;
  overflow: hidden;
}

.profile__vertical_contents {
  -webkit-transform: translateY(0);
  margin-top: -26vw;
          transform: translateY(0);
  will-change: auto;
}
.profile__vertical_contents img {
  -webkit-transform: scale(1.25) translateX(1rem);
          transform: scale(1.25) translateX(-1rem);

}

.profile__lead {
  position: absolute;
  top: 99%;
  right: 0;
  width: 80%;
  padding: 1.6rem;
  background: #fff6f2;
  color: #937c72;
  font-size: 4.2vw;
  font-weight: bold;
}

.profile__name {
  margin-bottom: .8rem;
  color: #e4007f;
  font-size: 7.4vw;
  line-height: 1;
}

.profile__name .ja {
  margin-right: 1.4rem;
  font-size: 10.6vw;
  font-weight: bold;
}

.profile__description {
  margin-bottom: 2.4rem;
  font-size: 4.2vw;
  line-height: 1.8;
}

.profile__sns {
  margin-bottom: 2.6rem;
}

.profile__sns_title {
  margin-bottom: 1.8rem;
  color: #937c72;
  font-size: 8vw;
  font-weight: bold;
  letter-spacing: .2rem;
}

.profile__sns_list {
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
      flex-wrap: wrap;
          justify-content: space-between;
}

.profile__sns_list li {
  width: calc((100% - 5.1vw) / 2);
}

.profile__sns_list li:nth-of-type(1),
.profile__sns_list li:nth-of-type(2),
.profile__sns_list li:nth-of-type(3),
.profile__sns_list li:nth-of-type(4) {
  margin-bottom: 5.1vw;
}

.profile__sns_list a {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1.85rem 0;
  color: #fff;
  font-size: 4.2vw;
  line-height: 1;
}

.profile__sns_list .instagram a {
  background: #cf2e92;
}

.profile__sns_list .facebook a {
  background: #1877f2;
}

.profile__sns_list .twitter a {
  background: #1da1f2;
}

.profile__sns_list .blog a {
  background: #da9000;
}

.profile__sns_list .youtube a {
  background: #cc0000;
}

.profile__sns_list i {
  margin-right: 1rem;
  font-size: 6.8vw;
}

.profile__sns_list .facebook i {
  -webkit-transform: translate(0, -0.1rem);
          transform: translate(0, -0.1rem);
}

.profile__pamphlet {
  margin-bottom: 6.4rem;
}

.profile__pamphlet_title {
  margin-bottom: 1.8rem;
  color: #937c72;
  font-size: 8vw;
  font-weight: bold;
  letter-spacing: .2rem;
}

.profile__pamphlet_link a {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  padding: 5.4vw 0;
  background: #937c72;
  color: #fff;
  font-size: 4.2vw;
}

.profile__pamphlet_link i {
  margin-right: 1rem;
  font-size: 6.8vw;
}

.profile__info {
  padding: 2rem;
  background: #fff6f2;
  color: #937c72;
}

.profile__info_contents + .profile__info_contents {
  margin-top: 2rem;
}

.profile__info_title,
.profile__info_ul,
.profile__info_dl {
  font-size: 3.8vw;
  word-break: normal;
}

.profile__info_ul {
  padding-left: 1em;
  text-indent: -1em;
}

.contact {
  padding-bottom: 6.6rem;
}

.contact__lead {
  margin-bottom: 1rem;
  font-size: 4.2vw;
}

.contact__sub {
  margin-bottom: 4rem;
  font-size: 3.8vw;
}

.contact__sub a {
  color: #333;
  text-decoration: underline ;
}

.contact__lead br {
  display: none;
}

.contact__form li {
  position: relative;
}

.contact__form li + li {
  margin-top: 1.6rem;
}

.contact__form .label {
  -webkit-transition: all .4s;
  display: inline-block;
  position: absolute;
  top: 2rem;
  left: 1.6rem;
  color: #e4007f;
  font-size: 1rem;
  opacity: 0;
  transition: all .4s;
}

.contact__form input,
.contact__form textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  padding: .6rem 1.6rem;
  padding-right: 1.6rem;
  padding-left: 1.6rem;
  border: none;
  border-radius: 0;
  background: #f8eae4;
  font-size: 1.6rem;
}

.contact__form input {
  height: 5.5rem;
}

.contact__form textarea {
  min-height: 29.2rem;
  padding-top: 1.2rem;
}

.on_focus .label {
  top: .8rem;
  opacity: 1;
}

.on_focus input {
  padding-top: 2.2rem;
}

.on_focus textarea {
  padding-top: 2.2rem;
}

.contact__button_box {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: flex-end;
  padding-top: 2rem;
  font-weight: bold;
}

.contact__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: transparent;
  font-size: 5.6vw;
}

.contact__button_box i {
  margin-left: .4rem;
  color: #e4007f;
  font-size: 6.5vw;
}

.contact__result {
  padding: 3.2rem;
  background: #f8eae4;
  color: #937c72;
  font-size: 1.6rem;
}

.contact__result br {
  display: none;
}

.contact__result a {
  display: inline-block;
  border-bottom: 1px solid #937c72;
  color: #937c72;
}

.modal {
  display: none;
  z-index: 30;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.85);
}

.modal__close {
  z-index: 11;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.modal__contents {
  -webkit-transform: translate(-50%, -50%);
  z-index: 12;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 85%;
  max-width: 52.5rem;
  overflow: hidden;
          transform: translate(-50%, -50%);
  border-radius: .4rem;
  text-align: center;
}

.modal__contents img {
  max-height: 52.5rem;
}

.loading {
	width: 100%;
	height: 100%;
	background: #f8eae4;
	position: fixed;
	top: 0;
	left: 0;
  z-index: 9999;
}
.loading__contents {
  position: absolute;
  width: 50%;
  height: 50%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.loading_wrapper {
  /* display: none; */
}
.scroll {
  width: 100%;
  height: 8%;
  position: absolute;
  bottom: 21%;
  transform: rotate(180deg);
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

@media all and (-ms-high-contrast: none) {
  .section__title {
    background: none;
    color: #ff6f61;
  }
  .lead__text > p {
    background: none;
    color: #ff6f61;
  }
}

@media screen and (min-width: 768px) {
  /* Common */
  .frame.top,
  .frame.bottom {
    height: 1.5rem;
  }
  .frame.right,
  .frame.left {
    width: 1.5rem;
  }
  .header {
    padding: 1.5rem 0;
  }
  .header__inner {
    width: calc(100% - 3rem);
    min-height: calc(100vh - 3rem);
    background: url(../img/mv_bg_pc.jpg) no-repeat center center;
    background-size: cover;
  }
  .header__logo {
    -webkit-transform: translate(-50%, -50%);
    width: 46rem;
            transform: translate(-50%, -50%);
    top: 49%;
  }
  .inner {
    padding: 0 4.8%;
  }
  .section__title {
    width: 100%;
    padding: 12rem 0 8rem;
    font-size: 6rem;
    line-height: 1;
  }
  .footer {
    padding-bottom: 12rem;
    font-size: 1.4rem;
  }
  .lead {
    margin-top: -1.5rem;
    padding: 12rem 0;
  }
  .lead .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    padding-right: 0;
  }
  .lead__text {
    -webkit-transform: translate(0, -50%);
    z-index: 2;
    position: absolute;
    top: 50%;
            transform: translate(0, -50%);
    font-size: 2.08vw;
  }
  .lead__text br {
    display: none;
  }
  .lead__text_large {
    margin-top: 1rem;
    font-size: 5.6vw;
    line-height: 1;
  }
  .lead__text_large .ja {
    font-size: 5.8vw;
  }
  .lead__text_large .en {
    font-size: 6.8vw;
  }
  .lead__text_large + .lead__text_large {
    margin-top: 0;
  }
  .lead__image {
    width: 65%;
    height: 41.9vw;
  }
  .lead__image {
    margin: 0 0 0 auto;
  }
  .lead__image_inner {
    left: auto;
    /* margin-top: -16vw; */
    height: 41.9vw;
  }
  .works {
    padding: 0 0 0;
  }
  .works .inner {
    padding-bottom: unset;
  }
  .works__column {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            justify-content: space-between;
  }
  .works__column + .works__column {
    margin-bottom: 18.5rem;
  }
  .works__card {
    padding: 1rem;
  }
  .works__card.art,
  .works__card.design {
    margin-top: 0;
  }
  .works__card.lecture,
  .works__card.performance,
  .works__card.seminar {
    margin-top: 17.4rem;
  }
  .works__card:first-child:nth-last-child(2),
  .works__card:first-child:nth-last-child(2) ~ .works__card {
    width: calc((100% - 4.68%) / 2);
  }
  .works__card:first-child:nth-last-child(2) .works__card_image,
  .works__card:first-child:nth-last-child(2) ~ .works__card .works__card_image {
    height: 28.5vw;
  }
  .works__card:first-child:nth-last-child(2) .works__card_text,
  .works__card:first-child:nth-last-child(2) ~ .works__card .works__card_text {
    top: 80%;
    width: 78%;
  }
  .works__card:first-child:nth-last-child(3),
  .works__card:first-child:nth-last-child(3) ~ .works__card {
    width: calc((100% - 9.36%) / 3);
  }
  .works__card:first-child:nth-last-child(3) .works__card_image,
  .works__card:first-child:nth-last-child(3) ~ .works__card .works__card_image {
    height: 28.5vw;
  }
  .works__card:first-child:nth-last-child(3) .works__card_text,
  .works__card:first-child:nth-last-child(3) ~ .works__card .works__card_text {
    top: 80%;
    width: 90%;
  }
  .works__card_number {
    position: absolute;
    top: 0;
    left: 0;
    width: 12rem;
    height: 4rem;
    font-size: 8rem;
    line-height: 0;
  }
  .art .works__card_image img {
    -webkit-transform: scale(1.7) translate(5rem, -6.4rem);
            transform: scale(1.7) translate(5rem, -6.4rem);
  }
  .design .works__card_image img {
    -webkit-transform: scale(1.8) translate(0.4rem, -1.5rem);
            transform: scale(1.8) translate(0.4rem, -1.5rem);
  }
  .lecture .works__card_image img {
    -webkit-transform: scale(2.3) translate(0.4rem, 1rem);
            transform: scale(2.3) translate(0.4rem, 1rem);
  }
  .performance .works__card_image img {
    -webkit-transform: scale(1.8) translate(0.2rem, 2.2rem);
            transform: scale(1.8) translate(0.2rem, 2.2rem);
  }
  .seminar .works__card_image img {
    -webkit-transform: scale(1.7) translate(2.4rem, 2.5rem);
            transform: scale(1.7) translate(2.4rem, 2.5rem);
  }
  .works__card_text {
    right: 0;
    padding: 1.4rem;
    font-size: 1.6rem;
  }
  .works__card_title {
    margin-bottom: 1rem;
    font-size: 2rem;
  }
  .works__card_lead {
    line-height: 1.6;
  }
  .performance .works__card_lead {
    margin-bottom: 11.8%;
  }
  .works__mainvisual {
    display: block;
    height: 34vw;
    overflow: hidden;
  }
  .works__mainvisual_picture {
    -webkit-transform: scale(1.4) translateX(6rem);
    display: block;
    /* margin-top: -65vw; */
            transform: scale(1.4) translateX(6rem);
    will-change: auto;
  }
  .gallery {
    padding-bottom: 6rem;
  }
  .gallery__filter {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: static;
            justify-content: center;
    width: 100%;
    height: auto;
    margin-right: auto;
    margin-left: auto;
    overflow: visible;
    background: transparent;
    white-space: nowrap;
  }
  .gallery__filter i {
    display: none;
  }
  .gallery__filter_list {
    padding-top: 2rem;
  }
  .gallery__filter_list li {
    display: inline-block;
    width: auto;
  }
  .gallery__filter_list li + li {
    margin-left: 6rem;
  }
  .gallery__filter_list span {
    display: inline-block;
    position: relative;
    padding: 0 0;
    background: transparent;
    color: #333;
    font-size: 1.8rem;
    line-height: 1.8;
  }
  .gallery__filter_list span:before {
    -webkit-transition: width .4s;
    display: block;
    position: absolute;
    bottom: -.2rem;
    width: 0;
    height: .2rem;
    background: #e4007f;
    content: "";
    transition: width .4s;
  }
  .gallery__filter_list span.is_active,
  .gallery__filter_list span:hover {
    background: transparent;
  }
  .gallery__filter_list span.is_active:before,
  .gallery__filter_list span:hover:before {
    width: 100%;
  }
  .gallery__grid {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
    -webkit-transform: translateX(-2.5%);
            justify-content: flex-start;
    width: calc(100% + 5%);
    margin-bottom: 0;
    padding-top: 5rem;
    overflow: hidden;
            transform: translateX(-2.5%);
  }
  .gallery__grid li {
    -webkit-transition: all .4s;
    width: calc((100% / 4));
    padding: 0 2.5%;
    transition: all .4s;
  }
  .gallery__grid li:hover {
    opacity: .8;
  }
  .gallery__grid li:nth-of-type(odd) {
    margin-right: 0;
  }
  .gallery__more {
    margin-top: -5%;
    padding-top: 5rem;
  }
  .gallery__more_button {
    -webkit-transition: all .4s;
    font-size: 2.2rem;
    transition: all .4s;
  }
  .gallery__more_button:hover {
    color: #e4007f;
  }
  .is_finish.gallery__more_button {
    font-size: 1.8rem;
  }
  .is_finish.gallery__more_button:hover {
    color: #7f7f7f;
  }
  .profile {
    padding-bottom: 12rem;
  }
  .profile .inner {
    max-width: none;
  }
  .profile__contents {
    width: 90.4%;
    margin: 0 auto 5rem;
  }
  .profile__large {
    width: 62%;
    height: 42vw;
    margin-left: auto;
    text-align: right;
  }
  .profile__large img {
    -webkit-transform: scale(1.4) translate(-4rem, 0);
            transform: scale(1.4) translate(-4rem, 0);
    margin-top: -2rem;
  }
  .profile__vertical {
    width: 34%;
    height: 51.2vw;
  }
  .profile__vertical img {
    -webkit-transform: scale(1.45) translateX(-1.6rem);
            transform: scale(1.45) translateX(-1.6rem);
    margin-top: -6rem;
  }
  div.profile__vertical_contents {
    margin-top: 14vw;
  }
  .profile__lead {
    top: 8%;
    right: auto;
    left: 4%;
    width: 44%;
    padding: 1.4rem;
    font-size: 1.6rem;
  }
  .profile__name {
    margin-bottom: 0.6rem;
    font-size: 2.2rem;
  }
  .profile__name .ja {
    font-size: 4rem;
  }
  .profile .inner {
    width: 90.4%;
    padding: 0 0 0 0;
  }
  .profile__description {
    margin-bottom: 4.5rem;
    padding-left: 38%;
    font-size: 1.6rem;
  }
  .profile__sns {
    margin-bottom: 5rem;
    padding-left: 38%;
  }
  .profile__sns_title {
    margin-bottom: 3rem;
    font-size: 3.84vw;
    line-height: 1;
  }
  .profile__sns_list li {
    width: calc((100% - 4.5%) / 4);
  }
  .profile__sns_list li:nth-of-type(1),
  .profile__sns_list li:nth-of-type(2),
  .profile__sns_list li:nth-of-type(3),
  .profile__sns_list li:nth-of-type(4) {
    margin-bottom: 10px;
  }
  .profile__sns_list a {
    -webkit-transition: all .8s;
    padding: 1.2rem 0;
    font-size: 1.4rem;
    transition: all .8s;
  }
  .profile__sns_list i {
    font-size: 2.2vw;
  }
  .profile__sns_list .instagram a:hover {
    background: #fff;
    color: #cf2e92;
  }
  .profile__sns_list .facebook a:hover {
    background: #fff;
    color: #1877f2;
  }
  .profile__sns_list .twitter a:hover {
    background: #fff;
    color: #1da1f2;
  }
  .profile__sns_list .blog a:hover {
    background: #fff;
    color: #da9000;
  }
  .profile__sns_list .youtube a:hover {
    background: #fff;
    color: #cc0000;
  }
  .profile__pamphlet {
    margin-bottom: 10rem;
    padding-left: 38%;
  }
  .profile__pamphlet_title {
    margin-bottom: 3rem;
    font-size: 3.84vw;
    line-height: 1;
  }
  .profile__pamphlet_link {
    width: calc((100% - 1.5%) / 2);
  }
  .profile__pamphlet_link a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
    -webkit-transition: all .8s;
            justify-content: flex-start;
    padding: 1.2rem 0;
    font-size: 1.4rem;
    transition: all .8s;
  }
  .profile__pamphlet_link i {
    -webkit-transform: translateY(-0.1rem);
    margin-left: 7%;
            transform: translateY(-0.1rem);
    font-size: 2.2vw;
  }
  .profile__pamphlet_link a:hover {
    background: #fff;
    color: #937c72;
  }
  .profile__info {
    width: 80%;
    max-width: 70rem;
    margin: 0 auto;
    padding: 4rem;
  }
  .profile__info_title,
  .profile__info_ul,
  .profile__info_dl {
    font-size: 1.4rem;
  }
  .profile__info_ul li + li {
    margin-top: .6rem;
  }
  .profile__info_contents + .profile__info_contents {
    margin-top: 3.2vw;
  }
  .contact {
    padding-bottom: 12rem;
  }
  .contact .inner {
    width: 80%;
    max-width: none;
    padding: 0 0 0 0;
  }
  .contact .section__title {
    padding-bottom: 10rem;
  }
  .contact__lead {
    font-size: 1.6rem;
    text-align: center;
  }
  .contact__sub {
    margin-bottom: 10rem;
    font-size: 1.4rem;
    text-align: center;
  }
  .contact__lead br {
    display: block;
  }
  .contact__form li + li {
    margin-top: 2.4rem;
  }
  .on_focus .label {
    top: 1rem;
  }
  .contact__form input {
    height: 6.5rem;
  }
  .contact__form textarea {
    min-height: 23.5rem;
  }
  .contact__form .on_focus textarea {
    padding-top: 2.8rem;
  }
  .contact__button_box {
    padding-top: 5rem;
  }
  .contact__button {
    -webkit-transition: all .8s;
    font-size: 2.2rem;
    transition: all .8s;
  }
  .contact__button_box i {
    font-size: 2.4rem;
  }
  .contact__button:hover {
    color: #e4007f;
  }
  .contact__result {
    background: #fff;
    text-align: center;
  }
  .contact__result br {
    display: block;
  }
  .contact__result a {
    padding: 0 .2rem;
  }
  .scroll {
    bottom: 4rem;
  }  
}

@media screen and (min-width: 1200px) {
  /* Common */
  .inner {
    padding: 0 0;
  }
  .section__title {
    font-size: 6rem;
  }
  .footer {
    padding-bottom: 12rem;
    font-size: 1.6rem;
  }
  .lead__text {
    left: 6%;
    font-size: 2.4rem;
    font-size: 1.98vw;
  }
  .lead__text_large,
  .lead__text_large .ja {
    font-size: 5.36vw;
  }
  .lead__text_large .en {
    font-size: 6.28vw;
  }
  .works__column + .works__column {
    margin-bottom: 19rem;
  }
  .works__card {
    padding: 1.4rem;
  }
  .works__card.lecture,
  .works__card.performance,
  .works__card.seminar {
    margin-top: 15rem;
  }
  .works__card:first-child:nth-last-child(2) .works__card_image,
  .works__card:first-child:nth-last-child(2) ~ .works__card .works__card_image {
    height: 34rem;
  }
  .works__card:first-child:nth-last-child(2) .works__card_text,
  .works__card:first-child:nth-last-child(2) ~ .works__card .works__card_text {
    top: 29.4rem;
    width: 72%;
  }
  .works__card:first-child:nth-last-child(3) .works__card_image,
  .works__card:first-child:nth-last-child(3) ~ .works__card .works__card_image {
    height: 34rem;
  }
  .works__card:first-child:nth-last-child(3) .works__card_text,
  .works__card:first-child:nth-last-child(3) ~ .works__card .works__card_text {
    top: 29.5rem;
    width: 91%;
  }
  .works__card_number {
    width: 15rem;
    height: 6.4rem;
    font-size: 10rem;
    line-height: 0.1;
  }
  .art .works__card_image img {
    -webkit-transform: scale(1.68) translate(7.4rem, -10rem);
            transform: scale(1.68) translate(7.4rem, -10rem);
  }
  .design .works__card_image img {
    -webkit-transform: scale(1.62) translate(-1rem, -2.9rem);
            transform: scale(1.62) translate(-1rem, -2.9rem);
  }
  .lecture .works__card_image img {
    -webkit-transform: scale(2.2) translate(0.2rem, 1rem);
            transform: scale(2.2) translate(0.2rem, 1rem);
  }
  .performance .works__card_image img {
    -webkit-transform: scale(1.78) translate(0, 3.6rem);
            transform: scale(1.78) translate(0, 3.6rem);
  }
  .seminar .works__card_image img {
    -webkit-transform: scale(1.6) translate(3.2rem, 5rem);
            transform: scale(1.6) translate(3.2rem, 5rem);
  }
  .works__card_text {
    top: 79%;
    padding: 2rem;
    font-size: 1.6rem;
  }
  .works__card_title {
    margin-bottom: 1.4rem;
    font-size: 2.4rem;
  }
  .works__card_lead {
    line-height: 1.8;
  }
  .works__mainvisual {
    height: 48rem;
  }
  .gallery {
    padding-bottom: 12rem;
  }
  .gallery .section__title {
    padding-top: 11rem;
  }
  .gallery__filter_list {
    padding-top: 0;
  }
  .gallery__filter_list span {
    font-size: 2.2rem;
  }
  .gallery__grid {
    padding-top: 8.7rem;
  }
  .gallery__more {
    margin-top: -1.6rem;
  }
  .gallery__more_button {
    font-size: 2.2rem;
  }
  .profile .section__title {
    padding-top: 11rem;
    padding-bottom: 9rem;
  }
  .profile__contents {
    width: 100%;
    max-width: 106.8rem;
    margin-bottom: 4.4rem;
  }
  .profile__large {
    width: 67.8rem;
    height: 42.4rem;
  }
  div.profile__large_contents {
    /* margin-top: 18vw; */
  }
  .profile__large img {
    -webkit-transform: scale(1.4) translate(-3rem, -4rem);
            transform: scale(1.4) translate(-3rem, -4rem);
    margin-top: 0;
  }
  .profile__vertical {
    top: 14.8rem;
    width: 33.8rem;
    height: 37.5vw;
  }
  div.profile__vertical_contents {
    margin-top: -12rem;
  }
  .profile__lead {
    top: 5rem;
    width: 40rem;
    padding: 1.8rem;
  }
  .profile__name {
    margin-bottom: 1.0rem;
    font-size: 2.4rem;
  }
  .profile .inner {
    width: 100%;
    max-width: 106.8rem;
  }
  .profile__description {
    margin-bottom: 4rem;
    padding-left: 38.8rem;
    font-size: 1.6rem;
  }
  .profile__sns {
    padding-left: 38.8rem;
  }
  .profile__sns_title {
    margin-bottom: 2.8rem;
    font-size: 3rem;
  }
  .profile__sns_list a {
    padding: 2.3rem 0;
    font-size: 1.6rem;
  }
  .profile__sns_list i {
    font-size: 2.4rem;
  }
  .profile__pamphlet {
    padding-left: 38.8rem;
  }
  .profile__pamphlet_title {
    margin-bottom: 2.8rem;
    font-size: 3rem;
  }
  .profile__pamphlet_link {
    width: 32.7rem;
  }
  .profile__pamphlet_link a {
    padding: 2.3rem 0;
    font-size: 1.6rem;
  }
  .profile__pamphlet_link i {
    margin-left: 2.2rem;
    font-size: 2.4rem;
  }
  .profile__info {
    padding: 5rem;
  }
  .profile__info_ul li + li {
    margin-top: .4rem;
  }
  .contact {
    padding-bottom: 10rem;
  }
  .contact .inner {
    width: 100%;
    max-width: 70rem;
  }
  .contact .section__title {
    padding-top: 11rem;
    padding-bottom: 8.6rem;
  }
  .contact__lead {
    margin-bottom: 1rem;
  }
}
.contact__sub {
  margin-bottom: 5rem;
}
  .contact__result {
    width: 100%;
    max-width: 70rem;
  }
  .loading__contents {
    width: 20%;
    height: 20%;
  }
}


@media all and (-ms-high-contrast: none) and (min-width: 1200px) {
  .lead__image {
    background: url(../img/face_l.jpg) no-repeat center center;
    background-size: cover;
  }
  .lead__image img {
    opacity: 0;
  }

}

@media screen and (min-width: 375px) {
  .profile__large_contents {
    /* margin-top: -48vw; */
  }
  .profile__vertical_contents {
    /* margin-top: -24vw; */
  }
}

@media screen and (min-width: 414px) {
  .profile__large_contents {
    /* margin-top: 28vw; */
  }
  .profile__vertical_contents {
    /* margin-top: -26vw; */
  }
}

@media screen and (max-width: 767px) {
  .profile .section__title {
    padding-bottom: 6vw;
  }
  .contact .section__title {
    padding-bottom: 5vw;
  }
}
