@charset "utf-8";

/*! COLOURS v1.0.031jra */

@keyframes fade-in {
  0% {
    opacity: 0;
  }

  to {
    opacity: 100%;
  }
}

@keyframes iv {
  0% {
    opacity: 0;
    transform: translate3d(0, 1.25rem, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes btn07-bar01 {
  0% {
    transform: translateY(.34375rem) rotate(45deg);
  }

  50% {
    transform: translateY(.34375rem) rotate(0);
  }

  to {
    transform: translateY(0) rotate(0);
  }
}

@keyframes btn07-bar03 {
  0% {
    transform: translateY(-.375rem) rotate(-45deg);
  }

  50% {
    transform: translateY(-.375rem) rotate(0);
  }

  to {
    transform: translateY(0) rotate(0);
  }
}

@keyframes active-btn07-bar01 {
  0% {
    transform: translateY(0) rotate(0);
  }

  50% {
    transform: translateY(.34375rem) rotate(0);
  }

  to {
    transform: translateY(.34375rem) rotate(45deg);
  }
}

@keyframes active-btn07-bar03 {
  0% {
    transform: translateY(0) rotate(0);
  }

  50% {
    transform: translateY(-.375rem) rotate(0);
  }

  to {
    transform: translateY(-.375rem) rotate(-45deg);
  }
}

::after, ::before {
  box-sizing: border-box;
  text-decoration: inherit;
  vertical-align: inherit;
}

html {
  cursor: default;
  line-height: 1.5;
  -moz-tab-size: 4;
       tab-size: 4;
  -webkit-tap-highlight-color: transparent;
      -ms-text-size-adjust: 100%;
  word-break: break-word;
  font-feature-settings: 'palt' 1;
  min-width: 320px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  background-color: #fff;
  color: #595959;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 4.266666666666667vw;
}

body, button, dl dl, dl ol, dl ul, input, ol dl, ol ol, ol ul, select, ul dl,
ul ol, ul ul {
  margin: 0;
}

hr {
  color: inherit;
  overflow: visible;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
}

details, main {
  display: block;
}

nav ol, nav ul {
  list-style: none;
  padding: 0;
}

nav li::before {
  content: "\200B";
}

pre {
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

a {
  background-color: transparent;
}

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

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

small {
  font-size: 80%;
}

audio, canvas, iframe, img, svg, video {
  vertical-align: middle;
}

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

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

iframe, img {
  border-style: none;
}

svg:not([fill]) {
  fill: currentColor;
}

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

table {
  border-collapse: collapse;
  border-color: inherit;
  text-indent: 0;
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button;
}

fieldset {
  border: 1px solid #a0a0a0;
  padding: .35em .75em .625em;
}

button, input {
  overflow: visible;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

button, select {
  text-transform: none;
}

textarea {
  margin: 0;
  overflow: auto;
  resize: block;
}

[type=checkbox], [type=radio] {
  padding: 0;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

:-moz-ui-invalid {
  box-shadow: none;
}

dialog {
  background-color: #fff;
  border: solid;
  color: #000;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
}

summary {
  display: list-item;
}

[tabindex], a, area, button, input, label, select, summary, textarea {
  -ms-touch-action: manipulation;
}

[hidden], template {
  display: none;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true], [disabled] {
  cursor: not-allowed;
}

[aria-hidden=false][hidden] {
  display: initial;
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

ul {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

a img {
  outline: 0;
}

h1, h2, h3, h4 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

nav li:before {
  content: none;
}

body {
  font-size: .8125rem;
  letter-spacing: .01em;
  line-height: 1.692307692307692;
}

[lang=en] {
  font-size: .9375rem;
  letter-spacing: 0;
  line-height: 1.4;
  font-weight: 300;
}

.c-banner__text, .c-heading--1, .u-sans, [lang=en] {
  font-family: 'Poppins', sans-serif;
}

.l-wrapper {
  position: relative;
  height: 100%;
}

.l-wrapper__inner {
  position: relative;
  z-index: 1;
}

.c-container {
  padding: 2.5rem 3.125rem 3.75rem;
}

.c-container--blk {
  background: #000;
  color: #fff;
}

.c-fade-in {
  opacity: 0;
}

.c-fade-in.is-show {
  animation: fade-in 1s forwards;
}

.c-flc {
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-heading--1 {
  font-weight: 200;
  font-size: 1.875rem;
  letter-spacing: .05em;
  line-height: 1;
  margin: 0 0 1.25rem;
}

.c-in, .c-in--a, img.yall.lazy {
  opacity: 0;
}

.c-in.is-show {
  animation: iv 1.2s forwards ease-in-out;
}

.c-in--a.is-show {
  animation: fade-in 1.2s forwards ease-in-out;
}

img.yall:not(.lazy) {
  opacity: 1;
  animation: fade-in .7s forwards ease-in;
}

.c-ln, .g-footer__nav a {
  display: inline-block;
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.c-ln:hover {
  opacity: .7;
}

.c-ln--u {
  text-decoration: underline;
}

.c-ln--u:hover {
  text-decoration: none;
}

.c-ln--i {
  display: inline-block;
  transition: transform .4s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.c-ln--i:hover {
  transform: skewX(-10deg);
}

.c-ln--l {
  display: flex;
  font-weight: 300;
  font-size: .875rem;
  letter-spacing: .05em;
  line-height: 1.785714285714286;
}

.c-ln--l b {
  display: inline-block;
  width: 3.6875rem;
  font-weight: 600;
}

.c-ln--blank, .c-pic img {
  backface-visibility: hidden;
}

.c-ln--blank {
  transition: opacity .3s;
}

.c-ln--blank:hover {
  opacity: .7;
}

.c-ln--blank:after {
  content: '';
  width: .6875rem;
  height: .6875rem;
  background: url(ui/blank.b.svg) no-repeat 0 0/contain;
  display: inline-block;
  margin: 0 0 0 .25rem;
  vertical-align: -.0625rem;
}

.c-fit {
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.c-fit--contain {
  object-fit: contain;
  font-family: 'object-fit: contain;';
}

.c-pic {
  display: block;
  position: relative;
  overflow: hidden;
}

.c-pic:before {
  display: block;
  content: '';
  width: 100%;
  height: 0;
  padding: 0 0 100%;
}

.c-pic img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-backface-visibility: hidden;
  height: 100%;
}

.c-section {
  padding: 7.8125rem 3.125rem;
}

.c-section [lang=ja], .g-footer__nav div+div {
  margin: .9375rem 0 0;
}

.c-section__footer {
  margin: 2.25rem 0 0;
}

.c-section__sns {
  margin: 1.375rem 0 0;
  display: flex;
}

.c-section__sns .c-sns {
  width: 1.25rem;
  height: 1.25rem;
}

.c-section__sns .c-sns+.c-sns {
  margin: 0 0 0 1.375rem;
}

.c-section .c-ln--l {
  color: #000;
}

.c-container--blk .c-section .c-ln--l {
  color: #fff;
}

.c-banner {
  margin: .125rem 0 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
  position: relative;
}

.c-banner:hover .c-banner__pic img {
  transform: scale(1.03);
}

.c-banner__ly {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
      grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
      grid-column: 1/2;
  position: relative;
  z-index: 0;
}

.c-banner__text, .c-fv h1 {
  color: #fff;
  letter-spacing: .05em;
  line-height: 1;
}

.c-banner__text {
  z-index: 1;
  display: flex;
  align-items: flex-end;
  font-size: 1.40625rem;
  font-weight: 200;
  padding: 1.875rem 1.40625rem;
}

.c-banner__pic {
  overflow: hidden;
}

.c-banner__pic:before {
  padding: 0 0 47.46666666666667%;
}

.c-banner__pic img {
  transition: transform .8s;
}

.c-fv, .c-fv__ly {
  position: relative;
}

.c-fv {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
}

.c-fv__ly {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
      grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
      grid-column: 1/2;
  z-index: 1;
}

.c-fv__bg {
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.c-fv__blk {
  z-index: 2;
  pointer-events: none;
  background: #000;
  opacity: 0;
}

.c-fv__inner {
  padding: 1.875rem 3.125rem;
  display: flex;
  align-items: flex-end;
  height: 100%;
}

.c-fv__pic {
  will-change: transform;
}

.c-fv__pic:before {
  padding: 0 0 93.33333333333333%;
}

.c-fv h1 {
  font-size: 2rem;
}

.c-sns {
  background: no-repeat 50% 50%/contain;
  display: block;
}

.c-sns.is-blk, .is-invert .c-sns:not(.is-wht) {
  filter: brightness(1) invert(1);
}

.c-sns--instagram {
  background-image: url(ui/ig.svg);
}

.c-sns--facebook {
  background-image: url(ui/fb.svg);
}

.c-sns--linkedin {
  background-image: url(ui/in.svg);
}

.c-sns--weibo {
  background-image: url(ui/wb.svg);
}

.c-sns--youtube {
  background-image: url(ui/yt.svg);
}

.c-read h3 {
  color: #000;
  margin: 0 0 .625rem;
}

.c-read p+p, .p-about-us__sct p+p {
  margin: 1.5625rem 0 0;
}

.c-read--en {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.5625;
  font-weight: 300;
}

.c-read--en h3, .c-read--ja h3 {
  font-size: 1.5rem;
  letter-spacing: 0;
  line-height: 1.291666666666667;
}

.c-read--ja {
  font-size: .875rem;
  letter-spacing: -.01em;
  line-height: 1.785714285714286;
  margin: 1.5625rem 0 0;
}

.c-read--ja h3 {
  font-size: 1.1875rem;
  line-height: 1.421052631578947;
}

.c-work {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
  position: relative;
  overflow: hidden;
}

.c-work__ly {
  position: relative;
  z-index: 2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
      grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
      grid-column: 1/2;
  display: flex;
  align-items: flex-end;
}

.c-work__ly__inner {
  width: 100%;
  height: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.c-work__bg, .c-work__hv {
  position: relative;
  grid-row: 1/2;
  grid-column: 1/2;
}

.c-work__hv {
  display: none;
  z-index: 1;
}

.c-work__bg {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  z-index: 0;
}

.c-work__pic:before {
  padding: 0 0 101.07238605898124%;
}

.c-work--gugu .c-work__logo {
  width: 3.90625rem;
}

.c-work--gugu .c-work__logo:before {
  padding: 0 0 34.01360544217687%;
}

.c-work--mesm .c-work__logo {
  width: 5.71875rem;
}

.c-work--mesm .c-work__logo:before {
  padding: 0 0 46.116504854368934%;
}

.c-work--kahara .c-work__logo {
  width: 6.5625rem;
}

.c-work--kahara .c-work__logo:before {
  padding: 0 0 53.77049180327869%;
}

.c-work--rosewood .c-work__logo {
  width: 7.5625rem;
}

.c-work--rosewood .c-work__logo:before {
  padding: 0 0 22.311827956989248%;
}

.c-work--spandy .c-work__logo {
  width: 6.1875rem;
}

.c-work--spandy .c-work__logo:before {
  padding: 0 0 31.8407960199005%;
}

.c-work--goto .c-work__logo {
  width: 3.46875rem;
}

.c-work--goto .c-work__logo:before {
  padding: 0 0 100.76923076923077%;
}

.c-work--shangrila .c-work__logo {
  width: 5.375rem;
}

.c-work--shangrila .c-work__logo:before {
  padding: 0 0 50.86206896551724%;
}

.c-work--olympics .c-work__logo {
  width: 6.28125rem;
  transform: translate(0, .625rem);
}

.c-work--olympics .c-work__logo:before {
  padding: 0 0 22.064056939501782%;
}

.c-work--orkwood-kyoto .c-work__logo {
  width: 6.90625rem;
  transform: translate(0, .3125rem);
}

.c-work--orkwood-kyoto .c-work__logo:before {
  padding: 0 0 32.780082987551864%;
}

.c-work--orkwood-azabu .c-work__logo {
  width: 5.09375rem;
}

.c-work--orkwood-azabu .c-work__logo:before {
  padding: 0 0 62.745098039215684%;
}

.c-work--xsolla .c-work__logo {
  width: 3.09375rem;
}

.c-work--xsolla .c-work__logo:before {
  padding: 0 0 100%;
}

.c-work--choosechicago .c-work__logo {
  width: 4.3125rem;
}

.c-work--choosechicago .c-work__logo:before {
  padding: 0 0 66.27218934911244%;
}

.c-work--sulwhasoo .c-work__logo {
  width: 5.53125rem;
  margin: 2em 0 0;
}

.c-work--sulwhasoo .c-work__logo:before {
  padding: 0 0 19.24198250728863%;
}

.c-work--orkwood-tokyo .c-work__logo {
  width: 3.1875rem;
}

.c-work--orkwood-tokyo .c-work__logo:before {
  padding: 0 0 106.25%;
}

.c-work--orkwood-yokohama .c-work__logo {
  width: 3.15625rem;
}

.c-work--orkwood-yokohama .c-work__logo:before {
  padding: 0 0 103.35195530726257%;
}

.c-work--hakuba-hotel .c-work__logo {
  width: 3.8125rem;
}

.c-work--hakuba-hotel .c-work__logo:before {
  padding: 0 0 78.68852459016394%;
}

.c-work--hotel-groove .c-work__logo {
  width: 6.28125rem;
}

.c-work--hotel-groove .c-work__logo:before {
  padding: 0 0 46.766169154228855%;
}

.c-work--bellustar-tokyo .c-work__logo {
  width: 7.15625rem;
}

.c-work--bellustar-tokyo .c-work__logo:before {
  padding: 0 0 33.18777292576419%;
}

.c-work--oto .c-work__logo {
  width: 4.09375rem;
}

.c-work--oto .c-work__logo:before {
  padding: 0 0 33.587786259541986%;
}

.c-work--able-carry .c-work__logo {
  width: 6.125rem;
}

.c-work--able-carry .c-work__logo:before {
  padding: 0 0 8.37696335078534%;
}

.c-work--mulia .c-work__logo {
  width: 6.75rem;
}

.c-work--mulia .c-work__logo:before {
  padding: 0 0 41.2037037037037%;
}

.c-work--time-out-market-osaka .c-work__logo {
  width: 3.78125rem;
}

.c-work--time-out-market-osaka .c-work__logo:before {
  padding: 0 0 100%;
}

.c-work--onko-chishin .c-work__logo {
  width: 5.375rem;
}

.c-work--onko-chishin .c-work__logo:before {
  padding: 0 0 49.73262032085562%;
}

.c-work--yotel-tokyo-ginza .c-work__logo {
  width: 5.25rem;
  margin: .78125rem 0 0;
}

.c-work--yotel-tokyo-ginza .c-work__logo:before {
  padding: 0 0 26.767676767676768%;
}

.u-fs--18 {
  font-size: 1.1875rem;
  letter-spacing: 0;
  line-height: 1.315789473684211;
}

.u-w--el {
  font-weight: 200;
}

.u-w--l {
  font-weight: 300;
}

.u-w--r {
  font-weight: 400;
}

.u-w--m, .u-w--mi {
  font-weight: 500;
}

.u-w--mi {
  font-style: italic;
}

.u-w--sb {
  font-weight: 600;
}

.u-w--b {
  font-weight: 700;
}

.u-w--h {
  font-weight: 900;
}

.u-noto {
  font-family: 'Noto Sans JP', sans-serif;
}

.u-hide--m {
  display: none;
}

.p-404 {
  padding: 8.125rem 3.125rem 1.25rem;
}

.p-about-us__sct {
  color: #787878;
}

.p-about-us__sct+.p-about-us__sct {
  margin: 2.96875rem 0 0;
}

.p-about-us__sct h2 {
  color: #000;
  margin: 0 0 .9375rem;
  font-size: .75rem;
  letter-spacing: 0;
  line-height: 1;
}

.p-about-us__sct h3 {
  color: #000;
  margin: 0 0 .625rem;
}

.p-about-us__sct--en {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.5625;
}

.p-about-us__sct--en h3 {
  font-size: 1.5rem;
  letter-spacing: 0;
  line-height: 1.291666666666667;
}

.p-about-us__sct--ja {
  font-size: .875rem;
  letter-spacing: .01em;
  line-height: 1.785714285714286;
  margin: 1.40625rem 0 0;
}

.p-about-us__sct--ja h3 {
  font-size: 1.1875rem;
  letter-spacing: 0;
  line-height: 1.421052631578947;
}

.g-agreement {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #000;
  z-index: 28;
  display: none;
}

.g-agreement.is-active {
  display: block;
}

.g-agreement__inner {
  padding: 1.40625rem;
}

.g-agreement__text {
  color: #fff;
  flex: 1 1;
}

.g-agreement__text--en {
  font-weight: 200;
  font-size: .625rem;
  letter-spacing: 0;
  line-height: 1.2;
}

.g-agreement__text--ja {
  font-weight: 300;
  font-size: .5625rem;
  letter-spacing: 0;
  line-height: 1.333333333333333;
  margin: .25rem 0 .78125rem;
}

.g-agreement__buttons {
  display: flex;
  justify-content: space-between;
}

.g-agreement__button {
  border: 1px solid #fff;
  color: #fff;
  width: 10rem;
  height: 2.125rem;
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-size: .646875rem;
  letter-spacing: 0;
  line-height: 1;
  font-weight: 300;
  cursor: pointer;
}

.g-agreement__button:hover, .g-footer__nav a:hover {
  opacity: .7;
}

.g-agreement__button--accept {
  color: #000;
  background: #fff;
  margin: 0 0 0 .4375rem;
}

.g-footer {
  font-size: .8125rem;
  letter-spacing: .1em;
  line-height: 1;
  color: #211714;
  max-width: 1440px;
  margin: 0 auto;
}

.g-footer__inner {
  padding: 3.125rem 1.375rem 1.875rem 3.125rem;
  display: flex;
  flex-flow: wrap;
}

.g-footer [lang=ja] {
  font-size: .75rem;
  letter-spacing: .1em;
  line-height: 1.666666666666667;
}

.g-footer [lang=en] {
  font-size: .6875rem;
  letter-spacing: .05em;
  line-height: 1.636363636363636;
}

.g-footer__h {
  font-size: .875rem;
  margin: 0 0 .625rem;
}

.g-footer__nav {
  order: 1;
  width: 59.96705107084019%;
}

.g-footer__sns {
  order: 2;
  width: 40.0329489291598%;
}

.g-footer__sns__a {
  display: inline-flex;
  align-items: center;
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.g-footer__sns__a:hover {
  opacity: .7;
}

.g-footer__sns .c-sns {
  display: block;
  width: .9375rem;
  height: .9375rem;
  margin: 0 .6875rem 0 0;
}

.g-footer__office {
  width: 100%;
  order: 3;
  margin: 2.8125rem 0 0;
}

.g-footer__contact {
  margin: 1.5625rem 0 0;
  width: 100%;
  order: 4;
}

.g-footer__c {
  order: 5;
  width: 100%;
  margin: 2.8125rem 0 0;
  font-size: .6190625rem;
}

.g-header {
  padding: 1.5rem 1.40625rem;
  position: sticky;
  top: 0;
  z-index: 32;
  pointer-events: none;
  height: 4.375rem;
  margin: 0 0 -4.375rem;
  transition: background-color .3s;
}

.g-header a {
  pointer-events: auto;
}

.g-header.is-invert {
  background: #fff;
}

.g-header__logo {
  width: 7.8125rem;
  position: relative;
  z-index: 64;
}

.g-header__logo:before {
  padding: 0 0 17.026378896882495%;
}

.g-header__logo__img {
  transition: opacity .3s;
}

.g-header__logo__img--b {
  opacity: 0;
  z-index: 1;
}

.g-header__logo__img--w, .is-invert .g-header__logo__img--b,
.is-menu-close .is-invert .g-header__logo__img--b {
  opacity: 1;
}

.is-invert .g-header__logo__img--w,
.is-menu-close .is-invert .g-header__logo__img--w,
.is-menu-open .g-header__logo__img--b {
  opacity: 0;
}

.is-menu-open .g-header__logo__img--w {
  opacity: 1;
}

.g-header__nav {
  display: none;
}

.g-header__nav div+div {
  margin: 0 0 0 2em;
}

div.g-header__nav--instagram {
  margin: 0 0 0 2.375rem;
}

div.g-header__nav--instagram~div {
  margin: 0 0 0 1.125rem;
}

.g-header__a {
  display: inline-flex;
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.g-header__a:hover {
  opacity: .7;
}

.g-header__a.c-sns {
  display: block;
  width: 1.1875rem;
  height: 1.1875rem;
}

.g-header__menu, .g-header__menu span {
  position: absolute;
  width: 1.5625rem;
  display: inline-block;
}

.g-header__menu {
  height: 1.5625rem;
  top: 1.375rem;
  right: 1.40625rem;
  z-index: 64;
  pointer-events: auto;
  cursor: pointer;
}

.g-header__menu span {
  left: 0;
  height: .0625rem;
  background: #fff;
}

.is-invert .g-header__menu span {
  background: #000;
}

.g-header__menu span:first-child {
  top: .375rem;
}

.g-header__menu span:nth-child(2) {
  top: .71875rem;
}

.g-header__menu span:last-child {
  top: 1.09375rem;
}

.is-invert .g-header__menu span, .p-privacy-policy__block a {
  color: #000;
}

.is-menu-active .g-header__menu span {
  color: #fff;
  background: #fff;
}

.is-menu-open .g-header__menu span:nth-of-type(1) {
  animation: active-btn07-bar01 .75s forwards;
}

.is-menu-open .g-header__menu span:nth-of-type(2) {
  opacity: 0;
}

.is-menu-open .g-header__menu span:nth-of-type(3) {
  animation: active-btn07-bar03 .75s forwards;
}

.is-menu-close .g-header__menu span:nth-of-type(1) {
  animation: btn07-bar01 .75s forwards;
}

.is-menu-close .g-header__menu span:nth-of-type(2) {
  transition: opacity .25s .25s;
  opacity: 1;
}

.is-menu-close .g-header__menu span:nth-of-type(3) {
  animation: btn07-bar03 .75s forwards;
}

.is-menu-close .is-invert .g-header__menu span {
  background: #000;
}

.g-menu {
  visibility: hidden;
  pointer-events: none;
  color: #fff;
  font-size: 1.4375rem;
  letter-spacing: .05em;
  line-height: 1.739130434782609;
}

.is-menu-active .g-menu {
  position: fixed;
  visibility: visible;
  top: 0;
  left: 0;
  z-index: 56;
  transition: background-color .3s;
  width: 100%;
  height: 100%;
  overflow: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
  pointer-events: auto;
  background: 0 0;
}

.is-menu-active .g-menu::-webkit-scrollbar {
  display: none;
}

.is-menu-open .g-menu {
  background: #000;
}

.is-menu-close .g-menu {
  background: 0 0;
}

.g-menu__inner {
  padding: 5.625rem 3.125rem 3.125rem;
  display: flex;
  flex-flow: column;
  justify-content: center;
  min-height: 100%;
}

.g-menu__sns {
  margin: 4.0625rem 0 0;
  display: flex;
  align-items: center;
}

.g-menu__sns div+div {
  margin: 0 0 0 1.25rem;
}

.g-menu__sns .c-sns {
  display: block;
  width: 1.125rem;
  height: 1.125rem;
}

.g-menu__i {
  transition: opacity .5s ease-in-out;
  opacity: 0;
}

.is-menu-active .g-menu__i {
  transition-delay: var(--d, .3s);
}

.is-menu-open .g-menu__i {
  opacity: 1;
}

.is-menu-close .g-menu__i {
  transition: opacity .2s .2s;
  opacity: 0;
}

.g-menu__i--0 {
  --d: .3s;
}

.g-menu__i--1 {
  --d: .4s;
}

.g-menu__i--2 {
  --d: .5s;
}

.g-menu__i--3 {
  --d: .6s;
}

.g-menu__i--4 {
  --d: .7s;
}

.g-menu__i--5 {
  --d: .8s;
}

.g-menu__i--6 {
  --d: .9s;
}

.g-menu__i--7 {
  --d: 1s;
}

.g-menu__i--8 {
  --d: 1.1s;
}

.g-menu__i--9 {
  --d: 1.2s;
}

.g-menu__i--10 {
  --d: 1.3s;
}

.g-menu__i--11 {
  --d: 1.4s;
}

.p-home__lns {
  padding: .46875rem;
}

.p-home__ln.c-banner__pic:before {
  padding: 0 0 67.06666666666666%;
}

.p-home__ln.c-banner__text {
  font-size: 1.5625rem;
  padding: 1.875rem 2.1875rem;
}

.p-home__ln--about .c-banner__pic:before, .p-home__ln__video:before {
  padding: 0 0 69.86111111111111%;
}

.p-home__ln--works .c-banner__pic:before {
  padding: 0 0 117.63888888888889%;
}

.p-home__ln--services .c-banner__pic:before {
  padding: 0 0 47.36111111111111%;
}

.p-home__ln__video {
  position: relative;
  overflow: hidden;
  animation: fade-in .3s forwards;
}

.p-home__ln__video:before {
  display: block;
  content: '';
  width: 100%;
  height: 0;
}

.p-home__ln__video video, .p-mv__pic img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-home__ln__video video {
  transition: transform .8s;
}

.p-home__ln:hover video {
  transform: scale(1.07);
}

.p-home__works {
  padding: 3.4375rem 0;
}

.p-home__works__heading {
  font-size: 1.5625rem;
  letter-spacing: .05em;
  line-height: 1;
  margin: 0 0 1.375rem;
  text-align: center;
}

.p-home__works__wrapper {
  position: relative;
  padding: 0 3.125rem;
}

.p-home__works__li {
  width: 17.1875rem;
  height: 20.8125rem;
}

.p-home__works__li .c-work__pic:before {
  padding: 0 0 121.0909090909091%;
}

.p-home__works__li .c-work__ly__inner {
  height: 38.58858858858859%;
}

.p-home__works__li.c-work--gugu .c-work__logo {
  width: 5.90625rem;
}

.p-home__works__li.c-work--mesm .c-work__logo {
  width: 8.64675rem;
}

.p-home__works__li.c-work--kahara .c-work__logo {
  width: 9.5625rem;
}

.p-home__works__li.c-work--rosewood .c-work__logo {
  width: 11.4345rem;
}

.p-home__works__li.c-work--spandy .c-work__logo {
  width: 9.3555rem;
}

.p-home__works__li.c-work--goto .c-work__logo {
  width: 5.24475rem;
}

.p-home__works__li.c-work--shangrila .c-work__logo {
  width: 7.3143rem;
}

.p-home__works__li.c-work--olympics .c-work__logo {
  width: 8.547525rem;
}

.p-home__works__li.c-work--orkwood-kyoto .c-work__logo {
  width: 9.15625rem;
}

.p-home__works__li.c-work--orkwood-azabu .c-work__logo {
  width: 8.625rem;
}

.p-home__works__li.c-work--xsolla .c-work__logo {
  width: 4.375rem;
}

.p-home__works__li.c-work--choosechicago .c-work__logo {
  width: 6.3125rem;
  margin: 0 0 1em;
}

.p-home__works__li.c-work--sulwhasoo .c-work__logo {
  width: 10.78125rem;
  margin: 0 0 1em;
}

.p-home__works__li.c-work--orkwood-tokyo .c-work__logo {
  width: 5.5625rem;
}

.p-home__works__li.c-work--orkwood-yokohama .c-work__logo {
  width: 5.65625rem;
}

.p-home__works__li.c-work--hakuba-hotel .c-work__logo {
  width: 6.8625rem;
}

.p-home__works__li.c-work--hotel-groove .c-work__logo {
  width: 11.30625rem;
}

.p-home__works__li.c-work--bellustar-tokyo .c-work__logo {
  width: 12.88125rem;
}

.p-home__works__li.c-work--oto .c-work__logo {
  width: 7.36875rem;
}

.p-home__works__li.c-work--able-carry .c-work__logo {
  width: 11.025rem;
}

.p-home__works__li.c-work--mulia .c-work__logo {
  width: 12.15rem;
}

.p-home__works__li.c-work--time-out-market-osaka .c-work__logo {
  width: 5.5625rem;
}

.p-home__works__li.c-work--onko-chishin .c-work__logo {
  width: 7.09375rem;
}

.p-home__works__li.c-work--yotel-tokyo-ginza .c-work__logo {
  width: 7.5625rem;
}

.p-home__works__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: no-repeat 50% 50%/contain;
  width: 1.25rem;
  height: 2.5rem;
  outline: 0;
  cursor: pointer;
  transition: opacity .3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.p-home__works__arrow:hover {
  opacity: .7;
}

.p-home__works__arrow--prev {
  background-image: url(ui/arrow-left.svg);
  left: .9375rem;
}

.p-home__works__arrow--next {
  background-image: url(ui/arrow-right.svg);
  right: .9375rem;
}

.p-home__quote {
  display: flex;
  flex-flow: column;
  justify-content: center;
  height: 100%;
}

.p-home__quote__wrp {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 3.125rem 0 2.375rem;
  letter-spacing: .00004em;
  width: 100%;
}

.p-home__quote__swp__wrp {
  align-items: stretch;
}

.p-home__quote__slide {
  height: auto;
}

.p-home__quote__inr {
  padding: 0 .9375rem;
  flex: 1 0;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}

.p-home__quote__dq {
  font-size: 3.75rem;
  line-height: 1;
  font-family: Times, serif;
  font-style: italic;
  height: -webkit-max-content;
  height: max-content;
  flex-shrink: 0;
}

.p-home__quote p.-en {
  font-family: "Cormorant", serif;
  font-optical-sizing: auto;
  font-size: 1.125rem;
  line-height: 1.222222222222222;
  font-weight: 600;
  font-style: italic;
}

.p-home__quote p.-ja {
  font-family: "Noto Serif JP", serif;
  font-size: .8125rem;
  line-height: 1.692307692307692;
  font-weight: 400;
  margin: 1.125rem 0 0;
}

.p-home__quote footer {
  color: silver;
  font-size: .78125rem;
  line-height: 1.04;
  margin: 1.625rem 0 0;
}

.p-home__quote footer small {
  font-size: .625rem;
}

.p-home__quote footer p+p {
  margin: .3125rem 0 0;
}

.p-home__quote__ft {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 1.875rem 0 0;
}

.p-home__quote__pg {
  display: flex;
  align-items: center;
  gap: 1.5625rem;
  margin: 0 1.75rem;
}

.p-home__quote__pg .swiper-pagination-bullet {
  background: #fff;
  opacity: .2;
  transition: opacity .3s ease-in-out;
  width: .625rem;
  height: .625rem;
}

.p-home__quote__pg .swiper-pagination-bullet-active {
  opacity: 1;
}

.p-home__quote__nv {
  cursor: pointer;
}

.p-home__quote__nv:after {
  content: '';
  display: block;
  aspect-ratio: .657142857142857;
  width: .5rem;
  background: url(ui/arrow-swp.svg) no-repeat 50% 50%/contain;
}

.p-home__quote__nv.-prev:after {
  transform: rotate(180deg);
}

.p-home__quote__ctrl {
  cursor: pointer;
  width: .5625rem;
  margin: 0 0 0 1.625rem;
  aspect-ratio: .782608695652174;
  background: url(ui/pause.svg) no-repeat 50% 50%/contain;
}

.p-home__quote__ctrl.-play {
  background-image: url(ui/play.svg);
}

.p-home__contact {
  padding-top: 4.3125rem;
}

.p-home__membership {
  background: #fafafa;
}

.p-home__membership p[lang=en] {
  font-size: 1.1875rem;
  letter-spacing: 0;
  line-height: 1.315789473684211;
}

.p-home__membership .c-section {
  padding: 3.125rem;
}

.p-home__membership__wrapper {
  display: flex;
}

.p-home__membership h2 {
  font-size: .8125rem;
  letter-spacing: .1em;
  line-height: 1;
  color: #000;
  margin: 0 0 1.375rem;
}

.p-home__membership__inner {
  width: 59.82142857142857%;
  padding: 0 5.357142857142857% 0 0;
}

.p-home__membership__fig {
  width: 40.17857142857143%;
  padding: 1.875rem 0 0;
}

.p-mv, .p-mv__ly {
  position: relative;
}

.p-mv {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
}

.p-mv__ly {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
      grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
      grid-column: 1/2;
  overflow: hidden;
}

.p-mv__text {
  z-index: 1;
  display: flex;
  align-items: flex-end;
  color: #fff;
}

.p-mv__text__inner {
  padding: 6.25rem 3.125rem;
}

.p-mv__text--en {
  font-size: 1.25rem;
  letter-spacing: 0;
  line-height: 1.25;
}

.p-mv__text--ja {
  font-size: .875rem;
  letter-spacing: .13em;
  line-height: 1;
  margin: .9375rem 0 0;
}

.p-mv__swiper {
  z-index: 0;
  pointer-events: none;
}

.p-mv .swiper-container, .p-mv__pic {
  height: 100%;
}

.p-mv__pic {
  width: 100vw;
  position: relative;
  display: block;
}

.p-mv__pic img {
  display: block;
}

.p-privacy-policy {
  padding: 8.125rem 3.125rem 1.25rem;
}

.p-privacy-policy__header h1 {
  font-size: 2rem;
  letter-spacing: .05em;
  line-height: 1;
  margin: 0 0 2.5rem;
}

.p-privacy-policy__header [lang=ja] {
  margin-top: .5rem;
}

.p-privacy-policy__sct {
  margin: 2.25rem 0 0;
}

.p-privacy-policy__heading {
  font-size: .6875rem;
  line-height: 1.636363636363636;
  margin: 0 0 .5rem;
  font-weight: 900;
  color: #000;
}

.p-privacy-policy__block+.p-privacy-policy__block {
  margin: .5625rem 0 0;
}

.p-privacy-policy__block p+p {
  margin: .9375rem 0 0;
}

.p-services__sct {
  padding: .625rem 0 0;
}

.p-services__sct+.p-services__sct {
  margin: 3.125rem 0 0;
}

.p-services__heading {
  font-size: .6875rem;
  line-height: 1.636363636363636;
  margin: 0 0 1.5625rem;
  font-weight: 900;
  color: #000;
}

.p-services__block+.p-services__block {
  margin: 1.71875rem 0 0;
}

.p-services__block p+p {
  margin: 1.538461538461539em 0 0;
}

.p-services__pdf {
  font-size: 1.1875rem;
  letter-spacing: 0;
  line-height: 1.315789473684211;
}

.p-services__pdf__wrapper {
  display: flex;
  align-items: baseline;
  padding: .3125rem 0 0;
}

.p-services__pdf--ja {
  font-size: .9375rem;
  margin: 0 0 0 2.1875rem;
}

.p-services__pdf:after, .p-works__text__ln:after {
  content: '';
  display: inline-block;
  width: .6875rem;
  height: .6875rem;
  margin: 0 0 0 .625rem;
}

.p-services__pdf:after {
  background: url(ui/blank.svg) no-repeat 0 0/contain;
  vertical-align: .0625rem;
}

.p-services__menu {
  background: #000;
  color: #fff;
  position: sticky;
  z-index: 24;
  top: 4.375rem;
}

.p-services__menu__heading {
  font-size: 1.0625rem;
  letter-spacing: .05em;
  line-height: 1;
  padding: 0 1.40625rem 0 3.125rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  color: #797979;
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 35 21' width='35' height='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m15.09654 19.92746-13.92478-13.86469a3.38066 3.38066 0 0 1 0-4.7442l.2451-.2461a3.38437 3.38437 0 0 1 4.74419 0l8.93549 8.87359a3.34775 3.34775 0 0 0 4.8057 0l8.93648-8.8736a3.38426 3.38426 0 0 1 4.7441 0l.2461.2461a3.38233 3.38233 0 0 1 0 4.7442l-13.92668 13.8647a3.45963 3.45963 0 0 1 -4.8057 0z' fill='%23797979' fill-rule='evenodd'/%3E%3C/svg%3E") no-repeat top 50% right 2.03125rem;
  background-size: .5625rem;
  cursor: pointer;
}

.is-open .p-services__menu__heading {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 35 21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m19.90346 1.07264 13.92479 13.86471a3.38067 3.38067 0 0 1 0 4.74421l-.2451.2461a3.38438 3.38438 0 0 1 -4.7442 0l-8.93549-8.8736a3.34773 3.34773 0 0 0 -4.73388-.07182q-.03645.03537-.07182.07182l-8.93648 8.8736a3.38424 3.38424 0 0 1 -4.7441 0l-.2461-.2461a3.38233 3.38233 0 0 1 0-4.7442l13.92668-13.86472a3.45963 3.45963 0 0 1 4.8057 0z' fill='%23797979' fill-rule='evenodd'/%3E%3C/svg%3E");
}

.p-services__menu__c {
  padding: .625rem 0 0;
}

.p-services__menu__a {
  font-size: 1.1875rem;
  letter-spacing: .05em;
  line-height: 1.578947368421053;
  padding: 0 1.40625rem 0 3.125rem;
  display: flex;
  align-items: center;
}

.p-services__menu__price-list {
  margin: 2rem 0 0;
  padding: 0 0 2.34375rem 3.125rem;
}

.p-services__menu__price-list a {
  font-size: 1rem;
  letter-spacing: .03em;
  line-height: 1;
  border: 1px solid #fff;
  border-radius: 1.171875rem;
  width: 11.6875rem;
  height: 2.34375rem;
  transition: color .3s, background-color .3s;
  color: #fff;
}

.p-services__menu__price-list a:hover {
  background: #fff;
  color: #000;
}

.p-sustainability h3 {
  color: #000;
  margin: 0 0 .625rem;
}

.p-sustainability__text--en {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.5625;
  font-weight: 300;
}

.p-sustainability__text--en h3 {
  font-size: 1.5rem;
  letter-spacing: 0;
  line-height: 1.291666666666667;
}

.p-sustainability__text--ja {
  font-size: .875rem;
  letter-spacing: -.01em;
  line-height: 1.785714285714286;
  margin: 1.5625rem 0 0;
}

.p-sustainability__text--ja h3 {
  font-size: 1.1875rem;
  letter-spacing: 0;
  line-height: 1.421052631578947;
}

.p-sustainability__text p+p, .p-works__text__ln {
  margin: 1.5625rem 0 0;
}

.p-works__text__ln:after {
  background: url(ui/blank.gry.svg) no-repeat 0 0/contain;
  vertical-align: -.0625rem;
}

.p-works__text__ln+.p-works__text__ln {
  margin: 0;
}

.p-works__text--en {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.5625;
}

.p-works__text--ja {
  margin: 2.625rem 0 0;
  font-size: .875rem;
  letter-spacing: .01em;
  line-height: 1.785714285714286;
}

.p-works__wrapper {
  display: flex;
  flex-flow: wrap;
  margin: -.125rem 0 0 -.125rem;
}

.p-works__li {
  margin: .125rem 0 0 .125rem;
  width: 11.65625rem;
}

@media only screen and (min-width:768px) {
  html {
    font-size: 1.111111111111111vw;
  }

  body {
    font-size: 1.125rem;
    letter-spacing: 0;
    line-height: 2.111111111111111;
  }

  [lang=en] {
    font-size: 1.5rem;
    line-height: 1.583333333333333;
  }

  .c-container {
    max-width: 1055px;
    padding: 6.875rem 6.25rem 7.5rem;
    margin: 0 auto;
  }

  .c-heading--1 {
    font-size: 3.125rem;
    margin: 0 0 2.5rem;
  }

  .c-ln--tel {
    pointer-events: none;
  }

  .c-ln--l {
    font-size: 1.25rem;
    line-height: 1.5;
  }

  .c-ln--l b {
    width: 5rem;
  }

  .c-ln--blank:after {
    width: .9375rem;
    height: .9375rem;
    margin: 0 0 0 .5rem;
  }

  .c-section {
    padding: 15rem 6.25rem;
  }

  .c-section [lang=ja] {
    margin: .9375rem 0 0;
  }

  .c-section__footer {
    margin: 2.625rem 0 0;
  }

  .c-section__sns {
    margin: 1.375rem 0 0;
  }

  .c-section__sns .c-sns {
    width: 1.25rem;
    height: 1.25rem;
  }

  .c-section__sns .c-sns+.c-sns {
    margin: 0 0 0 1.5625rem;
  }

  .c-banners {
    display: flex;
    margin: .1875rem 0 0;
    justify-content: space-between;
  }

  .c-banner {
    width: calc(50% - .125rem);
    margin: 0;
  }

  .c-banner__text {
    font-size: 2rem;
    padding: 4rem 5.25rem;
  }

  .c-banner__pic:before {
    padding: 0 0 47.49303621169916%;
  }

  .c-fv__inner {
    padding: 4.375rem 6.25rem;
  }

  .c-fv__pic:before {
    padding: 0 0 40.97222222222222%;
  }

  .c-fv h1 {
    font-size: 2.875rem;
  }

  .c-read {
    font-size: 1.454545454545455vw;
  }

  .c-read h3 {
    margin: 0 0 .75rem;
  }

  .c-read p+p {
    margin: 2.375rem 0 0;
  }

  .c-read--en {
    font-size: 1.5em;
    line-height: 1.583333333333333;
  }

  .c-read--en h3 {
    font-size: 1.166666666666667em;
    line-height: 1.285714285714286;
  }

  .c-read--ja {
    font-size: 1.125em;
    line-height: 2.111111111111111;
    letter-spacing: 0;
    margin: 5.277777777777778em 0 0;
  }

  .c-read--ja h3 {
    font-size: 1.333333333333333em;
    line-height: 1.5;
  }

  .c-work:hover .c-work__bg, .c-work:hover .c-work__hv {
    opacity: 1;
    transform: scale(1.03);
  }

  .c-work__hv {
    display: block;
    opacity: 0;
    transition: opacity .3s, transform .9s;
  }

  .c-work__bg {
    transition: transform .9s;
  }

  .c-work__pic:before {
    padding: 0 0 94.14225941422593%;
  }

  .c-work--gugu .c-work__logo, .p-home__works__li.c-work--gugu .c-work__logo {
    width: 9.1875rem;
  }

  .c-work--mesm .c-work__logo {
    width: 12.875rem;
  }

  .c-work--kahara .c-work__logo {
    width: 13.125rem;
  }

  .c-work--rosewood .c-work__logo {
    width: 16.8125rem;
  }

  .c-work--spandy .c-work__logo {
    width: 12.5625rem;
  }

  .c-work--goto .c-work__logo {
    width: 8.125rem;
  }

  .c-work--shangrila .c-work__logo {
    width: 14.5rem;
  }

  .c-work--olympics .c-work__logo {
    width: 17.5625rem;
  }

  .c-work--orkwood-kyoto .c-work__logo {
    width: 15.0625rem;
    transform: translate(0, -.1875rem);
  }

  .c-work--orkwood-azabu .c-work__logo {
    width: 12.75rem;
  }

  .c-work--xsolla .c-work__logo {
    width: 7.25rem;
  }

  .c-work--choosechicago .c-work__logo {
    width: 10.75rem;
  }

  .c-work--sulwhasoo .c-work__logo {
    width: 11.0625rem;
  }

  .c-work--orkwood-tokyo .c-work__logo {
    width: 7.875rem;
  }

  .c-work--orkwood-yokohama .c-work__logo {
    width: 8.125rem;
  }

  .c-work--hakuba-hotel .c-work__logo {
    width: 7.625rem;
  }

  .c-work--hotel-groove .c-work__logo {
    width: 12.5625rem;
  }

  .c-work--bellustar-tokyo .c-work__logo {
    width: 14.3125rem;
  }

  .c-work--oto .c-work__logo {
    width: 8.1875rem;
  }

  .c-work--able-carry .c-work__logo {
    width: 11.9375rem;
  }

  .c-work--mulia .c-work__logo {
    width: 13.5rem;
  }

  .c-work--time-out-market-osaka .c-work__logo {
    width: 9.375rem;
    margin: .15625rem 0 0;
  }

  .c-work--onko-chishin .c-work__logo {
    width: 11.6875rem;
    margin: 1.0625rem 0 0;
  }

  .c-work--yotel-tokyo-ginza .c-work__logo {
    width: 12.375rem;
    margin: 1.75rem 0 0;
  }

  .u-fs--18 {
    font-size: 1.75rem;
    line-height: 1.285714285714286;
  }

  .u-hide {
    display: none;
  }

  .u-hide--m {
    display: inline;
  }

  .p-404 {
    padding-top: 13.75rem;
    min-height: 500px;
  }

  .p-about-us__sct+.p-about-us__sct {
    margin: 8.125rem 0 0;
  }

  .p-about-us__sct h2 {
    font-size: .875rem;
    margin: 0 0 1.875rem;
  }

  .p-about-us__sct h3 {
    margin: 0 0 .75rem;
  }

  .p-about-us__sct p+p {
    margin: 2.125rem 0 0;
  }

  .p-about-us__sct--en {
    font-size: 1.375rem;
    line-height: 1.545454545454545;
  }

  .p-about-us__sct--en h3 {
    font-size: 1.75rem;
    line-height: 1.285714285714286;
  }

  .p-about-us__sct--ja {
    font-size: 1.1875rem;
    line-height: 1.789473684210526;
    margin: 5.5rem 0 0;
  }

  .p-about-us__sct--ja h3 {
    font-size: 1.5rem;
    line-height: 1.5;
  }

  .g-agreement__inner {
    padding: 1.875rem 6.25rem;
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    align-items: center;
  }

  .g-agreement__text--en {
    font-size: .875rem;
    line-height: 1.285714285714286;
  }

  .g-agreement__text--ja {
    font-size: .8125rem;
    line-height: 1.384615384615385;
  }

  .g-agreement__buttons {
    margin: 0 0 0 3.125rem;
  }

  .g-agreement__button {
    width: 9.375rem;
    height: 2.8125rem;
    font-size: .875rem;
    line-height: 1.285714285714286;
    font-weight: 500;
  }

  .g-footer__inner {
    padding: 5rem 2.5rem 3.75rem;
    max-width: 1320px;
    margin: 0 auto;
  }

  .g-footer [lang=en], .g-footer [lang=ja] {
    font-size: .875rem;
    line-height: 1.857142857142857;
  }

  .g-footer__h {
    font-size: .8125rem;
    margin: 0 0 .9375rem;
  }

  .g-footer__nav {
    width: 12.0625rem;
    flex-shrink: 0;
    white-space: nowrap;
  }

  .g-footer__sns {
    order: 4;
    width: auto;
    flex: 1 0 auto;
  }

  .g-footer__sns__inner {
    width: 18.75rem;
    max-width: 300px;
    margin: 0 0 0 auto;
  }

  .g-footer__sns__wrapper {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
  }

  .g-footer__sns__wrapper p {
    width: 50%;
  }

  .g-footer__sns__wrapper p:nth-child(n+3) {
    margin-top: .75rem;
  }

  .g-footer__sns__a, .p-home__quote footer small {
    font-size: .75rem;
  }

  .g-footer__sns .c-sns {
    width: 1.25rem;
    height: 1.25rem;
    margin: 0 .9375rem 0 0;
  }

  .g-footer__office {
    order: 2;
    width: auto;
    padding: 0 3.125rem 0 0;
    max-width: 355px;
    margin: 0;
  }

  .g-footer__office [lang=en] {
    line-height: 1.428571428571429;
    margin: .5rem 0 0;
  }

  .g-footer__contact {
    width: auto;
    white-space: nowrap;
    max-width: 180px;
    order: 3;
    margin: 0;
  }

  .g-footer__c {
    font-size: .75rem;
    margin: 1.5625rem 0 0;
    padding: 0 0 0 12.0625rem;
  }

  .g-header {
    position: relative;
    padding: 2.625rem 2.5rem;
    height: 7.5rem;
    margin: 0 0 -7.5rem;
  }

  .g-header__inner {
    max-width: 1320px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .g-header__logo, .p-home__works__li.c-work--mesm .c-work__logo {
    width: 12.875rem;
  }

  .g-header__nav {
    color: #fff;
    font-size: .9375rem;
    letter-spacing: .05em;
    line-height: 1;
    display: flex;
    align-items: center;
    transition: color .3s;
  }

  .is-invert .g-header__nav {
    color: #000;
  }

  .g-header__menu, .is-menu-active .g-menu {
    display: none;
  }

  .p-home__lns {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 503fr 350fr 341fr;
    grid-template-rows: 503fr 350fr 341fr;
    -ms-grid-columns: 1fr .1875rem 1fr;
    grid-template-columns: 1fr .1875rem 1fr;
    padding: .1875rem 0 0;
  }

  .p-home__ln.c-banner {
    width: 100%;
  }

  .p-home__ln.c-banner__text {
    padding: 3.75rem 6.25rem;
  }

  .p-home__ln--about {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
        grid-row: 1/2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
        grid-column: 3/4;
    width: 100%;
  }

  .p-home__ln--works {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
        grid-row: 1/3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
        grid-column: 1/2;
  }

  .p-home__ln--services {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
        grid-row: 3/4;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
        grid-column: 1/2;
    margin: .1875rem 0 0;
  }

  .p-home__ln--sustainability {
    margin: .1875rem 0 0;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
        grid-row: 2/4;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
        grid-column: 3/4;
  }

  .p-home__ln__video {
    position: relative;
  }

  .p-home__ln__video:before {
    display: block;
    content: '';
    width: 100%;
    height: 0;
    padding: 0 0 95%;
  }

  .p-home__works {
    padding: 6.875rem 0;
    max-width: 1440px;
    margin: 0 auto;
  }

  .p-home__works__heading {
    font-size: 2rem;
    margin: 0 0 3.125rem;
  }

  .p-home__works__wrapper {
    padding: 0 9.9375rem;
  }

  .p-home__works__li {
    width: 23.375rem;
    height: 28.1875rem;
  }

  .p-home__works__li .c-work__pic:before {
    padding: 0 0 120.58823529411764%;
  }

  .p-home__works__li.c-work--kahara .c-work__logo {
    width: 13.125rem;
  }

  .p-home__works__li.c-work--rosewood .c-work__logo {
    width: 16.8125rem;
  }

  .p-home__works__li.c-work--spandy .c-work__logo {
    width: 12.5625rem;
  }

  .p-home__works__li.c-work--goto .c-work__logo {
    width: 8.125rem;
  }

  .p-home__works__li.c-work--shangrila .c-work__logo {
    width: 13.05rem;
  }

  .p-home__works__li.c-work--olympics .c-work__logo {
    width: 15.80625rem;
  }

  .p-home__works__li.c-work--orkwood-kyoto .c-work__logo {
    width: 13.55625rem;
  }

  .p-home__works__li.c-work--orkwood-azabu .c-work__logo {
    width: 11.475rem;
  }

  .p-home__works__li.c-work--xsolla .c-work__logo {
    width: 6.525rem;
  }

  .p-home__works__li.c-work--choosechicago .c-work__logo {
    width: 10.625rem;
  }

  .p-home__works__li.c-work--sulwhasoo .c-work__logo {
    width: 14.375rem;
  }

  .p-home__works__li.c-work--orkwood-tokyo .c-work__logo {
    width: 6.9375rem;
  }

  .p-home__works__li.c-work--orkwood-yokohama .c-work__logo {
    width: 7.1875rem;
  }

  .p-home__works__li.c-work--hakuba-hotel .c-work__logo {
    width: 7.625rem;
  }

  .p-home__works__li.c-work--hotel-groove .c-work__logo {
    width: 12.5625rem;
  }

  .p-home__works__li.c-work--bellustar-tokyo .c-work__logo {
    width: 14.3125rem;
  }

  .p-home__works__li.c-work--oto .c-work__logo {
    width: 8.1875rem;
  }

  .p-home__works__li.c-work--able-carry .c-work__logo {
    width: 11.9375rem;
  }

  .p-home__works__li.c-work--mulia .c-work__logo {
    width: 13.5rem;
  }

  .p-home__works__li.c-work--time-out-market-osaka .c-work__logo {
    width: 8.375rem;
  }

  .p-home__works__li.c-work--onko-chishin .c-work__logo {
    width: 10.25rem;
  }

  .p-home__works__li.c-work--yotel-tokyo-ginza .c-work__logo {
    width: 11.25rem;
  }

  .p-home__works__arrow {
    width: 2.8125rem;
    height: 5.3125rem;
  }

  .p-home__works__arrow--prev {
    left: 5rem;
  }

  .p-home__works__arrow--next {
    right: 5rem;
  }

  .p-home__quote__inr {
    max-width: 75rem;
    margin: 0 auto;
  }

  .p-home__quote__dq {
    font-size: 5rem;
  }

  .p-home__quote p.-en {
    font-size: 1.6875rem;
    line-height: 1.111111111111111;
  }

  .p-home__quote p.-ja {
    font-size: 1.0625rem;
    line-height: 1.647058823529412;
  }

  .p-home__quote footer {
    font-size: 1.0625rem;
    margin: 2.25rem 0 0;
  }

  .p-home__quote__ft {
    margin: 2.5rem 0 0;
  }

  .p-home__quote__pg {
    gap: 1.25rem;
    margin: 0 1.625rem;
  }

  .p-home__quote__pg .swiper-pagination-bullet {
    width: .5rem;
    height: .5rem;
  }

  .p-home__quote__nv:after {
    width: .4375rem;
  }

  .p-home__quote__ctrl {
    margin: 0 0 0 1.0625rem;
    width: .5rem;
  }

  .p-home__contact {
    padding-top: 7.8125rem;
  }

  .p-home__membership p[lang=en] {
    font-size: 1.5625rem;
  }

  .p-home__membership .c-section {
    padding: 6.25rem;
  }

  .p-home__membership h2 {
    margin: 0 0 1rem;
  }

  .p-home__membership__inner {
    width: auto;
    flex: 1 1 auto;
    padding: 0;
  }

  .p-home__membership__fig {
    width: 15.625rem;
    padding: 0 3.75rem;
  }

  .p-mv__text {
    justify-content: flex-end;
  }

  .p-mv__text__inner {
    padding: 10.625rem 6.25rem;
  }

  .p-mv__text--en {
    font-size: 2.125rem;
    line-height: 1.529411764705882;
  }

  .p-mv__text--ja {
    font-size: 1.25rem;
    margin: .625rem 0 0;
  }

  .p-privacy-policy {
    padding-top: 13.75rem;
  }

  .p-privacy-policy__header h1 {
    font-size: 3rem;
    margin: 0 0 2.5rem;
  }

  .p-privacy-policy__sct {
    margin: 4.6875rem 0 0;
  }

  .p-privacy-policy__heading {
    font-size: .875rem;
    line-height: 1.571428571428571;
    margin: 0 0 .875rem;
  }

  .p-privacy-policy__block__wrapper {
    display: flex;
  }

  .p-privacy-policy__block {
    width: 48.24561403508772%;
  }

  .p-privacy-policy__block[lang=en] {
    font-size: .9375rem;
    line-height: 1.6;
  }

  .p-privacy-policy__block[lang=ja] {
    font-size: .9375rem;
    line-height: 1.733333333333333;
  }

  .p-privacy-policy__block+.p-privacy-policy__block {
    margin: 0 0 0 3.508771929824561%;
  }

  .p-privacy-policy__block p+p {
    margin: 1.125rem 0 0;
  }

  .p-services__sct {
    padding: 1.25rem 0 0;
  }

  .p-services__sct+.p-services__sct {
    margin: 6.875rem 0 0;
  }

  .p-services__heading {
    font-size: 1rem;
    line-height: 1.625;
  }

  .p-services__heading span {
    font-size: 1.125rem;
  }

  .p-services__block+.p-services__block {
    margin: 1.875rem 0 0;
  }

  .p-services__pdf__wrapper {
    padding: .625rem 0 0;
  }

  .p-services__pdf {
    font-size: 1.5625rem;
  }

  .p-services__pdf--ja {
    font-size: 1.25rem;
    margin: 0 0 0 4.5rem;
  }

  .p-services__pdf:after, .p-works__text__ln:after {
    width: .9375rem;
    height: .9375rem;
  }

  .p-services__menu {
    top: 0;
  }

  .p-services__menu__heading {
    padding: 0 2.8125rem 0 6.25rem;
    height: 5.625rem;
  }

  .p-services__menu__c {
    padding: 1.25rem 0 0;
  }

  .p-services__menu__a {
    padding: 0 2.8125rem 0 6.25rem;
  }

  .p-services__menu__price-list {
    padding: 0 0 4.6875rem 6.25rem;
  }

  .p-sustainability h3 {
    margin: 0 0 .75rem;
  }

  .p-sustainability__text--en {
    font-size: 1.5rem;
    line-height: 1.583333333333333;
  }

  .p-sustainability__text--en h3 {
    font-size: 1.75rem;
    line-height: 1.285714285714286;
  }

  .p-sustainability__text--ja {
    margin: 5.9375rem 0 0;
    font-size: 1.125rem;
    letter-spacing: 0;
    line-height: 2.111111111111111;
  }

  .p-sustainability__text--ja h3 {
    font-size: 1.5rem;
    line-height: 1.5;
  }

  .p-sustainability__text p+p {
    margin: 2.375rem 0 0;
  }

  .p-works__text__ln {
    margin: .875rem 0 0;
    font-size: 1.375rem;
  }

  .p-works__text--en {
    font-size: 1.5rem;
    line-height: 1.583333333333333;
  }

  .p-works__text--ja {
    margin: 3.25rem 0 0;
    font-size: 1.125rem;
    line-height: 2.111111111111111;
  }

  .p-works__text--ja p+p {
    font-size: 1rem;
  }

  .p-works__wrapper {
    margin: -.138888888888889% 0 0 -.138888888888889%;
  }

  .p-works__li {
    width: 33.14840499306519%;
    margin: .13869625520111% 0 0 .13869625520111%;
  }
}

@media only screen and (min-width:901px) {
  .p-services__menu__inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 3.75rem 0 2.1875rem;
  }

  .p-services__menu__heading {
    display: none;
  }

  .p-services__menu__wrapper {
    display: flex !important;
    align-items: center;
    width: 100%;
    height: 5.25rem;
  }

  .p-services__menu__c {
    padding: 0;
    display: flex;
    height: 100%;
  }

  .p-services__menu__a {
    font-size: 1rem;
    letter-spacing: .03em;
    line-height: 1.875;
    justify-content: center;
    padding: 0 1.5625rem;
    transition: background-color .3s;
  }

  .p-services__menu__a:hover {
    background: rgba(255, 255, 255, .15) url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 35 21' width='35' height='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m15.09654 19.92746-13.92478-13.86469a3.38066 3.38066 0 0 1 0-4.7442l.2451-.2461a3.38437 3.38437 0 0 1 4.74419 0l8.93549 8.87359a3.34775 3.34775 0 0 0 4.8057 0l8.93648-8.8736a3.38426 3.38426 0 0 1 4.7441 0l.2461.2461a3.38233 3.38233 0 0 1 0 4.7442l-13.92668 13.8647a3.45963 3.45963 0 0 1 -4.8057 0z' fill='%23fff' fill-rule='evenodd'/%3E%3C/svg%3E") no-repeat bottom 1.0625rem left 50%/.625rem;
  }

  .p-services__menu__price-list {
    padding: 0;
    margin: 0;
    flex: 1 1 auto;
  }

  .p-services__menu__price-list a {
    font-size: .875rem;
    width: 9.375rem;
    height: 1.875rem;
    border-radius: .9375rem;
    margin: 0 0 0 auto;
  }
}

@media only screen and (min-width:1101px) {
  .c-read {
    font-size: 16px;
  }
}

@media only screen and (min-width:1441px) {
  html {
    font-size: 100%;
  }

  .c-read {
    font-size: 1rem;
  }
}

@media only screen and (max-width:900px) {
  .p-services__menu__a+.p-services__menu__a {
    margin-top: .9375rem;
  }
}

@media only screen and (max-width:767px) {
  .g-footer__sns p:first-child {
    margin: 1rem 0 0;
  }

  .g-footer__sns p+p {
    margin: .75rem 0 0;
  }

  .p-home__ln+.p-home__ln {
    margin: .46875rem 0 0;
  }

  .p-privacy-policy__block--mt {
    margin: 1.40625rem 0 0;
  }
}

@media only screen and (max-width:320px) {
  html {
    font-size: 87.5%;
  }
}
