@charset "UTF-8";
/*foundation---------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Encode+Sans+Expanded:wght@100;200;300;400;500;600;700;800;900&family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Cormorant:wght@500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
/*
Theme Name: ANGKORE
Theme URI: https://angkore-dev.aws.sofos.work
Author: LOADOUT
Author URI: https://loadout.jp
Description: ANGKORE Theme
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

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

input[type="text"] {
  outline: none; }

input[type="number"] {
  outline: none; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

*,
*:before,
*:after {
  box-sizing: border-box; }

a,
a:visited,
button {
  display: inline-block;
  text-decoration: none; }

html {
  background: #fff; }
  @media screen and (max-width: 650px) {
    html {
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      overflow: hidden;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; } }
  html.scroll-prevent {
    /*動き固定*/
    position: fixed;
    /*奥行きを管理*/
    z-index: -1;
    /*下2つで背景を元のサイズのまま表示*/
    width: 100%;
    height: 100%; }

body {
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif !important;
  line-height: 1;
  color: #1A1A1A;
  font-size: 0.1rem;
  /* IE, Edge 対応 */
  -ms-overflow-style: none;
  /* Firefox 対応 */
  scrollbar-width: none;
  /* Chrome, Safari 対応 */ }
  @media screen and (max-width: 650px) {
    body {
      color: #fff;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; } }
  body::-webkit-scrollbar {
    display: none; }
  body.is-modal-open {
    overflow-y: hidden; }

:root {
  min-height: 0vw; }

@media screen and (min-width: 1241px) {
  html {
    font-size: calc(100px * .7); } }

@media screen and (min-width: 651px) and (max-width: 1240px) {
  html {
    font-size: calc(100vw / 18); } }

@media screen and (max-width: 650px) {
  html {
    font-size: calc(100vw / 3.75); } }

img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

select::-ms-expand {
  display: none; }

@media screen and (min-width: 651px) {
  .is-pc {
    display: block; } }

@media screen and (max-width: 650px) {
  .is-pc {
    display: none; } }

@media screen and (min-width: 651px) {
  .is-sp {
    display: none; } }

@media screen and (max-width: 650px) {
  .is-sp {
    display: block; } }

@media screen and (min-width: 651px) {
  .is-pc-import {
    display: flex !important; } }

@media screen and (max-width: 650px) {
  .is-pc-import {
    display: none !important; } }

@media screen and (min-width: 651px) {
  .is-sp-import {
    display: none !important; } }

@media screen and (max-width: 650px) {
  .is-sp-import {
    display: flex !important; } }

/*-------------------------------------------*/
/*utility------------------------------------*/
@media screen and (min-width: 651px) {
  .is-inputArea {
    width: 100%;
    padding: 0.2rem;
    font-size: .2rem;
    border: none;
    margin: 0.2rem 0 0.4rem 0;
    border-radius: 0.1rem; }
  .is-contactSubmit {
    background: #A38E56;
    color: #fff;
    padding: 0.15rem 1.2rem;
    border-radius: 1rem;
    font-size: .2rem;
    border: none; }
  .is-inputContentArea {
    width: 100%;
    border: none;
    min-height: 3rem;
    font-size: .2rem;
    padding: 0.2rem;
    border-radius: 0.1rem;
    margin: 0.2rem 0 0.4rem 0; }
  .is-itemWidth {
    width: 16vw;
    flex-shrink: 0;
    border-right: solid 0.5px #a9a9a9;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100); }
  .is-fullWidth {
    width: calc(32vw + 4vw) !important; }
  .is-coverView {
    transform: translate3d(0, 0, 0) !important; }
  .is-view {
    opacity: 1 !important; }
  .is-hide {
    opacity: 0 !important; }
  .is-hideLogo {
    opacity: 0 !important;
    transition: all .2s 0s linear !important; }
  .is-transparent {
    background: transparent !important; }
  .is-noneEvent {
    cursor: auto !important;
    pointer-events: none !important; }
  .is-noneBg {
    background: transparent !important;
    z-index: 7000; }
  .is-translate {
    transform: translate(0, 0) !important; }
  .is-currentLang {
    opacity: 1 !important;
    font-weight: 600 !important;
    pointer-events: none !important; }
  .is-currentPage {
    text-decoration: none !important;
    pointer-events: none !important; }
  .is-currentGlobalPage {
    border-left: 1.5px #fff solid; }
  .is-halfInput {
    width: 48% !important; }
  .is-bgGray {
    background: #707070 !important; }
  .is-allPointerEvents {
    pointer-events: auto !important; }
  .is-nonePointerEvents {
    pointer-events: none !important; }
  .is-transView {
    transform: translate(0, 0) !important;
    opacity: 1 !important; }
  .is-mirror {
    transform: scaleX(-1) !important; }
  .is-centerPosition {
    transform: translate(-50%, -50%) !important; }
  .is-heightAll {
    transform: translate(0, 0) !important; }
    .is-heightAll::after {
      transform: translate(0, 0) !important; }
  .is-noneTransPosition {
    transform: translate(0, 0) !important; }
  .is-borderActive::after {
    transform: translate(0, 0) scale(1) !important; }
  .is-hoverLinkOut {
    opacity: 0 !important;
    transform: translate(1.5vw, 0) !important; }
  .is-hoverLinkEnter {
    opacity: 1 !important;
    transform: translate(4vw, 0) !important; }
  .is-hamburgerLinkActive {
    transform: translate(10%, 0) !important; }
  .is-hamburgerLinkBg {
    background: #999 !important; }
  .is-hamburgerBg0 {
    background: url("./assets/images/hamburger_bg0.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important; }
  .is-hamburgerBg1 {
    background: url("./assets/images/hamburger_bg1.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important; }
  .is-hamburgerBg2 {
    background: url("./assets/images/hamburger_bg2.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important; }
  .is-hamburgerBg3 {
    background: url("./assets/images/hamburger_bg3.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important; }
  .is-activeHamburgerCover {
    opacity: 1 !important; }
  .is-firstHamburgerLine {
    transform: translate(25%, 0) !important; }
  .is-secondHamburgerLine {
    transform: translate(50%, 0) !important; }
  .is-openedHamburger .p-toggle__hamburgerButtonLine:first-of-type {
    transform: translate(0, 0) rotate(55deg) !important; }
  .is-openedHamburger .p-toggle__hamburgerButtonLine:nth-of-type(2) {
    opacity: 0 !important; }
  .is-openedHamburger .p-toggle__hamburgerButtonLine:last-of-type {
    transform: translate(0, 0) rotate(-55deg) !important; }
  .is-transitionNow {
    overflow: hidden !important; }
  .is-closeTransition {
    transform: translate(0, 0) !important;
    transition: all 0.5s 0s cubic-bezier(0.8, 0, 0.2, 1) !important; }
  .is-openTransition {
    transform: translate(0, -100%) !important; }
  .is-overWrap {
    z-index: 999999 !important; } }

@media screen and (max-width: 650px) {
  .is-inputArea {
    width: 100%;
    padding: 0.08rem;
    font-size: .14rem;
    border-radius: 0.03rem;
    border: none;
    background: #eee;
    margin: 0.1rem 0 0.2rem 0; }
  .is-contactSubmit {
    background: #A38E56;
    color: #fff;
    padding: 0.08rem 0rem;
    border-radius: 1rem;
    font-size: .14rem;
    border: none;
    width: 2rem;
    text-align: center; }
  .is-inputContentArea {
    width: 100%;
    padding: 0.08rem;
    font-size: .14rem;
    border-radius: 0.03rem;
    border: none;
    background: #eee;
    margin: 0.1rem 0 0.2rem 0; }
  .is-view {
    opacity: 1 !important; }
  .is-hide {
    opacity: 0 !important; }
  .is-itemWidth {
    display: block; }
  .is-fullWidth {
    width: 87vw !important;
    height: 4rem !important; }
  .is-noneTransform {
    transform: translate(0, 0) !important; }
  .is-transparent {
    background: transparent !important; }
  .is-coverView {
    transform: translate3d(0, 0, 0) !important; }
  .is-whiteHeader .l-header__contents {
    background: #fff !important; }
  .is-whiteHeader .l-header__link {
    color: #233036 !important; }
  .is-translate {
    transform: translate(0, 0) !important; }
  .is-heightAll {
    transform: translate(0, 0) !important; }
    .is-heightAll::after {
      transform: translate(0, 0) !important; }
  .is-noneTransPosition {
    transform: translate(0, 0) !important; }
  .is-allPointerEvents {
    pointer-events: auto !important; }
  .is-nonePointerEvents {
    pointer-events: none !important; }
  .is-activeHamburgerCover {
    opacity: 1 !important; }
  .is-openedHamburger .p-toggle__hamburgerButtonLine {
    background: #fff !important; }
    .is-openedHamburger .p-toggle__hamburgerButtonLine:first-of-type {
      transform: translate(0, 0) rotate(48deg) !important; }
    .is-openedHamburger .p-toggle__hamburgerButtonLine:nth-of-type(2) {
      opacity: 0 !important; }
    .is-openedHamburger .p-toggle__hamburgerButtonLine:last-of-type {
      transform: translate(0, 0) rotate(-48deg) !important; }
  .is-transView {
    transform: translate(0, 0) !important;
    opacity: 1 !important; }
  .is-transitionNow {
    pointer-events: none !important; }
  .is-closeTransition {
    transform: translate(0, 0) !important;
    transition: all 0.6s 0s cubic-bezier(0.8, 0, 0.2, 1) !important; }
  .is-openTransition {
    transform: translate(0, -100%) !important; }
  .is-hamburgerLineBlack {
    background: #000 !important; }
  .is-mirror {
    transform: rotate(-90deg) !important; }
  .is-hideWrap {
    overflow: hidden !important; }
  .is-activeHamburger .p-hamburger__logo {
    pointer-events: all !important;
    opacity: 1 !important;
    transition: all .3s 0.2s ease-out !important; }
  .is-overWrap {
    z-index: 999999 !important; }
  .is-currentLang {
    opacity: 1 !important;
    font-weight: 600 !important;
    pointer-events: none !important; } }

.is-statementBg {
  background: url("./assets/images/featured01.png") !important; }

.is-systemBg {
  background: url("./assets/images/featured02.png") !important; }

.is-memberBg {
  background: url("./assets/images/featured03.png") !important; }

/*-------------------------------------------*/
/*layout-------------------------------------*/
@media screen and (min-width: 651px) {
  .l-main__logo {
    position: fixed;
    top: .7rem;
    width: 3rem;
    left: 7vw;
    z-index: 10000;
    transition: all .3s 0s ease-out;
    pointer-events: auto !important; }
    .l-main__logo--hide {
      opacity: 0; }
  .l-main__bg {
    background: url(./assets/images/wrap_bg.png);
    background-size: cover;
    background-position: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100); } }

@media screen and (max-width: 650px) {
  .l-main__logo {
    transition: all .3s 0s ease-out;
    pointer-events: auto !important;
    width: 35vw;
    margin: 0.3rem 0 0 0.15rem; } }

@media screen and (min-width: 651px) {
  .l-wrap {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100); }
    .l-wrap__contents {
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100); } }

@media screen and (max-width: 650px) {
  .l-wrap__contents {
    width: 100%;
    width: 87vw;
    margin: 0 0 0 auto;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    overflow-y: scroll; }
  .l-wrap__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    background: url(./assets/images/wrap_bg.png);
    background-size: cover;
    z-index: -1; } }

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9000;
  pointer-events: auto !important; }
  .l-header__contents {
    background: url(./assets/images/wrap_bg.png);
    background-size: cover;
    background-position: left;
    padding: 0.4rem 0;
    border-right: solid 0.5px #a9a9a9;
    width: 4vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    display: flex;
    justify-content: center;
    align-items: flex-end;
    transition: all .3s 0s ease-out; }
    @media screen and (max-width: 650px) {
      .l-header__contents {
        background: url(./assets/images/wrap_bg.png);
        background-size: cover;
        background-position: left;
        padding: 0.4rem 0;
        border-right: solid 0.5px #a9a9a9;
        width: 13vw;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
        display: flex;
        justify-content: center;
        align-items: flex-end;
        transition: all .3s 0s ease-out; } }
  .l-header__list {
    margin: auto 0 0 0; }
  .l-header__item {
    margin: 0.7rem 0 0 0; }
    @media screen and (max-width: 650px) {
      .l-header__item {
        margin: 0.2rem 0 0 0; } }
  .l-header__link {
    writing-mode: vertical-rl;
    transform: scale(-1, -1);
    color: #fff;
    font-size: .18rem;
    line-height: 4vw;
    position: relative;
    overflow: hidden;
    width: 4vw; }
    @media screen and (max-width: 650px) {
      .l-header__link {
        writing-mode: vertical-rl;
        transform: scale(-1, -1);
        color: #fff;
        font-size: .13rem;
        line-height: 13vw;
        position: relative;
        overflow: hidden;
        width: 13vw; } }
    .l-header__link::after {
      content: '';
      width: 1.5px;
      height: 100%;
      position: absolute;
      bottom: 0;
      left: 0;
      background: #fff;
      transform: translate(0, 0) scale(0);
      transition: all .2s 0s ease-in; }
    .l-header__link span {
      display: block;
      transition: all .3s 0s ease-in; }
      .l-header__link span:first-of-type {
        transform: translate(0, 0);
        opacity: 1; }
      .l-header__link span:last-of-type {
        transform: translate(1.5vw, 0);
        opacity: 0; }
  .l-header__nav {
    height: 100%;
    display: flex;
    flex-direction: column; }

@media screen and (min-width: 651px) {
  .l-footer {
    pointer-events: auto !important; }
    .l-footer--fixed {
      position: fixed;
      bottom: 0;
      z-index: -1; }
    .l-footer__contents {
      background: #2b2b2b;
      height: 100vh;
      padding: 2rem 3rem 0.7rem calc(1.5rem + 4vw);
      display: flex;
      flex-direction: column;
      width: 100vw; }
    .l-footer__frame {
      margin: 0.5rem 0 0 0;
      width: 45%; }
    .l-footer__title {
      font-size: .6rem;
      color: #fff;
      font-weight: 400;
      font-family: "Cormorant", serif;
      letter-spacing: .015rem; }
    .l-footer__logo {
      width: 2rem;
      margin: 0.6rem 0 0 0; }
    .l-footer__company {
      color: #fff;
      font-size: .18rem;
      margin: 0.4rem 0 0 0; }
    .l-footer__address {
      line-height: 1.5;
      color: #fff;
      font-size: .18rem;
      margin: 0.2rem 0 0 0; }
    .l-footer__text {
      line-height: 1.5;
      color: #fff;
      font-size: .18rem;
      margin: 0.5rem 0 0 0; }
    .l-footer__contact {
      background: #A38E56;
      padding: 0.2rem 0.8rem;
      border-radius: 1rem;
      color: #fff;
      font-size: .2rem;
      margin: 0.7rem 0 0 0; }
    .l-footer__copyrightFrame {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: auto; }
    .l-footer__policy {
      color: #fff;
      font-size: .18rem; }
    .l-footer__copyright {
      color: #fff;
      font-size: .18rem; } }

@media screen and (max-width: 650px) {
  .l-footer {
    width: 100% !important;
    pointer-events: auto !important; }
    .l-footer__contents {
      background: #2b2b2b;
      padding: 0.3rem;
      width: 87vw; }
    .l-footer__title {
      font-size: .36rem;
      font-weight: 400;
      font-family: "Cormorant", serif;
      letter-spacing: .015rem; }
    .l-footer__logo {
      width: 1.2rem;
      margin: 0.3rem 0 0 0; }
    .l-footer__company {
      font-size: .13rem;
      margin: 0.1rem 0 0 0; }
    .l-footer__address {
      line-height: 1.5;
      margin: 0.2rem 0 0 0;
      font-size: .11rem; }
    .l-footer__text {
      margin: 0.15rem 0 0 0;
      line-height: 1.5;
      font-size: .11rem; }
    .l-footer__contact {
      background: #A38E56;
      padding: 0.12rem 0.3rem;
      border-radius: 1rem;
      color: #fff;
      font-size: .12rem;
      margin: 0.25rem 0 0 0; }
    .l-footer__copyrightFrame {
      margin: 0.2rem 0 0 0; }
    .l-footer__copyrightFrame {
      margin: 0.2rem 0 0 0; }
    .l-footer__policy {
      color: #fff;
      font-size: .11rem;
      text-decoration: underline !important; }
    .l-footer__copyright {
      margin: 0.6rem 0 0 0;
      font-size: .1rem; } }

/*-------------------------------------------*/
/*component----------------------------------*/
.c-coverImage {
  width: 36vw;
  flex-shrink: 0;
  position: relative; }
  @media screen and (max-width: 650px) {
    .c-coverImage {
      width: 87vw;
      flex-shrink: 0;
      position: relative; } }
  .c-coverImage__imageFrame {
    background-size: cover !important;
    background-position: center !important;
    width: 36vw;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    position: relative; }
    @media screen and (max-width: 650px) {
      .c-coverImage__imageFrame {
        background-size: cover !important;
        background-position: top !important;
        width: 87vw;
        height: 4rem;
        position: relative; } }
  .c-coverImage__imageFrameInner {
    width: calc(100% - 4vw);
    height: 100%;
    position: relative;
    margin: 0 0 0 auto; }
    @media screen and (max-width: 650px) {
      .c-coverImage__imageFrameInner {
        width: 87vw;
        height: 4rem;
        position: relative;
        margin: 0 0 0 auto; } }
  .c-coverImage__itemInner {
    position: absolute;
    bottom: 2rem;
    left: 16vw;
    transform: translate(-50%, 0); }
    @media screen and (max-width: 650px) {
      .c-coverImage__itemInner {
        position: absolute;
        top: auto;
        left: 0.25rem;
        transform: translate(0, 0);
        bottom: 0.3rem; } }
    @media screen and (max-width: 650px) {
      .c-coverImage__itemInner--listView {
        position: absolute;
        top: 1.6rem;
        left: 0.2rem;
        transform: translate(0, 0); } }
  .c-coverImage__title {
    overflow: hidden; }
  .c-coverImage__titleText {
    font-size: 4.5vw;
    color: #fff;
    display: block;
    transition: all 0.6s 0s cubic-bezier(0, 0.6, 0.4, 1);
    transform: translate(0, 100%);
    white-space: nowrap;
    font-family: "Cormorant", serif;
    font-weight: 600; }
    @media screen and (max-width: 650px) {
      .c-coverImage__titleText {
        font-size: .37rem;
        color: #fff;
        display: block;
        transition: all 0.6s 0s cubic-bezier(0, 0.6, 0.4, 1);
        transform: translate(0, 100%);
        white-space: nowrap;
        font-family: "Cormorant", serif;
        font-weight: 600; } }

.c-breadcrumb {
  margin: 0.4rem 0 0 0;
  overflow: hidden;
  line-height: 1.5;
  pointer-events: auto !important; }
  @media screen and (max-width: 650px) {
    .c-breadcrumb {
      margin: 0.15rem 0 0 0;
      overflow: hidden;
      line-height: 1.5;
      pointer-events: auto !important; } }
  .c-breadcrumb__list {
    display: flex;
    align-items: center;
    transition: all 0.6s 0s cubic-bezier(0, 0.6, 0.4, 1);
    transform: translate(0, 100%);
    white-space: nowrap; }
    .c-breadcrumb__list li:last-of-type::after {
      display: none; }
  .c-breadcrumb__item {
    margin: 0 0.2rem 0 0; }
    @media screen and (max-width: 650px) {
      .c-breadcrumb__item {
        margin: 0 0.07rem 0 0; } }
    .c-breadcrumb__item::after {
      content: '>';
      font-size: .22rem;
      color: #fff;
      margin: 0 0 0 0.2rem; }
      @media screen and (max-width: 650px) {
        .c-breadcrumb__item::after {
          content: '>';
          font-size: .11rem;
          color: #fff;
          margin: 0 0 0 0.05rem;
          font-weight: 200; } }
  .c-breadcrumb__link {
    color: #fff;
    font-size: .2rem; }
    @media screen and (max-width: 650px) {
      .c-breadcrumb__link {
        color: #fff;
        font-size: .11rem; } }
    .c-breadcrumb__link:hover {
      text-decoration: underline !important; }

.c-button {
  color: #A38E56;
  border: solid 1px #A38E56;
  border-radius: 1rem;
  padding: 0.15rem 0.4rem;
  font-size: .2rem; }
  @media screen and (max-width: 650px) {
    .c-button {
      color: #A38E56;
      border: solid 1px #A38E56;
      border-radius: 1rem;
      padding: 0.1rem 0.2rem;
      font-size: .12rem; } }

@media screen and (min-width: 651px) {
  .c-arrowCircle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, calc(-50% + 4rem));
    width: 58px;
    overflow: hidden; }
    .c-arrowCircle__contents {
      position: relative;
      overflow: hidden; }
    .c-arrowCircle__arrowLine {
      width: 40%;
      height: 1px;
      background: #fff;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-230%, -50%);
      transition: all 0.2s 0s cubic-bezier(0, 0.6, 0.4, 1); }
      .c-arrowCircle__arrowLine::before {
        content: '';
        width: 30%;
        height: 1px;
        background: #fff;
        position: absolute;
        top: 50%;
        right: 0;
        transform-origin: right;
        transform: translate(0, -50%) rotate(45deg); }
      .c-arrowCircle__arrowLine::after {
        content: '';
        width: 30%;
        height: 1px;
        background: #fff;
        position: absolute;
        top: 50%;
        right: 0;
        transform-origin: right;
        transform: translate(0, -50%) rotate(-45deg); }
    .c-arrowCircle__svg {
      transform: translate(-29px, 0) rotate(-90deg); }
    .c-arrowCircle__border {
      fill: transparent;
      stroke: #fff;
      stroke-width: 1;
      animation: circleOut .3s forwards 0s; }
  .is-circleHover {
    animation: circle .3s forwards 0s; }
  @keyframes circle {
    0% {
      stroke-dasharray: 0 366; }
    99.9%,
    to {
      stroke-dasharray: 366 366; } }
  @keyframes circleOut {
    0% {
      stroke-dasharray: 366 366; }
    99.9%,
    to {
      stroke-dasharray: 0 366; } } }

@media screen and (max-width: 650px) {
  .c-arrowCircle {
    display: none; } }

.c-detailHero {
  min-height: calc(var(--vh, 1vh) * 100);
  min-height: 100vh;
  display: flex;
/* 2024-07-03 
  flex-direction: column;
  justify-content: center;
  position: relative;
*/ }
  @media screen and (max-width: 650px) {
    .c-detailHero {
      min-height: 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
      position: relative;
      padding: 0.35rem 0 0.5rem;
      height: 100% !important; } }
  .c-detailHero__inner {
    /**padding: 0 1rem;**/ padding: 0; margin-right: -1rem; margin-left: -1rem;}
    @media screen and (max-width: 650px) {
      .c-detailHero__inner {
/*         padding: 0.6rem 0.32rem 0; */
        padding: 0; margin-right: -0.2rem; margin-left: -0.2rem; } }
  .c-detailHero__title {
    margin: 0.3rem 0;
    font-size: .63rem;
    line-height: 1.4;
    color: #1A1A1A;
    font-family: 'Encode Sans Expanded', sans-serif;
    font-weight: 500; }
    @media screen and (max-width: 650px) {
      .c-detailHero__title {
        margin: 0.2rem 0;
        font-size: .18rem;
        line-height: 1.3;
        color: #1A1A1A;
        font-family: 'Encode Sans Expanded', sans-serif;
        font-weight: 500; } }
  .c-detailHero__subTitle {
    margin: 0.3rem 0;
    font-size: .27rem;
    line-height: 1.4;
    font-weight: 500;
    color: #1A1A1A;
    position: relative;/**/}
    @media screen and (max-width: 650px) {
      .c-detailHero__subTitle {
        margin: 0.2rem 0;
        font-size: .13rem;
        line-height: 1.3;
        font-weight: 500;
        color: #1A1A1A; } }
  .c-detailHero__text {
    margin: 1rem 0 0 0;
    font-size: .22rem;
    line-height: 1.4;
    color: #1A1A1A; }
    @media screen and (max-width: 650px) {
      .c-detailHero__text {
        margin: 0.4rem 0 0 0;
        font-size: .12rem;
        line-height: 1.5;
        color: #1A1A1A; } }
  .c-detailHero__image {
    /**max-width: 10rem;**/
/* 2024-07-03 
    max-width: 100%;
    width: 100%;
    position: relative;
*/
    width: calc(100vw - 36vw);
    position: absolute;
    bottom: 0;
    }
  .c-detailHero__image p {
    position: absolute;
    width: 100%;
    text-align: center;
    bottom: 2.4rem;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 100;
    color: #ffffff;
    font-size: 4.0vw;
    font-family: "Cormorant", serif;
    font-weight: 600;
    }
    @media screen and (max-width: 650px) {
      .c-detailHero__image {
        max-width: none;
        width: 100%;
        position: relative;
        z-index: 1; }
      .c-detailHero__image p {
        top: 50%;
        left: 50%;
        z-index: 2;
        font-size: .17rem; }}
  .c-detailHero__scroll {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translate(-50%, 0) rotate(-90deg); }
    @media screen and (max-width: 650px) {
      .c-detailHero__scroll {
        display: none; } }
  .c-detailHero__scrollText {
    font-size: .16rem;
    font-weight: 500;
    position: relative;
    color: #1a1a1a;
    font-family: 'Encode Sans Expanded', sans-serif; }
    .c-detailHero__scrollText::after {
      content: '';
      width: 100%;
      height: 1px;
      background: #1a1a1a;
      display: block;
      position: absolute;
      bottom: -70%;
      right: 0; }
    .c-detailHero__scrollText::before {
      content: '';
      width: 36%;
      height: 1px;
      background: #1a1a1a;
      display: block;
      position: absolute;
      bottom: -70%;
      left: 0;
      transform: rotate(30deg);
      transform-origin: left; }

/*-------------------------------------------*/
/*project------------------------------------*/
.p-hamburger {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9500;
  pointer-events: none; }
  .p-hamburger__shutterList {
    display: flex; }
    .p-hamburger__shutterList li:first-of-type {
      width: 4vw;
      transition: all 0.5s 0s cubic-bezier(0.8, 0, 0.2, 1);
      border-right: solid 0.5px #a9a9a9; }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:first-of-type {
          width: 13vw;
          transition: all 0.6s 0s cubic-bezier(0.8, 0, 0.2, 1);
          border-right: solid 0.5px #a9a9a9; } }
    .p-hamburger__shutterList li:nth-of-type(2) {
      transition: all 0.5s 0.05s cubic-bezier(0.8, 0, 0.2, 1); }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:nth-of-type(2) {
          transition: all 0.6s 0.04s cubic-bezier(0.8, 0, 0.2, 1); } }
    .p-hamburger__shutterList li:nth-of-type(3) {
      transition: all 0.5s 0.1s cubic-bezier(0.8, 0, 0.2, 1);
      border-right: solid 0.5px #a9a9a9; }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:nth-of-type(3) {
          transition: all 0.6s 0.08s cubic-bezier(0.8, 0, 0.2, 1); } }
    .p-hamburger__shutterList li:nth-of-type(4) {
      transition: all 0.5s 0.15s cubic-bezier(0.8, 0, 0.2, 1); }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:nth-of-type(4) {
          transition: all 0.6s 0.12s cubic-bezier(0.8, 0, 0.2, 1); } }
    .p-hamburger__shutterList li:nth-of-type(5) {
      transition: all 0.5s 0.2s cubic-bezier(0.8, 0, 0.2, 1); }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:nth-of-type(5) {
          transition: all 0.6s 0.16s cubic-bezier(0.8, 0, 0.2, 1); } }
    .p-hamburger__shutterList li:nth-of-type(6) {
      transition: all 0.5s 0.25s cubic-bezier(0.8, 0, 0.2, 1); }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:nth-of-type(6) {
          display: none; } }
    .p-hamburger__shutterList li:last-of-type {
      transition: all 0.5s 0.3s cubic-bezier(0.8, 0, 0.2, 1); }
      @media screen and (max-width: 650px) {
        .p-hamburger__shutterList li:last-of-type {
          display: none; } }
  .p-hamburger__shutterItem {
    width: 16vw;
    height: 100vh;
    background: #707070;
    transform: translate(0, -100%);
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 650px) {
      .p-hamburger__shutterItem {
        width: 21.75vw;
        height: 100vh;
        background: #707070;
        transform: translate(0, -100%);
        position: relative;
        overflow: hidden; } }
  .p-hamburger__contents {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh; }
  .p-hamburger__inner {
    display: flex;
    height: 100%;
    width: 100%; }
    @media screen and (max-width: 650px) {
      .p-hamburger__inner {
        position: relative; } }
  @media screen and (max-width: 650px) {
    .p-hamburger__logo {
      pointer-events: auto !important;
      width: 35vw;
      position: fixed;
      top: 0.3rem;
      left: 0.64rem;
      opacity: 0;
      pointer-events: none; } }
  .p-hamburger__headFrame {
    width: 4vw; }
    @media screen and (max-width: 650px) {
      .p-hamburger__headFrame {
        width: 13vw; } }
  .p-hamburger__parentList {
    width: 32vw;
    padding: 2.5rem 0 0 0;
    opacity: 0;
    transition: all 0.5s 0s cubic-bezier(0.8, 0, 0.2, 1); }
    @media screen and (max-width: 650px) {
      .p-hamburger__parentList {
        width: 87vw;
        padding: 0;
        opacity: 0;
        transition: all 0.5s 0s cubic-bezier(0.8, 0, 0.2, 1);
        display: flex;
        justify-content: center;
        flex-direction: column; } }
  .p-hamburger__parentItem {
    height: 13vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 0 0 0 0.3rem;
    cursor: pointer;
    transition: all 0.7s 0s cubic-bezier(0, 0.7, 0.3, 1); }
    @media screen and (max-width: 650px) {
      .p-hamburger__parentItem {
        height: 0.7rem;
        display: flex;
        justify-content: center;
        flex-direction: column;
        padding: 0 0 0 0.15rem;
        cursor: pointer;
        transition: all 0.7s 0s cubic-bezier(0, 0.7, 0.3, 1); } }
  .p-hamburger__parentTextFrame {
    color: #fff;
    font-size: .6rem;
    overflow: hidden;
    transition: all 0.7s 0s cubic-bezier(0, 0.7, 0.3, 1);
    transform: translate(0, 0); }
    @media screen and (max-width: 650px) {
      .p-hamburger__parentTextFrame {
        color: #fff;
        font-size: .2rem;
        overflow: hidden;
        transition: all 0.7s 0s cubic-bezier(0, 0.7, 0.3, 1);
        transform: translate(0, 0); } }
  .p-hamburger__parentText {
    font-family: "Cormorant", serif;
    font-weight: 600;
    transform: translate(0, 100%);
    display: block;
    transition: all 0.7s 0s cubic-bezier(0, 0.7, 0.3, 1); }
  .p-hamburger__childFrame {
    width: 32vw;
    height: 100vh; }
    @media screen and (max-width: 650px) {
      .p-hamburger__childFrame {
        display: none; } }
  .p-hamburger__coverFrame {
    opacity: 0;
    pointer-events: none;
    width: 32vw;
    height: 100vh;
    transition: all .3s 0s linear;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: cover !important;
    background: url(./assets/images/detail_bg.png); }
    @media screen and (max-width: 650px) {
      .p-hamburger__coverFrame {
        display: none; } }

@media screen and (min-width: 651px) {
  .p-hero {
    width: fit-content;
    padding: 0 0 0 4vw; }
    .p-hero__contents {
      position: relative; }
    .p-hero__textArea {
      position: absolute;
      bottom: 10vw;
      left: 50%;
      transform: translate(-50%, 0);
      width: 80%; }
    .p-hero__list {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-hero__head {
      color: #fff;
      font-size: 1.8vw;
      line-height: 1.3; }
    .p-hero__text {
      color: #fff;
      line-height: 2.1;
      font-size: .8vw;
      transform: translate(0, 20px);
      opacity: 0;
      transition: all 1s 0s cubic-bezier(0, 0.7, 0.3, 1); }
  .p-hero__head {
    display: flex;
    overflow: hidden; }
  .p-hero__head span {
    transform: translateY(150%);
    display: block;
    animation: 2s updown-anim cubic-bezier(0, 0.7, 0.3, 1) forwards; }
  .p-hero__head span:nth-child(1) {
    animation-delay: 0.45s; }
  .p-hero__head span:nth-child(2) {
    animation-delay: 0.475s; }
  .p-hero__head span:nth-child(3) {
    animation-delay: 0.5s; }
  .p-hero__head span:nth-child(4) {
    animation-delay: 0.525s; }
  .p-hero__head span:nth-child(5) {
    animation-delay: 0.55s; }
  .p-hero__head span:nth-child(6) {
    animation-delay: 0.575s; }
  .p-hero__head span:nth-child(7) {
    animation-delay: 0.6s; }
  .p-hero__head span:nth-child(8) {
    animation-delay: 0.625s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(1) {
    animation-delay: .65s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(2) {
    animation-delay: .675s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(3) {
    animation-delay: .7s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(4) {
    animation-delay: .725s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(5) {
    animation-delay: .75s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(6) {
    animation-delay: .775s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(7) {
    animation-delay: .8s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(8) {
    animation-delay: .825s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(9) {
    animation-delay: .85s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(10) {
    animation-delay: .875s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(11) {
    animation-delay: .9s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(12) {
    animation-delay: .925s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(13) {
    animation-delay: .95s; } }

@media screen and (max-width: 650px) {
  .p-hero__contents {
    padding: 1.8rem 0 0 0;
    position: relative; }
  .p-hero__inner {
    width: 90%;
    margin: 0 auto; }
  .p-hero__textArea {
    font-size: .18rem;
    line-height: 1.5; }
  .p-hero__text {
    font-size: .115rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.8;
    transform: translate(0, 10px);
    opacity: 0;
    transition: all 1s 0s cubic-bezier(0, 0.7, 0.3, 1); }
  .p-hero__list {
    display: none; }
  .p-hero__head {
    display: flex;
    overflow: hidden;
    font-size: 5vw; }
  .p-hero__head span {
    transform: translateY(150%);
    display: block;
    animation: 2s updown-anim cubic-bezier(0, 0.7, 0.3, 1) forwards; }
  .p-hero__head span:nth-child(1) {
    animation-delay: 0.45s; }
  .p-hero__head span:nth-child(2) {
    animation-delay: 0.475s; }
  .p-hero__head span:nth-child(3) {
    animation-delay: 0.5s; }
  .p-hero__head span:nth-child(4) {
    animation-delay: 0.525s; }
  .p-hero__head span:nth-child(5) {
    animation-delay: 0.55s; }
  .p-hero__head span:nth-child(6) {
    animation-delay: 0.575s; }
  .p-hero__head span:nth-child(7) {
    animation-delay: 0.6s; }
  .p-hero__head span:nth-child(8) {
    animation-delay: 0.625s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(1) {
    animation-delay: .65s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(2) {
    animation-delay: .675s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(3) {
    animation-delay: .7s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(4) {
    animation-delay: .725s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(5) {
    animation-delay: .75s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(6) {
    animation-delay: .775s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(7) {
    animation-delay: .8s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(8) {
    animation-delay: .825s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(9) {
    animation-delay: .85s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(10) {
    animation-delay: .875s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(11) {
    animation-delay: .9s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(12) {
    animation-delay: .925s; }
  .p-hero__textArea .p-hero__head:last-of-type span:nth-child(13) {
    animation-delay: .95s; } }

@keyframes updown-anim {
  0% {
    transform: translateY(110%); }
  50% {
    transform: translateY(0); }
  100% {
    transform: translateY(0); } }

@media screen and (min-width: 651px) {
  .p-featured {
    width: fit-content; }
    .p-featured__contents {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-featured__list {
      display: flex;
      align-items: center;
      justify-content: center; }
    .p-featured__item {
      border: none !important;
      transition: all .3s 0s ease-out;
      cursor: pointer;
      position: relative; }
    .p-featured__headFrame {
      position: relative;
      border: none !important;
      transform: translate(0, 530px); }
    .p-featured__title {
      writing-mode: vertical-rl;
      transform: scale(-1, -1);
      color: #fff;
      font-size: 6.5vw;
      position: absolute;
      bottom: 0rem;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-featured__titleText {
      margin: 0 0 6rem 0;
      position: relative;
      line-height: 1;
      font-weight: 500;
      white-space: nowrap;
      font-family: "Cormorant", serif; }
      .p-featured__titleText::after {
        content: '';
        width: 3.5rem;
        height: 1px;
        background: #fff;
        position: absolute;
        top: -3rem;
        left: 50%;
        transform: translate(-50%, 0) rotate(-90deg); }
    .p-featured__itemFrame {
      overflow: hidden; }
    .p-featured__imageFrame {
      background: url(./assets/images/featured01.png);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background-position: center !important;
      background-size: cover !important;
      width: 32vw;
      transition: all .3s 0s ease-out; }
    .p-featured__itemInner {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      opacity: 1;
      transition: all .3s 0s ease-out;
      width: 11.5vw; }
    .p-featured__itemLabel {
      color: #fff;
      font-size: .18rem;
      line-height: 1.3;
      font-family: "Cormorant", serif;
      font-weight: 600;
      position: relative; }
      .p-featured__itemLabel::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.3rem;
        transform: translate(0, -50%);
        height: 1px;
        width: 0.5rem;
        background: #fff; }
    .p-featured__itemTextArea {
      margin: 0.6rem 0 0 0; }
    .p-featured__itemHead {
      color: #fff;
      font-size: .19rem;
      line-height: 1.3; }
    .p-featured__itemText {
      color: #fff;
      line-height: 1.7;
      font-size: .2rem;
      margin: 0.4rem 0 0 0; } }

@media screen and (max-width: 650px) {
  .p-featured__contents {
    margin: 0.8rem 0 0 0; }
  .p-featured__textArea p {
    font-size: .12rem;
    line-height: 1.7;
    color: #000; }
  .p-featured__textArea pre {
    font-size: .12rem;
    line-height: 1.7;
    color: #000; }
  .p-featured__textArea h1 {
    font-size: .46rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea h2 {
    font-size: .4rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea h3 {
    font-size: .34rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea h4 {
    font-size: .28rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea h5 {
    font-size: .22rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea h6 {
    font-size: .16rem;
    line-height: 1.5;
    color: #000; }
  .p-featured__textArea strong {
    font-size: .12rem;
    line-height: 1.7;
    font-weight: 600;
    color: #000; }
  .p-featured__headFrame {
    overflow: hidden; }
  .p-featured__title {
    font-size: 13vw;
    display: flex;
    align-items: center;
    font-weight: 500;
    font-family: "Cormorant", serif; }
  .p-featured__titleText {
    margin: 0 1.1rem 0 0;
    position: relative;
    transform: translate(0.05rem, 0); }
    .p-featured__titleText::after {
      content: '';
      width: 0.7rem;
      height: 1.5px;
      background: #fff;
      position: absolute;
      top: 58%;
      right: -32%;
      transform: translate(0, -50%); }
  .p-featured__itemFrame {
    position: relative;
    overflow: hidden;
    height: 2rem;
    width: 87vw;
    transition: height .3s 0s ease-out;
    will-change: height;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .p-featured__imageFrame {
    background-size: cover !important;
    height: 4rem;
    width: 87vw;
    background-position: top !important;
    transform: translate(0, 0);
    transition: transform .3s 0s ease-out; }
  .p-featured__itemInner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    transition: all .3s 0s ease-out; }
  .p-featured__itemLabel {
    color: #fff;
    font-size: .11rem;
    padding: 0 0 0 0.2rem;
    line-height: 1.2;
    position: relative;
    font-family: "Cormorant", serif; }
    .p-featured__itemLabel::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: auto;
      transform: none;
      height: 100%;
      width: 1.5px;
      background: #fff;
      top: 0; }
  .p-featured__itemTextArea {
    margin: 0.2rem auto 0;
    width: 80%; }
  .p-featured__itemHead {
    color: #fff;
    font-size: .135rem;
    line-height: 1.3; }
  .p-featured__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.4; } }

@media screen and (min-width: 651px) {
  .scroll {
    background-color: transparent; }
  .scroll_container {
    width: 100%;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    position: relative;
    overflow: hidden;
    background: url(./assets/images/wrap_bg.png);
    background-size: cover;
    background-position: center; }
  .scroll_wrap {
    display: flex;
    position: absolute;
    top: 0;
    left: 0; }
  .scroll_box {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    display: flex;
    justify-content: center;
    align-items: center; } }

.p-fixCover {
  pointer-events: none;
  width: fit-content;
  opacity: 0;
  transition: all .3s 0s ease-out; }
  .p-fixCover__item {
    border: none !important;
    transition: all .3s 0s ease-out;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 8500; }
    @media screen and (max-width: 650px) {
      .p-fixCover__item {
        border: none !important;
        transition: all .3s 0s ease-out;
        position: fixed;
        top: 0;
        left: 13vw;
        z-index: 8500;
        pointer-events: none; } }
  @media screen and (max-width: 650px) {
    .p-fixCover__itemFrame {
      pointer-events: none; } }
  .p-fixCover__imageFrame {
    height: 100vh;
    background-position: center !important;
    background-size: cover !important;
    width: calc(32vw + 4vw);
    transition: all .3s 0s ease-out; }
    @media screen and (max-width: 650px) {
      .p-fixCover__imageFrame {
        height: 4rem;
        background-position: top !important;
        background-size: cover !important;
        width: 87vw;
        transition: all .3s 0s ease-out; } }

@media screen and (min-width: 651px) {
  .p-projects {
    width: fit-content; }
    .p-projects__contents {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-projects__list {
      display: flex;
      align-items: center;
      justify-content: center; }
    .p-projects__item {
      border: none !important;
      transition: all .3s 0s ease-out;
      cursor: pointer;
      position: relative; }
    .p-projects__headFrame {
      position: relative;
      border: none !important;
      transform: translate(0, -300px); }
    .p-projects__title {
      writing-mode: vertical-rl;
      transform: scale(-1, -1);
      color: #fff;
      font-size: 6vw;
      position: absolute;
      bottom: 0rem;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-projects__titleText {
      margin: 0 0 6rem 0;
      position: relative;
      line-height: 1;
      font-family: "Cormorant", serif;
      font-weight: 500;
      white-space: nowrap; }
      .p-projects__titleText::after {
        content: '';
        width: 3.5rem;
        height: 1px;
        background: #fff;
        position: absolute;
        top: -3rem;
        left: 50%;
        transform: translate(-50%, 0) rotate(-90deg); }
    .p-projects__itemFrame {
      overflow: hidden; }
    .p-projects__imageFrame {
      background: url(./assets/images/featured01.png);
      height: 100vh;
      background-position: center !important;
      background-size: cover !important;
      width: 32vw;
      transition: all .3s 0s ease-out; }
    .p-projects__itemInner {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      opacity: 1;
      transition: all .3s 0s ease-out;
      width: 11.5vw; }
    .p-projects__itemLabel {
      color: #fff;
      font-size: .18rem;
      line-height: 1.3;
      font-family: "Cormorant", serif;
      font-weight: 600;
      position: relative; }
      .p-projects__itemLabel::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.3rem;
        transform: translate(0, -50%);
        height: 1px;
        width: 0.5rem;
        background: #fff; }
    .p-projects__itemTextArea {
      margin: 1.4rem 0 0 0; }
    .p-projects__itemHead {
      color: #fff;
      font-size: .19rem;
      line-height: 1.3; }
    .p-projects__itemText {
      color: #fff;
      line-height: 1.7;
      font-size: .2rem;
      margin: 0.4rem 0 0 0; } }

@media screen and (max-width: 650px) {
  .p-projects__contents {
    margin: 0.8rem 0 0 0; }
  .p-projects__headFrame {
    overflow: hidden; }
  .p-projects__title {
    font-size: 13vw;
    display: flex;
    align-items: center;
    font-weight: 500;
    font-family: "Cormorant", serif; }
  .p-projects__titleText {
    margin: 0 1.1rem 0 0;
    position: relative;
    transform: translate(-8.2rem, 0); }
    .p-projects__titleText::after {
      content: '';
      width: 0.7rem;
      height: 1.5px;
      background: #fff;
      position: absolute;
      top: 58%;
      right: -32%;
      transform: translate(0, -50%); }
  .p-projects__itemFrame {
    position: relative;
    overflow: hidden;
    height: 2rem;
    width: 87vw;
    transition: height .3s 0s ease-out;
    will-change: height;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .p-projects__imageFrame {
    background-size: cover !important;
    height: 4rem;
    width: 87vw;
    background-position: top !important;
    transform: translate(0, 0);
    transition: transform .3s 0s ease-out; }
  .p-projects__itemInner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    transition: all .3s 0s ease-out; }
  .p-projects__itemLabel {
    color: #fff;
    font-size: .11rem;
    padding: 0 0 0 0.2rem;
    line-height: 1.2;
    position: relative;
    font-family: "Cormorant", serif; }
    .p-projects__itemLabel::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: auto;
      transform: none;
      height: 100%;
      width: 1.5px;
      background: #fff;
      top: 0; }
  .p-projects__itemTextArea {
    margin: 0.2rem auto 0;
    width: 80%; }
  .p-projects__itemHead {
    color: #fff;
    font-size: .135rem;
    line-height: 1.3; }
  .p-projects__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.4; } }

@media screen and (min-width: 651px) {
  .p-about {
    width: fit-content; }
    .p-about__contents {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-about__list {
      display: flex;
      align-items: center;
      justify-content: center; }
    .p-about__item {
      transition: all .3s 0s ease-out;
      cursor: pointer;
      position: relative; }
    .p-about__headFrame {
      position: relative;
      transform: translate(0, 0px); }
    .p-about__title {
      writing-mode: vertical-rl;
      transform: scale(-1, -1);
      color: #fff;
      font-size: 6vw;
      position: absolute;
      bottom: 0rem;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-about__titleText {
      margin: 0 0 6rem 0;
      position: relative;
      line-height: 1;
      white-space: nowrap;
      font-weight: 500;
      font-family: "Cormorant", serif; }
      .p-about__titleText::after {
        content: '';
        width: 3.5rem;
        height: 1px;
        background: #fff;
        position: absolute;
        top: -3rem;
        left: 50%;
        transform: translate(-50%, 0) rotate(-90deg); }
    .p-about__itemFrame {
      overflow: hidden; }
    .p-about__imageFrame {
      background: url(./assets/images/featured01.png);
      height: 100vh;
      background-position: center !important;
      background-size: cover !important;
      width: 32vw;
      transition: all .3s 0s ease-out; }
    .p-about__itemInner {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      opacity: 1;
      transition: all .3s 0s ease-out;
      width: 11.5vw; }
    .p-about__itemLabel {
      color: #fff;
      font-size: .18rem;
      line-height: 1.3;
      font-family: "Cormorant", serif;
      font-weight: 600;
      position: relative; }
      .p-about__itemLabel::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.3rem;
        transform: translate(0, -50%);
        height: 1px;
        width: 0.5rem;
        background: #fff; }
    .p-about__itemTextArea {
      margin: 0.6rem 0 0 0; }
    .p-about__itemHead {
      color: #fff;
      font-size: .19rem;
      line-height: 1.3; }
    .p-about__itemText {
      color: #fff;
      line-height: 1.7;
      font-size: .2rem;
      margin: 0.4rem 0 0 0; } }

@media screen and (max-width: 650px) {
  .p-about__contents {
    margin: 0.8rem 0 0 0; }
  .p-about__headFrame {
    overflow: hidden;
    border-bottom: solid 0.5px #a9a9a9; }
  .p-about__title {
    font-size: 13vw;
    display: flex;
    align-items: center;
    white-space: nowrap;
    font-weight: 500;
    font-family: "Cormorant", serif; }
  .p-about__titleText {
    margin: 0 1.1rem 0 0;
    position: relative;
    transform: translate(-0.7rem, 0); }
    .p-about__titleText::after {
      content: '';
      width: 0.7rem;
      height: 1.5px;
      background: #fff;
      position: absolute;
      top: 58%;
      right: -32%;
      transform: translate(0, -50%); }
  .p-about__itemFrame {
    width: 87vw;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column; }
  .p-about__itemInner {
    padding: 0.45rem 0;
    width: 100%; }
  .p-about__itemLabel {
    color: #fff;
    font-size: .11rem;
    padding: 0 0 0 0.2rem;
    line-height: 1.2;
    position: relative;
    font-family: "Cormorant", serif; }
    .p-about__itemLabel::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: auto;
      transform: none;
      height: 100%;
      width: 1.5px;
      background: #fff;
      top: 0; }
  .p-about__itemTextArea {
    margin: 0.2rem auto 0;
    width: 80%; }
  .p-about__itemHead {
    color: #fff;
    font-size: .135rem;
    line-height: 1.3; }
  .p-about__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.4; }
  .p-about__item {
    border-bottom: solid 0.5px #a9a9a9; } }

@media screen and (min-width: 651px) {
  .p-news {
    width: fit-content; }
    .p-news__contents {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-news__list {
      display: flex;
      align-items: center;
      justify-content: center; }
    .p-news__item {
      transition: all .3s 0s ease-out;
      cursor: pointer;
      position: relative; }
    .p-news__headFrame {
      position: relative;
      transform: translate(0, 0px); }
    .p-news__title {
      writing-mode: vertical-rl;
      transform: scale(-1, -1);
      color: #fff;
      font-size: 6vw;
      position: absolute;
      bottom: 0rem;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-news__titleText {
      margin: 0 0 6rem 0;
      position: relative;
      line-height: 1;
      font-weight: 500;
      font-family: "Cormorant", serif;
      white-space: nowrap; }
      .p-news__titleText::after {
        content: '';
        width: 3.5rem;
        height: 1px;
        background: #fff;
        position: absolute;
        top: -3rem;
        left: 50%;
        transform: translate(-50%, 0) rotate(-90deg); }
    .p-news__itemFrame {
      overflow: hidden; }
    .p-news__imageFrame {
      background: url(./assets/images/featured01.png);
      height: 100vh;
      background-position: center !important;
      background-size: cover !important;
      width: 32vw;
      transition: all .3s 0s ease-out; }
    .p-news__itemInner {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      opacity: 1;
      transition: all .3s 0s ease-out;
      width: 11.5vw; }
    .p-news__itemLabel {
      color: #fff;
      font-size: .18rem;
      line-height: 1.3;
      font-family: "Cormorant", serif;
      font-weight: 600;
      position: relative; }
      .p-news__itemLabel::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.3rem;
        transform: translate(0, -50%);
        height: 1px;
        width: 0.5rem;
        background: #fff; }
    .p-news__itemTextArea {
      margin: 0.6rem 0 0 0; }
    .p-news__itemHead {
      color: #fff;
      font-size: .19rem;
      line-height: 1.3; }
    .p-news__itemText {
      color: #fff;
      line-height: 1.7;
      font-size: .22rem;
      margin: 0.12rem 0 0 0; }
    .p-news__num {
      text-align: center;
      color: #fff;
      font-size: .4rem;
      font-family: "Cormorant", serif; }
    .p-news__date {
      margin: 0.2rem 0 0 0;
      font-size: .17rem;
      color: #fff;
      font-family: "Cormorant", serif; } }

@media screen and (max-width: 650px) {
  .p-news__contents {
    margin: 0.8rem 0 0 0; }
  .p-news__headFrame {
    overflow: hidden;
    border-bottom: solid 0.5px #a9a9a9; }
  .p-news__title {
    font-size: 13vw;
    display: flex;
    align-items: center;
    font-weight: 500;
    font-family: "Cormorant", serif; }
  .p-news__titleText {
    margin: 0 1.1rem 0 0;
    position: relative;
    transform: translate(-7rem, 0); }
    .p-news__titleText::after {
      content: '';
      width: 0.7rem;
      height: 1.5px;
      background: #fff;
      position: absolute;
      top: 58%;
      right: -57%;
      transform: translate(0, -50%); }
  .p-news__itemFrame {
    width: 87vw;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column; }
  .p-news__itemInner {
    padding: 0.45rem 0;
    width: 100%; }
  .p-news__itemLabel {
    color: #fff;
    font-size: .11rem;
    padding: 0 0 0 0.2rem;
    line-height: 1.2;
    position: relative;
    font-family: "Cormorant", serif; }
    .p-news__itemLabel::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: auto;
      transform: none;
      height: 100%;
      width: 1.5px;
      background: #fff;
      top: 0; }
  .p-news__itemTextArea {
    margin: 0.2rem auto 0;
    width: 80%; }
  .p-news__itemHead {
    color: #fff;
    font-size: .135rem;
    line-height: 1.3; }
  .p-news__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.4; }
  .p-news__item {
    border-bottom: solid 0.5px #a9a9a9; }
  .p-news__num {
    color: #fff;
    font-size: .2rem;
    letter-spacing: .01rem;
    font-family: "Cormorant", serif; }
  .p-news__date {
    color: #fff;
    font-size: .12rem;
    margin: 0.1rem 0 0 0;
    letter-spacing: .01rem;
    font-family: "Cormorant", serif; }
  .p-news__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.12rem 0 0 0;
    line-height: 1.4; } }

.p-detail__contents {
  width: calc(100vw - 36vw);
  margin: 0 0 0 auto;
  margin-top: -100vh;
  margin-top: calc(-1 * calc(var(--vh, 1vh) * 100));
  background: #F8F8F8; }
  @media screen and (max-width: 650px) {
    .p-detail__contents {
      width: auto;
      margin: 0 0 0 auto;
      margin-top: 0;
      margin-top: 0;
      background: #fff; } }

.p-detail__space {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background: transparent;
  pointer-events: none !important; }

.p-detail__inner {
  padding: 1rem;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
  pointer-events: auto !important; }
  @media screen and (max-width: 650px) {
    .p-detail__inner {
      padding: 0.4rem 0.2rem;
      min-height: 100vh;
      min-height: calc(var(--vh, 1vh) * 100);
      pointer-events: auto !important; } }

.p-detail__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-detail__title {
      font-size: .17rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-detail__num {
  font-size: .3rem;
  display: block;
  margin: 0.1rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-detail__num {
      font-size: .16rem;
      display: block;
      margin: 0.04rem 0 0 0; } }

@media screen and (min-width: 651px) {
  .p-detail__textArea {
    margin: 0 0 0.5rem 0;
    position: relative;}
    .p-detail__textArea p {
      font-size: .18rem;
      line-height: 1.9;
      color: #000; }
    .p-detail__textArea pre {
      font-size: .18rem;
      line-height: 1.9;
      color: #000; }
    .p-detail__textArea h1 {
      font-size: .75rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h2 {
      font-size: .65rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h3 {
      font-size: .55rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h4 {
      font-size: .45rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h5 {
      font-size: .35rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h6 {
      font-size: .25rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea strong {
      font-size: .18rem;
      line-height: 1.9;
      font-weight: 600;
      color: #000; } }

@media screen and (max-width: 650px) {
  .p-detail__textArea {
    margin: 0 0 0.5rem 0; }
    .p-detail__textArea p {
      font-size: .12rem;
      line-height: 1.7;
      color: #000; }
    .p-detail__textArea pre {
      font-size: .12rem;
      line-height: 1.7;
      color: #000; }
    .p-detail__textArea h1 {
      font-size: .46rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h2 {
      font-size: .4rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h3 {
      font-size: .34rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h4 {
      font-size: .28rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h5 {
      font-size: .22rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea h6 {
      font-size: .16rem;
      line-height: 1.5;
      color: #000; }
    .p-detail__textArea strong {
      font-size: .12rem;
      line-height: 1.7;
      font-weight: 600;
      color: #000; } }

.p-detail__image {
  width: 7rem;
  margin: 0.7rem 0 0 0;
  border-radius: 0.1rem;
  overflow: hidden; }
  @media screen and (max-width: 650px) {
    .p-detail__image {
      width: auto;
      margin: 0.4rem 0 0 0;
      border-radius: 0.1rem;
      overflow: hidden; } }

.p-detail__label {
  line-height: 1.5;
  font-size: .245rem;
  font-weight: 500;
  margin: 0.3rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-detail__label {
      line-height: 1.5;
      font-size: .15rem;
      font-weight: 500;
      margin: 0.3rem 0 0 0;
      color: #233036; } }

.p-detail__text {
  font-size: .18rem;
  line-height: 1.7;
  margin: 0.5rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-detail__text {
      font-size: 0.12rem;
      line-height: 1.7;
      margin: 0.2rem 0 0 0;
      color: #686f75; } }

.transition-frame {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3rem;
  z-index: 99999;
  opacity: 0;
  transition: all .3s 0s ease-out; }
  @media screen and (max-width: 650px) {
    .transition-frame {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 1.2rem;
      z-index: 99999;
      opacity: 0;
      transition: all .3s 0s ease-out; } }

.transition-frame-cover {
  position: fixed;
  top: 50%;
  left: 61vw;
  transform: translate(0, -50%);
  width: 3rem;
  z-index: 99999;
  opacity: 0;
  transition: all .3s 0s ease-out; }
  @media screen and (max-width: 650px) {
    .transition-frame-cover {
      position: fixed;
      left: 13vw;
      transform: none;
      width: 87vw;
      z-index: 99999;
      opacity: 0;
      transition: all .3s 0s ease-out;
      height: calc(100vh - 4rem);
      top: auto;
      bottom: 0; } }
  @media screen and (max-width: 650px) {
    .transition-frame-cover .transition-logo {
      width: 20% !important;
      position: absolute !important;
      top: 50% !important;
      left: 50% !important;
      transform: translate(-50%, -50%) !important; } }
  @media screen and (max-width: 650px) {
    .transition-frame-cover .transition-circle {
      width: 38% !important;
      position: absolute !important;
      top: 50% !important;
      left: 50% !important;
      transform: translate(-50%, -50%) !important; } }

.transition-frameInner {
  position: relative; }

.transition-circle {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.transition-circle-inner {
  width: 100%;
  animation: 8s linear infinite rotation; }

.transition-logo {
  width: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

@keyframes rotation {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }

@media screen and (min-width: 651px) {
  .common-transition {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 8000; }
    .common-transition .item:nth-of-type(3) {
      transform: translate(0, 100%);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      width: calc(4vw + 1px);
      position: fixed;
      top: 0;
      left: 0; }
    .common-transition .item:nth-of-type(4) {
      transition-delay: .05s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 4vw; }
    .common-transition .item:nth-of-type(5) {
      transition-delay: .1s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 20vw; }
    .common-transition .item:nth-of-type(6) {
      transition-delay: .15s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 36vw; }
    .common-transition .item:nth-of-type(7) {
      transition-delay: .2s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 52vw; }
    .common-transition .item:nth-of-type(8) {
      transition-delay: .25s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 68vw; }
    .common-transition .item:nth-of-type(9) {
      transition-delay: .3s !important;
      transform: translate(0, 100%);
      width: calc(16vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 84vw; } }

@media screen and (max-width: 650px) {
  .common-transition {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none; }
    .common-transition .item:nth-of-type(3) {
      transform: translate(0, 100%);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      width: calc(13vw + 1px);
      position: fixed;
      top: 0;
      left: 0; }
    .common-transition .item:nth-of-type(4) {
      transition-delay: .04s !important;
      transform: translate(0, 100%);
      width: calc(21.75vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 13vw; }
    .common-transition .item:nth-of-type(5) {
      transition-delay: .08s !important;
      transform: translate(0, 100%);
      width: calc(21.75vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 34.75vw; }
    .common-transition .item:nth-of-type(6) {
      transition-delay: .12s !important;
      transform: translate(0, 100%);
      width: calc(21.75vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 56.5vw; }
    .common-transition .item:nth-of-type(7) {
      transition-delay: .16s !important;
      transform: translate(0, 100%);
      width: calc(21.75vw + 1px);
      height: 100vh;
      height: calc(var(--vh, 1vh) * 100);
      background: #fff;
      position: fixed;
      top: 0;
      left: 78.25vw; } }

.p-lang {
  position: fixed;
  top: 0.5rem;
  right: 5vw;
  z-index: 2000;
  pointer-events: auto !important; }
  @media screen and (max-width: 650px) {
    .p-lang {
      position: fixed;
      top: 0.15rem;
      right: 0.15rem;
      z-index: 2000;
      pointer-events: auto !important; } }
  .p-lang--whiteMat .p-lang__item {
    color: #1A1A1A !important; }
    .p-lang--whiteMat .p-lang__item::after {
      color: #1A1A1A !important; }
  .p-lang--whiteMat .p-lang__link {
    color: #1A1A1A !important; }
  .p-lang--whiteMat .p-lang__mailText {
    color: #1A1A1A !important; }
  .p-lang--whiteMat .p-lang__mailFrame {
    border: solid 1px #1A1A1A !important; }
    @media screen and (max-width: 650px) {
      .p-lang--whiteMat .p-lang__mailFrame {
        border: none !important; } }
  .p-lang--whiteMat .p-lang__mail {
    color: #1a1a1a !important; }
    @media screen and (max-width: 650px) {
      .p-lang--whiteMat .p-lang__mail {
        color: #fff !important; } }
  .p-lang__contents {
    display: flex;
    justify-content: center;
    align-items: center; }
  .p-lang__list {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media screen and (max-width: 650px) {
      .p-lang__list {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 0.2rem 0 0; } }
    .p-lang__list li:last-of-type::after {
      display: none; }
  @media screen and (max-width: 650px) {
    .p-lang__item {
      transition: all .2s 0s linear; } }
  .p-lang__item::after {
    content: '/';
    color: #fff;
    font-size: .18rem;
    margin: 0 0.2rem;
    transition: all .2s 0s linear; }
    @media screen and (max-width: 650px) {
      .p-lang__item::after {
        content: '/';
        color: #fff;
        font-size: .122rem;
        margin: 0 0.07rem 0 0.05rem;
        transition: all .2s 0s linear; } }
  .p-lang__link {
    font-size: .18rem;
    color: #fff;
    opacity: .6;
    transition: all .2s 0s linear; }
    @media screen and (max-width: 650px) {
      .p-lang__link {
        font-size: .13rem;
        color: #fff;
        opacity: .6;
        transition: all .2s 0s linear; } }
    .p-lang__link:hover {
      opacity: 1 !important; }
  .p-lang__contact {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 0 0.7rem; }
    @media screen and (max-width: 650px) {
      .p-lang__contact {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0; } }
  .p-lang__mailFrame {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    border: solid 1px #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transition: all .2s 0s linear; }
    @media screen and (max-width: 650px) {
      .p-lang__mailFrame {
        width: 0.5rem;
        height: 0.5rem;
        border-radius: 50%;
        border: none;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        transition: all .2s 0s linear;
        background: #A38E56; } }
  .p-lang__mail {
    color: #fff;
    font-size: .25rem;
    transition: all .2s 0s linear; }
  .p-lang__mailText {
    font-size: .18rem;
    color: #fff;
    margin: 0 0 0 0.15rem;
    transition: all .2s 0s linear;
    font-family: "Lato", sans-serif; }
    @media screen and (max-width: 650px) {
      .p-lang__mailText {
        display: none; } }

.p-contact {
  padding: 0 0 1rem 0; }
  @media screen and (max-width: 650px) {
    .p-contact {
      padding: 0 0 0.1rem 0; } }
  .p-contact__title {
    font-size: .34rem;
    font-family: "Cormorant", serif;
    font-weight: 600; }
    @media screen and (max-width: 650px) {
      .p-contact__title {
        font-size: .17rem;
        font-family: "Cormorant", serif;
        font-weight: 600;
        color: #233036; } }
  .p-contact__form {
    margin: 0.7rem 0 0 0;
    font-size: .2rem; }
    @media screen and (max-width: 650px) {
      .p-contact__form {
        margin: 0.4rem 0 0 0;
        font-size: .14rem;
        color: #233036; } }
  .p-contact__list {
    width: 100%;
    max-width: 10rem; }
  .p-contact__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 0.45rem 0; }
    @media screen and (max-width: 650px) {
      .p-contact__item {
        display: block;
        align-items: center;
        justify-content: space-between;
        margin: 0; } }
  .p-contact__itemInner {
    width: 100%; }
    @media screen and (max-width: 650px) {
      .p-contact__itemInner {
        width: 100%;
        margin: 0 0 0.19rem 0; } }
  .p-contact__label {
    display: block;
    border: none;
    font-size: .23rem;
    color: #707070;
    width: 100%; }
    @media screen and (max-width: 650px) {
      .p-contact__label {
        display: block;
        border: none;
        font-size: .13rem;
        color: #707070;
        width: 100%; } }
  .p-contact__input {
    display: block;
    border: none;
    font-size: .27rem;
    padding: 0.17rem;
    margin: 0.2rem 0 0 0;
    border-radius: 0.1rem;
    width: 100%; }
    @media screen and (max-width: 650px) {
      .p-contact__input {
        display: block;
        border: none;
        font-size: .13rem;
        padding: 0.1rem;
        margin: 0.08rem 0 0 0;
        border-radius: 0.03rem;
        width: 100%;
        background: lightgray; } }
  .p-contact__submit {
    background: #707070;
    color: #fff;
    padding: 0.15rem 1.2rem;
    border-radius: 1rem;
    font-size: .2rem; }
    @media screen and (max-width: 650px) {
      .p-contact__submit {
        background: #707070;
        color: #fff;
        padding: 0.08rem 0.4rem;
        border-radius: 1rem;
        font-size: .13rem;
        margin: 0.3rem 0 0 0;
        display: block; } }
  .p-contact__agree {
    margin: 0.2rem 0 0 0;
    font-size: .2rem; }
    @media screen and (max-width: 650px) {
      .p-contact__agree {
        margin: 0.17rem 0 0 0;
        font-size: .11rem;
        color: #1A1A1A; } }
  .p-contact__policy {
    color: #43BC89; }
    @media screen and (max-width: 650px) {
      .p-contact__policy {
        text-decoration: underline !important; } }

.p-statement__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-statement__title {
      font-size: .18rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-statement__frame {
  margin: 1.4rem 0 0.8rem 0; }
  @media screen and (max-width: 650px) {
    .p-statement__frame {
      margin: 0; } }

.p-statement__label {
  font-size: .25rem;
  font-weight: 500; }
  @media screen and (max-width: 650px) {
    .p-statement__label {
      font-size: .155rem;
      font-weight: 500;
      color: #9ca7af;
      margin: 0.45rem 0 0 0; } }

.p-statement__catchcopy {
  margin: 0.5rem 0 0 0;
  color: #A38E56;
  line-height: 1.5;
  font-size: .23rem; }
  @media screen and (max-width: 650px) {
    .p-statement__catchcopy {
      color: #A38E56;
      line-height: 1.4;
      font-size: .14rem;
      margin: 0.13rem 0 0 0; } }

.p-statement__text {
  margin: 0.7rem 0 0 0;
  line-height: 1.8;
  font-size: .18rem; }
  @media screen and (max-width: 650px) {
    .p-statement__text {
      margin: 0.3rem 0 0.45rem 0;
      line-height: 1.8;
      font-size: .12rem;
      color: #686f75; } }

.p-system__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-system__title {
      font-size: .18rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-system__label {
  font-size: .25rem;
  font-weight: 500;
  margin: 1.2rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-system__label {
      font-size: .155rem;
      font-weight: 500;
      color: #9ca7af;
      margin: 0.45rem 0 0 0; } }

.p-system__catchcopy {
  margin: 0.5rem 0 0 0;
  color: #A38E56;
  line-height: 1.5;
  font-size: .23rem; }
  @media screen and (max-width: 650px) {
    .p-system__catchcopy {
      color: #A38E56;
      line-height: 1.4;
      font-size: .14rem;
      margin: 0.13rem 0 0 0; } }

.p-system__list {
  margin: 1.3rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-system__list {
      margin: 0.4rem 0 0 0; } }

.p-system__item {
  display: flex;
  margin: 0 0 1rem 0; }
  @media screen and (max-width: 650px) {
    .p-system__item {
      display: flex;
      margin: 0 0 0.3rem 0; } }

.p-system__circle {
  width: 1.45rem;
  flex-shrink: 0;
  margin: 0 0.5rem 0 0; }
  @media screen and (max-width: 650px) {
    .p-system__circle {
      width: 0.55rem;
      flex-shrink: 0;
      margin: 0 0.12rem 0 0; } }

.p-system__listLabel {
  font-size: .23rem;
  font-weight: 500; }
  @media screen and (max-width: 650px) {
    .p-system__listLabel {
      font-size: .13rem;
      font-weight: 500;
      color: #233036; } }

.p-system__listText {
  margin: 0.25rem 0 0 0;
  line-height: 1.7;
  font-size: .18rem; }
  @media screen and (max-width: 650px) {
    .p-system__listText {
      margin: 0.05rem 0 0 0;
      line-height: 1.5;
      font-size: .11rem;
      color: #686f75; } }

.p-system__eco {
  margin: 1.7rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-system__eco {
      margin: 0.6rem 0 0 0; } }

.p-system__ecoLabel {
  color: #A38E56;
  line-height: 1.5;
  font-size: .23rem; }
  @media screen and (max-width: 650px) {
    .p-system__ecoLabel {
      color: #A38E56;
      line-height: 1.4;
      font-size: .14rem;
      margin: 0; } }

.p-system__ecoText {
  line-height: 1.7;
  font-size: .18rem;
  margin: 0.25rem 0 0 0;
  width: 7rem; }
  @media screen and (max-width: 650px) {
    .p-system__ecoText {
      line-height: 1.7;
      font-size: .12rem;
      margin: 0.13rem 0 0 0;
      width: auto;
      color: #686f75; } }

.p-system__ecoLing {
  margin: 2.8rem 0 3.5rem 0;
  position: relative; }
  @media screen and (max-width: 650px) {
    .p-system__ecoLing {
      margin: 0.25rem 0 0 0;
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column; } }

.p-system__circleList {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  @media screen and (max-width: 650px) {
    .p-system__circleList {
      position: relative;
      top: 0;
      left: 0;
      transform: none;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      margin: 0.1rem 0 0 0; } }
  .p-system__circleList li:first-of-type {
    transform: translate(calc(-50% + 1.1rem), calc(-50% - 1.8rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:first-of-type {
        transform: none; } }
  .p-system__circleList li:nth-of-type(2) {
    transform: translate(calc(-50% + 3.3rem), calc(-50% + -1.1rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(2) {
        transform: none; } }
  .p-system__circleList li:nth-of-type(3) {
    transform: translate(calc(-50% + 3.3rem), calc(-50% + 1.1rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(3) {
        transform: none; } }
  .p-system__circleList li:nth-of-type(4) {
    transform: translate(calc(-50% + 1.1rem), calc(-50% + 1.8rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(4) {
        transform: none; } }
  .p-system__circleList li:nth-of-type(5) {
    transform: translate(calc(-50% - 1.1rem), calc(-50% + 1.8rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(5) {
        transform: none; } }
  .p-system__circleList li:nth-of-type(6) {
    transform: translate(calc(-50% - 3.3rem), calc(-50% + 1.1rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(6) {
        transform: none; } }
  .p-system__circleList li:nth-of-type(7) {
    transform: translate(calc(-50% - 3.3rem), calc(-50% + -1.1rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:nth-of-type(7) {
        transform: none; } }
  .p-system__circleList li:last-of-type {
    transform: translate(calc(-50% - 1.1rem), calc(-50% + -1.8rem)); }
    @media screen and (max-width: 650px) {
      .p-system__circleList li:last-of-type {
        transform: none; } }

.p-system__circleItem {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 1.7rem;
  height: 1.7rem;
  background: #A38E56;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%; }
  @media screen and (max-width: 650px) {
    .p-system__circleItem {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      width: 1.3rem;
      height: 0.4rem;
      background: #A38E56;
      border-radius: 0.05rem;
      position: relative;
      top: 0;
      left: 0;
      margin: 0.05rem 0.05rem; } }

.p-system__circleText {
  color: #fff;
  text-align: center;
  line-height: 1.5;
  font-size: .16rem; }
  @media screen and (max-width: 650px) {
    .p-system__circleText {
      color: #fff;
      text-align: center;
      line-height: 1.5;
      font-size: .11rem; } }

@media screen and (max-width: 650px) {
  .p-system__circleCenter {
    order: -1; } }

.p-system__circleCenterText {
  border: solid 1px #709E9A;
  color: #709E9A;
  text-align: center;
  font-size: .23rem;
  padding: 0.28rem;
  border-radius: 100%;
  width: 2.9rem;
  margin: 0 auto;
  letter-spacing: .02rem; }
  @media screen and (max-width: 650px) {
    .p-system__circleCenterText {
      border: solid 1px #709E9A;
      color: #709E9A;
      text-align: center;
      font-size: .14rem;
      padding: 0.14rem;
      border-radius: 100%;
      width: 1.8rem;
      margin: 0 auto;
      letter-spacing: .02rem; } }
  .p-system__circleCenterText--sm {
    margin: 0.05rem 0 0 0;
    display: block;
    font-size: .15rem; }
    @media screen and (max-width: 650px) {
      .p-system__circleCenterText--sm {
        margin: 0.03rem 0 0 0;
        display: block;
        font-size: .11rem; } }

.p-system__pillarLabel {
  color: #A38E56;
  line-height: 1.5;
  font-size: .23rem; }
  @media screen and (max-width: 650px) {
    .p-system__pillarLabel {
      color: #A38E56;
      line-height: 1.4;
      font-size: .14rem;
      margin: 0.6rem 0 0 0; } }

.p-system__pillar {
  line-height: 1.7;
  font-size: .18rem;
  margin: 0.25rem 0 0 0;
  width: 7rem; }
  @media screen and (max-width: 650px) {
    .p-system__pillar {
      line-height: 1.7;
      font-size: .12rem;
      margin: 0.13rem 0 0 0;
      width: auto;
      color: #686f75; } }

.p-member__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-member__title {
      font-size: .18rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-member__label {
  font-size: .25rem;
  font-weight: 500;
  margin: 1.2rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-member__label {
      font-size: .155rem;
      font-weight: 500;
      color: #9ca7af;
      margin: 0.45rem 0 0 0; } }

.p-member__list {
  margin: 0.8rem 0 0 0;
  max-width: 9rem; }
  @media screen and (max-width: 650px) {
    .p-member__list {
      margin: 0.3rem 0 0 0;
      max-width: 9rem; } }

.p-member__item {
  margin: 0 0 0.8rem 0; }
  @media screen and (max-width: 650px) {
    .p-member__item {
      margin: 0 0 0.45rem 0; } }

.p-member__circle {
  width: 1.5rem; }
  @media screen and (max-width: 650px) {
    .p-member__circle {
      width: 1rem; } }

.p-member__position {
  margin: 0.3rem 0 0 0;
  font-size: .18rem; }
  @media screen and (max-width: 650px) {
    .p-member__position {
      margin: 0.16rem 0 0 0;
      font-size: .13rem;
      color: #9ca7af; } }

.p-member__name {
  margin: 0.13rem 0 0 0;
  font-size: .27rem; }
  @media screen and (max-width: 650px) {
    .p-member__name {
      margin: 0.1rem 0 0 0;
      font-size: .19rem;
      color: #233036; } }

.p-member__rubi {
  margin: 0.1rem 0 0 0;
  font-size: .23rem;
  font-weight: 500; }
  @media screen and (max-width: 650px) {
    .p-member__rubi {
      margin: 0.05rem 0 0 0;
      font-size: .15rem;
      font-weight: 500;
      color: #233036; } }

.p-member__text {
  line-height: 1.9;
  margin: 0.4rem 0 0 0;
  font-size: .18rem; }
  @media screen and (max-width: 650px) {
    .p-member__text {
      line-height: 1.7;
      margin: 0.15rem 0 0 0;
      font-size: .12rem;
      color: #686f75; } }

@media screen and (min-width: 651px) {
  .p-article__textArea {
    margin: 0 0 0.5rem 0; }
    .p-article__textArea p {
      font-size: .18rem;
      line-height: 1.9;
      color: #000; }
    .p-article__textArea pre {
      font-size: .18rem;
      line-height: 1.9;
      color: #000; }
    .p-article__textArea h1 {
      font-size: .75rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h2 {
      font-size: .65rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h3 {
      font-size: .55rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h4 {
      font-size: .45rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h5 {
      font-size: .35rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h6 {
      font-size: .25rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea strong {
      font-size: .18rem;
      line-height: 1.9;
      font-weight: 600;
      color: #000; } }

@media screen and (max-width: 650px) {
  .p-article__textArea {
    margin: 0 0 0.5rem 0; }
    .p-article__textArea p {
      font-size: .12rem;
      line-height: 1.7;
      color: #000; }
    .p-article__textArea pre {
      font-size: .12rem;
      line-height: 1.7;
      color: #000; }
    .p-article__textArea h1 {
      font-size: .46rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h2 {
      font-size: .4rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h3 {
      font-size: .34rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h4 {
      font-size: .28rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h5 {
      font-size: .22rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea h6 {
      font-size: .16rem;
      line-height: 1.5;
      color: #000; }
    .p-article__textArea strong {
      font-size: .12rem;
      line-height: 1.7;
      font-weight: 600;
      color: #000; } }

.p-article__title {
  font-size: .34rem !important;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-article__title {
      font-size: .18rem !important;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-article__label {
  font-size: .25rem;
  font-weight: 500;
  margin: 1.2rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-article__label {
      font-size: .155rem;
      font-weight: 500;
      color: #9ca7af;
      margin: 0.45rem 0 0 0; } }

.p-article__projectLabel {
  line-height: 1.5;
  font-size: .245rem;
  font-weight: 500;
  margin: 0.6rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-article__projectLabel {
      line-height: 1.5;
      font-size: .135rem;
      font-weight: 500;
      margin: 0.3rem 0 0 0;
      color: #9ca7af; } }

.p-article__text {
  margin: 0.4rem 0 0.8rem 0;
  font-size: .18rem;
  line-height: 1.9; }
  @media screen and (max-width: 650px) {
    .p-article__text {
      margin: 0.2rem 0 0.6rem 0;
      font-size: .12rem;
      line-height: 1.7;
      color: #686f75; } }

.p-privacyPolicy__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-privacyPolicy__title {
      font-size: .18rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-privacyPolicy__text {
  line-height: 1.9;
  margin: 1.2rem 0 0.7rem 0;
  font-size: .18rem; }
  @media screen and (max-width: 650px) {
    .p-privacyPolicy__text {
      margin: 0.3rem 0 0.6rem 0;
      font-size: .12rem;
      line-height: 1.7;
      color: #686f75; } }

.p-rotate {
  position: fixed;
  bottom: 1.2rem;
  right: 0.6rem;
  z-index: 500;
  cursor: pointer; }
  @media screen and (max-width: 650px) {
    .p-rotate {
      position: fixed;
      bottom: 0.6rem;
      right: 0.3rem;
      z-index: 500;
      cursor: pointer; } }
  .p-rotate__contents {
    width: 1.8rem;
    position: relative; }
    @media screen and (max-width: 650px) {
      .p-rotate__contents {
        width: 1rem;
        position: relative; } }
  .p-rotate__circle {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1; }
  .p-rotate__arrow {
    width: 50%;
    margin: 0 auto; }
    @media screen and (max-width: 650px) {
      .p-rotate__arrow {
        width: 50%;
        margin: 0 auto;
        transform: rotate(90deg); } }

.p-toggle__hamburgerButton {
  position: fixed;
  top: 0rem;
  left: 0;
  cursor: pointer;
  z-index: 11000;
  width: 4vw;
  height: 0.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  pointer-events: auto; }
  @media screen and (max-width: 650px) {
    .p-toggle__hamburgerButton {
      position: fixed;
      top: 0rem;
      left: 0;
      cursor: pointer;
      z-index: 9500;
      width: 13vw;
      height: 0.5rem;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      pointer-events: auto; } }

.p-toggle__hamburgerButtonInner {
  position: relative;
  overflow: hidden; }
  .p-toggle__hamburgerButtonInner span {
    width: 0.3rem;
    height: 2px;
    background: #fff;
    display: block;
    transition: all .3s 0s ease-out;
    transform: translate(0, 0);
    transform-origin: left; }
    @media screen and (max-width: 650px) {
      .p-toggle__hamburgerButtonInner span {
        width: 0.2rem;
        height: 1.5px;
        background: #fff;
        display: block;
        transition: all .3s 0s ease-out;
        transform: translate(0, 0);
        transform-origin: left; } }
    .p-toggle__hamburgerButtonInner span:nth-of-type(2) {
      margin: 0.1rem 0; }
      @media screen and (max-width: 650px) {
        .p-toggle__hamburgerButtonInner span:nth-of-type(2) {
          margin: 0.06rem 0; } }

.p-pointerCover {
  width: 100%;
  height: 100vh;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999999;
  pointer-events: none; }

.p-company__title {
  font-size: .34rem;
  font-family: "Cormorant", serif;
  font-weight: 600; }
  @media screen and (max-width: 650px) {
    .p-company__title {
      font-size: .18rem;
      font-family: "Cormorant", serif;
      font-weight: 600;
      color: #233036; } }

.p-company__list {
  margin: 1rem 0 0 0; }
  @media screen and (max-width: 650px) {
    .p-company__list {
      margin: 0.6rem 0 0 0; } }
  .p-company__list li:last-of-type {
    border-bottom: solid 1px #ccc; }

.p-company__item {
  padding: 0.3rem 0.4rem;
  border-top: solid 1px #ccc;
  display: flex;
  align-items: center; }
  @media screen and (max-width: 650px) {
    .p-company__item {
      padding: 0.15rem 0.15rem;
      border-top: solid 1px #ccc;
      display: flex;
      align-items: center; } }

.p-company__listLabel {
  font-size: .2rem;
  font-weight: 500;
  width: 2rem;
  flex-shrink: 0; }
  @media screen and (max-width: 650px) {
    .p-company__listLabel {
      font-size: .12rem;
      font-weight: 400;
      flex-shrink: 0;
      color: #1A1A1A;
      width: 0.7rem; } }

.p-company__listText {
  font-size: .2rem;
  font-weight: 500; }
  @media screen and (max-width: 650px) {
    .p-company__listText {
      font-size: .12rem;
      font-weight: 400;
      color: #1A1A1A; } }

@media screen and (min-width: 651px) {
  .p-ecoSystem {
    width: fit-content; }
    .p-ecoSystem__contents {
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-ecoSystem__list {
      display: flex;
      align-items: center;
      justify-content: center; }
    .p-ecoSystem__item {
      border: none !important;
      transition: all .3s 0s ease-out;
      cursor: pointer;
      position: relative; }
    .p-ecoSystem__headFrame {
      position: relative;
      border: none !important;
      transform: translate(0, -300px); }
    .p-ecoSystem__title {
      writing-mode: vertical-rl;
      transform: scale(-1, -1);
      color: #fff;
      font-size: 6vw;
      position: absolute;
      bottom: 0rem;
      right: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
    .p-ecoSystem__titleText {
      margin: 0 0 6rem 0;
      position: relative;
      line-height: 1;
      font-family: "Cormorant", serif;
      font-weight: 500;
      white-space: nowrap; }
      .p-ecoSystem__titleText::after {
        content: '';
        width: 3.5rem;
        height: 1px;
        background: #fff;
        position: absolute;
        top: -3rem;
        left: 50%;
        transform: translate(-50%, 0) rotate(-90deg); }
    .p-ecoSystem__itemFrame {
      overflow: hidden; }
    .p-ecoSystem__imageFrame {
      background: url(./assets/images/featured01.png);
      height: 100vh;
      background-position: center !important;
      background-size: cover !important;
      width: 32vw;
      transition: all .3s 0s ease-out; }
    .p-ecoSystem__itemInner {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      opacity: 1;
      transition: all .3s 0s ease-out;
      width: 11.5vw; }
    .p-ecoSystem__itemLabel {
      color: #fff;
      font-size: .18rem;
      line-height: 1.3;
      font-family: "Cormorant", serif;
      font-weight: 600;
      position: relative; }
      .p-ecoSystem__itemLabel::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -0.3rem;
        transform: translate(0, -50%);
        height: 1px;
        width: 0.5rem;
        background: #fff; }
    .p-ecoSystem__itemTextArea {
      margin: 1.4rem 0 0 0; }
    .p-ecoSystem__itemHead {
      color: #fff;
      font-size: .19rem;
      line-height: 1.3; }
    .p-ecoSystem__itemText {
      color: #fff;
      line-height: 1.7;
      font-size: .2rem;
      margin: 0.4rem 0 0 0; } }

@media screen and (max-width: 650px) {
  .p-ecoSystem__contents {
    margin: 0.8rem 0 0 0; }
  .p-ecoSystem__headFrame {
    overflow: hidden; }
  .p-ecoSystem__title {
    font-size: 13vw;
    display: flex;
    align-items: center;
    font-weight: 500;
    font-family: "Cormorant", serif;
    white-space: nowrap; }
  .p-ecoSystem__titleText {
    margin: 0 1.1rem 0 0;
    position: relative;
    transform: translate(-8.2rem, 0); }
    .p-ecoSystem__titleText::after {
      content: '';
      width: 0.7rem;
      height: 1.5px;
      background: #fff;
      position: absolute;
      top: 58%;
      right: -32%;
      transform: translate(0, -50%); }
  .p-ecoSystem__itemFrame {
    position: relative;
    overflow: hidden;
    height: 2rem;
    width: 87vw;
    transition: height .3s 0s ease-out;
    will-change: height;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .p-ecoSystem__imageFrame {
    background-size: cover !important;
    height: 4rem;
    width: 87vw;
    background-position: top !important;
    transform: translate(0, 0);
    transition: transform .3s 0s ease-out; }
  .p-ecoSystem__itemInner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    transition: all .3s 0s ease-out; }
  .p-ecoSystem__itemLabel {
    color: #fff;
    font-size: .11rem;
    padding: 0 0 0 0.2rem;
    line-height: 1.2;
    position: relative;
    font-family: "Cormorant", serif; }
    .p-ecoSystem__itemLabel::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: auto;
      transform: none;
      height: 100%;
      width: 1.5px;
      background: #fff;
      top: 0; }
  .p-ecoSystem__itemTextArea {
    margin: 0.2rem auto 0;
    width: 80%; }
  .p-ecoSystem__itemHead {
    color: #fff;
    font-size: .135rem;
    line-height: 1.3; }
  .p-ecoSystem__itemText {
    color: #fff;
    font-size: .11rem;
    margin: 0.1rem 0 0 0;
    line-height: 1.4; } }

/*-------------------------------------------*/
.p-ecoSystem__itemLogo {
  padding-bottom: 0.6rem;
}
@media screen and (max-width: 650px) {
  .p-ecoSystem__itemLogo {
    padding-bottom: 0.3rem;
  }
}
