@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
:root {
  --zIndex: 100;
  --zIndex-header: calc(var(--zIndex) * 2);
  --zIndex-breadcrumb: calc(var(--zIndex) * 2);
  --zIndex-overlay: calc(var(--zIndex) * 3);
  --zIndex-headerBtnListSP: calc(var(--zIndex) * 3);
  --zIndex-gnav: calc(var(--zIndex) * 4);
  --zIndex-logo: calc(var(--zIndex) * 5);
  --zIndex-menuBtn: calc(var(--zIndex) * 5);
  --zIndex-headerBtnList: calc(var(--zIndex) * 5);
  --color-main: #f99900;
  --color-accent: #826338;
  --color-white: #fff;
  --color-black: #000;
  --color-gray: #212121;
  --color-text: #333333;
  --color-placeholder: #C3C3C3;
  --background-dark: #050506;
  --background-black_30: rgb(0, 0, 0, .3);
  --background-white: #fff;
  --background-white02: #F6F6F6;
  --background-lightGray: #F7F7F7;
  --background-gray: #E5E5E5;
  --background-gray02: #EAEAEA;
  --background-gray03: #F8F8F8;
  --background-darkGray: #E2E2E2;
  --background-darkGray02: #3B3B3B;
  --background-darkGray03: #141418;
  --background-darkGray04: #111111;
  --background-black: #000;
  --background-black_50: rgba(0, 0, 0, .5);
  --background-black_22: rgba(0, 0, 0, .22);
  --background-tag: #A3A3A3;
  --border-darkGray: #E2E2E2;
  --border-gray: #EBEBEB;
  --border-gray02: #E0E0E0;
  --fontFamily-base: "Zen Old Mincho", serif;
  --fontFamily-accent: "Times New Roman", Times, serif;
  --lineHeight-base: calc(30 / 14);
  --fontSize-base: 1.4rem;
  --fontWeight-base: 400;
  --fontWeight-regular: 400;
  --fontWeight-medium: 500;
  --fontWeight-semiBold: 600;
  --fontWeight-bold: 700;
  --fontColor-base: #333333;
}

/* base */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}
@media screen and (max-width: 430px) {
  html {
    font-size: 2.3255813953vw;
  }
}

body {
  font-family: var(--fontFamily-base);
  font-size: var(--fontSize-base);
  font-weight: var(--fontWeight-base);
  line-height: var(--lineHeight-base);
  color: var(--fontColor-base);
}

h2, h3, h4 {
  font-weight: var(--fontWeight-regular);
}

a {
  text-decoration: none;
}

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

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

/* l-body */
.l-body.noScroll {
  overflow: hidden;
}

/* l-header */
.l-header {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: var(--zIndex-header);
}
.l-header__inner {
  padding: 2.4rem 7.8rem 0 4.7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-header__inner {
    padding: 2.4rem 1.5rem 0;
  }
}
.l-header__logo {
  position: relative;
  z-index: var(--zIndex-logo);
}
@media screen and (max-width: 768px) {
  .l-header__logo {
    width: 13.4rem;
  }
  .l-header__logo img {
    width: 100%;
  }
}
.l-header__gnav {
  display: none;
}
.l-header__gnav.menu_isOpen {
  display: block;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: var(--background-darkGray02);
  z-index: var(--zIndex-gnav);
}
.l-header__btnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem 1.6rem;
  position: relative;
  z-index: var(--zIndex-headerBtnList);
}
@media screen and (max-width: 768px) {
  .l-header__btnList {
    width: 100%;
    gap: 2px;
    position: fixed;
    left: 0;
    bottom: 0;
    background-color: var(--background-dark);
    z-index: var(--zIndex-headerBtnListSP);
  }
}
@media screen and (max-width: 768px) {
  .l-header__btnItem {
    width: calc((100% - 2px) / 2);
  }
}
.l-header__btnAreaSP {
  margin-top: 3.8rem;
}
@media screen and (max-width: 768px) {
  .l-header__btnListSP {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.6rem 1.6rem;
    position: relative;
    z-index: var(--zIndex-headerBtnList);
  }
}
@media screen and (max-width: 768px) {
  .l-header__btnItemSP {
    width: calc((100% - 2px) / 2);
  }
}
.l-header__btn {
  display: block;
  position: absolute;
  top: 2rem;
  right: 3.4rem;
  z-index: var(--zIndex-menuBtn);
}
@media screen and (max-width: 768px) {
  .l-header__btn {
    right: 0.8rem;
  }
}

/* l-footer */
.l-footer {
  color: var(--color-white);
  background-color: var(--background-darkGray02);
  padding: 8.5rem 0 5.4rem;
}
@media screen and (max-width: 1000px) {
  .l-footer {
    padding: 5.5rem 0;
  }
}
.l-footer--eventOnly {
  padding: 0;
}
@media screen and (max-width: 768px) {
  .l-footer--eventOnly {
    padding-bottom: 5.4rem;
  }
}
.l-footer--eventOnly .l-footer__copy {
  margin-top: 0;
  border-top: none;
}
.l-footer__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  padding-bottom: 2rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding-bottom: 0;
  }
}
.l-footer__content::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: var(--color-white);
  position: absolute;
  top: 0;
  left: 60.8rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__content::before {
    display: none;
  }
}
.l-footer__logo {
  width: 18.8rem;
  max-width: 100%;
  margin: auto;
}
@media screen and (max-width: 1000px) {
  .l-footer__logo {
    width: 15.2rem;
  }
}
.l-footer__navArea {
  max-width: 52rem;
  padding-top: 2.6rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__navArea {
    padding: 3.6rem 2rem 0;
    margin: 6rem auto 0;
    border-top: 1px solid var(--border-darkGray);
  }
}
.l-footer__infoArea {
  max-width: 32rem;
  padding-top: 1.6rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__infoArea {
    margin: auto;
    padding-top: 0;
  }
}
.l-footer__address {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  margin-top: 2.6rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__address {
    font-size: 1.2rem;
  }
}
.l-footer__contactArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.2rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__contactArea {
    margin-top: 1.8rem;
  }
}
.l-footer__telArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__telIcon {
    width: 1.2rem;
    height: 1.9rem;
  }
}
.l-footer__tel {
  font-family: var(--fontFamily-accent);
  font-size: 2.6rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1000px) {
  .l-footer__tel {
    font-size: 2rem;
  }
}
.l-footer__contactBtnWrap {
  width: 11.2rem;
}
.l-footer__contactBtn {
  display: block;
  width: 100%;
  color: var(--color-white);
  font-family: var(--fontFamily-accent);
  font-size: 1.6rem;
  line-height: 1.875;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0 1rem;
  text-align: center;
  border: 1px solid;
}
.l-footer__snsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
  margin-top: 2.6rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__snsList {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2.4rem;
  }
}
.l-footer__copy {
  font-family: var(--fontFamily-accent);
  letter-spacing: 0.05em;
  font-size: 1rem;
  text-align: center;
  padding: 2rem 1rem;
  border-top: 1px solid var(--border-darkGray);
  margin-top: 10.6rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__copy {
    margin-top: 4rem;
    padding: 3rem 1rem;
  }
}

/* l-inner */
.l-inner {
  width: 107rem;
  max-width: 100%;
  padding: 0 1.5rem;
  margin: auto;
}

/* l-breadcrumb */
.l-breadcrumb {
  position: absolute;
  top: 11.6rem;
  left: 0;
  width: 100%;
  padding: 0 4.7rem;
  z-index: var(--zIndex-breadcrumb);
}
@media screen and (max-width: 768px) {
  .l-breadcrumb {
    top: 8.4rem;
    padding: 0 1.5rem;
  }
}

/* c-site */
.c-site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
}
.c-site__main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* c-gnav*/
.c-gnav {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-gnav__inner {
  max-width: 66rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .c-gnav__listAreaFlex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2.6rem;
  }
}
.c-gnav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .c-gnav__list {
    display: block;
  }
}
.c-gnav__link {
  display: block;
  font-size: 2rem;
  letter-spacing: 0.2em;
  color: var(--color-white);
  padding: 1.6rem 1rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-gnav__link {
    font-size: 1.8rem;
    padding: 0.4rem 1rem;
    text-align: left;
  }
}
.c-gnav__snsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2.8rem;
}

/* c-btnMenu*/
.c-btnMenu {
  width: 3.4rem;
  height: 4rem;
  padding: 0;
  background-color: transparent;
  border: none;
}
.c-btnMenu span {
  display: inline-block;
  width: 1px;
  height: 23px;
  background-color: var(--color-white);
  position: relative;
}
.c-btnMenu span::before, .c-btnMenu span::after {
  content: "";
  display: inline-block;
  width: 1px;
  background-color: var(--color-white);
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.c-btnMenu span::before {
  height: 34px;
  right: -0.8rem;
}
.c-btnMenu span::after {
  height: 14px;
  right: 0.8rem;
}

/* btnMenu_isOnがついた時のスタイル */
.c-btnMenu.btnMenu_isOn span {
  background-color: transparent;
}
.c-btnMenu.btnMenu_isOn span::before, .c-btnMenu.btnMenu_isOn span::after {
  top: 0;
}
.c-btnMenu.btnMenu_isOn span::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: 0;
}
.c-btnMenu.btnMenu_isOn span::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  height: 34px;
  left: 0;
}

/* c-ttl*/
.c-ttl--vertical {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
.c-ttl--vertical .c-ttl__en {
  margin-left: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-ttl--vertical .c-ttl__en {
    margin-left: 0;
  }
}
.c-ttl--vertical .c-ttl__jp {
  line-height: 1.45;
  margin-top: 0.8rem;
}
.c-ttl--verticalPC {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 768px) {
  .c-ttl--verticalPC {
    -webkit-writing-mode: initial;
        -ms-writing-mode: initial;
            writing-mode: initial;
  }
}
.c-ttl--verticalPC .c-ttl__en {
  margin-left: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-ttl--verticalPC .c-ttl__en {
    margin-left: 0;
  }
}
.c-ttl--verticalPC .c-ttl__jp {
  line-height: 1.25;
  margin-top: 0.8rem;
}
@media screen and (max-width: 768px) {
  .c-ttl--modelhouse .c-ttl__jp {
    font-size: 2.7rem;
  }
}
.c-ttl__en {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-ttl__en {
    font-size: 1.2rem;
  }
}
.c-ttl__jp {
  font-size: 4rem;
  line-height: 1.5;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .c-ttl__jp {
    font-size: 2.8rem;
  }
}

/* c-btn */
.c-btn {
  display: block;
  font-size: 1.6rem;
  color: var(--color-black);
  padding: 1.2rem 1rem;
  position: relative;
  border: 1px solid;
}
@media screen and (max-width: 768px) {
  .c-btn {
    font-size: 1.4rem;
    padding: 1rem;
  }
}
.c-btn--center {
  text-align: center;
}
.c-btn--white {
  color: var(--color-white);
}
@media screen and (max-width: 768px) {
  .c-btn--spSmall {
    padding: 0.4rem 1rem;
  }
}
.c-btn__icon {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .c-btn__icon {
    right: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .c-btn__txtPC {
    display: none;
  }
}
.c-btn__txtSP {
  display: none;
}
@media screen and (max-width: 768px) {
  .c-btn__txtSP {
    display: block;
  }
}

/* c-btnHeader */
.c-btnHeader {
  display: block;
  font-size: 1.2rem;
  color: var(--color-white);
  padding: 0.8rem 3.4rem;
  background-color: var(--background-dark);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-btnHeader {
    padding: 1.2rem;
  }
}
.c-btnHeader--event {
  background: url(../../assets/images/common/bg_btn_event.jpg) center/cover no-repeat;
}
.c-btnHeader--contact {
  background: url(../../assets/images/common/bg_btn_contact.jpg) center/cover no-repeat;
}

/* c-breadcrumb */
.c-breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .c-breadcrumb__list {
    gap: 0.7rem;
  }
}
.c-breadcrumb__item span {
  display: block;
  color: var(--color-white);
  line-height: var(--lineHeight-base);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .c-breadcrumb__item span {
    font-size: 1.2rem;
  }
}
.c-breadcrumb__item:not(:first-child) {
  padding-left: 1rem;
  position: relative;
}
.c-breadcrumb__item:not(:first-child)::before {
  content: "";
  display: block;
  width: 0.4rem;
  height: 1px;
  background-color: var(--color-white);
  position: absolute;
  top: 50%;
  left: 0;
}
.c-breadcrumb__link {
  display: block;
  letter-spacing: 0.05em;
}
.c-breadcrumb__en {
  font-family: var(--fontFamily-accent);
}

/* c-table */
.c-table {
  width: 100%;
  border-collapse: collapse;
  background-color: var(--background-white);
}
.c-table tbody {
  border-left: 2px solid var(--border-gray);
  border-right: 2px solid var(--border-gray);
  border-bottom: 2px solid var(--border-gray);
}
.c-table tbody tr {
  border-top: 2px solid var(--border-gray);
}
@media screen and (max-width: 768px) {
  .c-table tbody tr {
    display: block;
    border-top: none;
  }
}
.c-table tbody tr th {
  width: 20.3rem;
  background-color: var(--background-gray);
  text-align: left;
  padding: 1.8rem 3rem;
}
@media screen and (max-width: 768px) {
  .c-table tbody tr th {
    display: block;
    width: 100%;
    padding: 1rem 1.6rem;
  }
}
.c-table tbody tr td {
  padding: 1.8rem 3rem;
}
@media screen and (max-width: 768px) {
  .c-table tbody tr td {
    display: block;
    width: 100%;
    padding: 1rem 1.6rem;
  }
}
.c-table--light tbody tr th {
  background-color: var(--background-gray03);
}

/* c-form */
.c-form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 3.8rem;
}
@media screen and (max-width: 768px) {
  .c-form__item {
    display: block;
    margin-top: 0.8rem;
  }
}
.c-form__item--message {
  display: block;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .c-form__item--message {
    margin-top: 0.8rem;
  }
}
.c-form__item--select {
  display: block;
  font-size: 1.8rem;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .c-form__item--select {
    font-size: 1.6rem;
    margin-top: 0.8rem;
  }
}
.c-form__item--select .c-form__labelArea {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.c-form__item--select .c-form__requiredArea {
  margin-left: 4.2rem;
}
.c-form__labelArea {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.8rem;
  padding-right: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .c-form__labelArea {
    font-size: 1.6rem;
    padding-right: 0;
  }
}
.c-form__required {
  display: inline-block;
  font-size: 1.6rem;
  color: var(--color-white);
  background-color: var(--color-accent);
  padding: 0.1rem 1.4rem;
}
@media screen and (max-width: 768px) {
  .c-form__required {
    font-size: 1.2rem;
    line-height: 1.8333333333;
    padding: 0 1rem;
  }
}
.c-form__inputArea {
  width: 62.2rem;
  max-width: calc(100% - 22rem);
}
@media screen and (max-width: 768px) {
  .c-form__inputArea {
    width: 100%;
    max-width: 100%;
    margin-top: 0.8rem;
  }
}
.c-form__inputArea--message {
  width: 100%;
  max-width: 100%;
  margin-top: 1.4rem;
}
@media screen and (max-width: 768px) {
  .c-form__inputArea--message {
    margin-top: 0.4rem;
  }
}
.c-form__inputArea--select {
  width: 100%;
  max-width: 100%;
  margin-top: 1.4rem;
  /* チェックボックスデザイン */
}
.c-form__inputArea--select .wpcf7-list-item {
  display: inline-block;
}
.c-form__inputArea--select .wpcf7-list-item:not(:last-child) {
  margin-right: 3.2rem;
}
.c-form__inputArea--select .wpcf7-list-item label {
  position: relative;
}
.c-form__inputArea--select input[type=checkbox] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-left: 3.4rem;
}
@media screen and (max-width: 768px) {
  .c-form__inputArea--select input[type=checkbox] {
    padding-left: 2.8rem;
  }
}
.c-form__inputArea--select input[type=checkbox] {
  cursor: pointer;
  vertical-align: middle;
}
.c-form__inputArea--select input[type=checkbox]::before,
.c-form__inputArea--select input[type=checkbox]::after {
  content: "";
  display: block;
  position: absolute;
}
.c-form__inputArea--select input[type=checkbox]::before {
  background-color: #fff;
  border: 1px solid #DDDDDD;
  width: 3rem;
  height: 3rem;
  margin-right: 0.8rem;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .c-form__inputArea--select input[type=checkbox]::before {
    width: 2rem;
    height: 2rem;
  }
}
.c-form__inputArea--select input[type=checkbox]::after {
  opacity: 0;
  height: 2rem;
  width: 1rem;
  border-right: 3px solid var(--color-accent);
  border-bottom: 3px solid var(--color-accent);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 0.4rem;
  left: 1rem;
}
@media screen and (max-width: 768px) {
  .c-form__inputArea--select input[type=checkbox]::after {
    top: 0;
    left: 0.6rem;
    border-width: 2px;
    height: 1.6rem;
    width: 0.8rem;
  }
}
.c-form__inputArea--select input[type=checkbox]:checked::after {
  opacity: 1;
}
.c-form__inputArea--2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.4rem;
}
.c-form__inputArea--2col > div {
  width: calc(50% - 0.2rem);
}
.c-form__input, .c-form input[type=date] {
  height: 7rem;
  -webkit-appearance: none; /* iOSのデフォルトスタイルを無効化 */
  -moz-appearance: none;
       appearance: none;
  font-size: 1.6rem;
  width: 100%;
  border: 2px solid var(--border-gray);
  padding: 1.6rem;
  background-color: var(--color-white);
  border-radius: 0;
}
@media screen and (max-width: 768px) {
  .c-form__input, .c-form input[type=date] {
    height: 6rem;
    padding: 1rem 1.6rem;
  }
}
.c-form__select {
  height: 7rem;
  -webkit-appearance: none; /* iOSのデフォルトスタイルを無効化 */
  -moz-appearance: none;
       appearance: none;
  font-size: 1.6rem;
  width: 100%;
  border: 2px solid var(--border-gray);
  padding: 1.6rem;
  background-color: var(--color-white);
  border-radius: 0;
}
@media screen and (max-width: 768px) {
  .c-form__select {
    height: 6rem;
    padding: 1rem 1.6rem;
  }
}
.c-form__txtArea {
  height: 14.8rem;
  width: 100%;
  font-size: 1.6rem;
  width: 100%;
  border: 2px solid var(--border-gray);
  padding: 1.6rem;
}

/* c-targetLink */
.c-targetLink {
  color: var(--fontColor-base);
}
.c-targetLink::after {
  display: inline-block;
  content: "";
  width: 1.814rem;
  height: 1.639rem;
  background: url(../../assets/images/common/i_target.svg) center/contain no-repeat;
}

/* c-footerNav */
.c-footerNav--sub {
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .c-footerNav--sub {
    margin-top: 3rem;
  }
}
.c-footerNav--sub .c-footerNav__list {
  gap: 3rem 2rem;
}
.c-footerNav--sub .c-footerNav__link {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .c-footerNav--sub .c-footerNav__link {
    font-size: 1.2rem;
  }
}
.c-footerNav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3.2rem 2.6rem;
}
@media screen and (max-width: 768px) {
  .c-footerNav__list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.c-footerNav__link {
  display: block;
  color: var(--color-white);
  font-size: 2rem;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .c-footerNav__link {
    font-size: 1.6rem;
  }
}

/* c-mouseStalker */
.c-mouseStalker {
  pointer-events: none;
  position: fixed;
  top: -8px;
  left: -8px;
  width: 16px;
  height: 16px;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  -webkit-transition: top, 0.5s, left 0.5s, width 0.5s, height 0.5s, background-color 0.5s, -webkit-transform 0.2s;
  transition: top, 0.5s, left 0.5s, width 0.5s, height 0.5s, background-color 0.5s, -webkit-transform 0.2s;
  transition: transform 0.2s, top, 0.5s, left 0.5s, width 0.5s, height 0.5s, background-color 0.5s;
  transition: transform 0.2s, top, 0.5s, left 0.5s, width 0.5s, height 0.5s, background-color 0.5s, -webkit-transform 0.2s;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  z-index: 999;
}
@media screen and (max-width: 768px) {
  .c-mouseStalker {
    display: none;
  }
}
.c-mouseStalker.hov_ {
  top: -32px;
  left: -32px;
  width: 64px;
  height: 64px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background: rgba(255, 255, 255, 0.4);
}

/* c-anime */
.c-anime {
  opacity: 0;
  -webkit-transition-duration: 1.2s;
          transition-duration: 1.2s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.c-anime--fadeUp {
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.c-anime--delay {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.c-anime.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* c-anime */
.c-animeImg {
  -webkit-mask-image: url(../../assets/images/common/mask_img.png);
          mask-image: url(../../assets/images/common/mask_img.png);
  mask-mode: alpha;
  -webkit-mask-position: center bottom;
          mask-position: center bottom;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: auto 200%;
          mask-size: auto 200%;
  opacity: 0;
}
.c-animeImg.start {
  -webkit-animation: 2.3s mask-animation cubic-bezier(0.115, 0.405, 0.24, 1) 0s forwards;
          animation: 2.3s mask-animation cubic-bezier(0.115, 0.405, 0.24, 1) 0s forwards;
}

@-webkit-keyframes mask-animation {
  0% {
    -webkit-mask-position: center bottom;
    mask-position: center bottom;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  to {
    -webkit-mask-position: center 0%;
    -webkit-mask-size: auto 500%;
    mask-position: center 0%;
    mask-size: auto 500%;
    opacity: 1;
  }
}

@keyframes mask-animation {
  0% {
    -webkit-mask-position: center bottom;
    mask-position: center bottom;
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  to {
    -webkit-mask-position: center 0%;
    -webkit-mask-size: auto 500%;
    mask-position: center 0%;
    mask-size: auto 500%;
    opacity: 1;
  }
}
/* c-slideWork*/
.c-slideWork {
  display: block;
  color: var(--fontColor-base);
}
.c-slideWork__imgArea {
  width: 100%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-slideWork__imgArea {
    padding-bottom: 2.4rem;
  }
}
.c-slideWork__imgBoxFirst {
  height: 46rem;
  width: calc(100% - 12.5rem);
  overflow: hidden;
}
@media screen and (max-width: 1180px) {
  .c-slideWork__imgBoxFirst {
    height: 38.9830508475vw;
  }
}
@media screen and (max-width: 768px) {
  .c-slideWork__imgBoxFirst {
    width: 100%;
    height: 49.7674418605vw;
  }
}
.c-slideWork__imgBoxFirst img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-slideWork__imgBoxSecond {
  height: calc(100% - 11rem);
  width: 25rem;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 1180px) {
  .c-slideWork__imgBoxSecond {
    width: 21.186440678vw;
    height: 29.6610169492vw;
  }
}
@media screen and (max-width: 768px) {
  .c-slideWork__imgBoxSecond {
    width: 37.2093023256vw;
    height: 26.7441860465vw;
    top: auto;
    bottom: 0;
    right: 0.8rem;
    -webkit-transform: none;
            transform: none;
  }
}
.c-slideWork__imgBoxSecond img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-slideWork__body {
  margin-top: 1rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .c-slideWork__body {
    margin-top: 0;
  }
}
.c-slideWork__date {
  font-size: 1rem;
}
.c-slideWork__ttl {
  font-size: 1.8rem;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .c-slideWork__ttl {
    font-size: 1.4rem;
    margin-top: 0;
  }
}
.c-slideWork__tagList {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem 1rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .c-slideWork__tagList {
    margin-top: 0.4rem;
  }
}

/* c-tag*/
.c-tag {
  display: inline-block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  color: var(--color-white);
  background-color: var(--background-tag);
  padding: 0 0.4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-tag {
    font-size: 1rem;
  }
}

/* c-companyPartner */
.c-companyPartner {
  background-color: var(--background-white02);
}
.c-companyPartner__info {
  padding-top: 9.7rem;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__info {
    padding-top: 5.7rem;
    padding-bottom: 5rem;
  }
}
.c-companyPartner__logo {
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__logo {
    margin: 0 auto 2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__logo--01 {
    width: 12rem;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__logo--02 {
    width: 9rem;
  }
}
.c-companyPartner__headerInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1023px) {
  .c-companyPartner__headerInner {
    display: block;
  }
}
.c-companyPartner__headerTxtArea {
  max-width: 66.8rem;
  margin: 0 0 0 auto;
}
.c-companyPartner__headerTxtArea--02 {
  max-width: 76.8rem;
}
.c-companyPartner__tag {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__tag {
    font-size: 1.2rem;
  }
}
.c-companyPartner__tag span {
  display: inline-block;
  padding: 0 0.8rem;
  border: 1px solid;
}
.c-companyPartner__ttl {
  font-size: 3.6rem;
  letter-spacing: 0.18em;
  line-height: 1.6666666667;
}
@media screen and (max-width: 1023px) {
  .c-companyPartner__ttl {
    font-size: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__ttl {
    font-size: 2.2rem;
    line-height: 1.6363636364;
  }
}
.c-companyPartner__imgArea {
  margin-top: 2.6rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__imgArea {
    margin-top: 1.6rem;
  }
}
.c-companyPartner__imgAreaInner {
  width: 200vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__imgAreaInner picture {
    width: 37.6rem;
  }
}
.c-companyPartner__infoBox {
  padding: 5.8rem 0 29.4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__infoBox {
    width: calc(100vw - 1.6rem);
    background-color: var(--background-white);
    padding-top: 4rem;
    padding-bottom: 3.4rem;
    margin: -13rem 0 0 auto;
  }
}
.c-companyPartner__infoBox::before {
  content: "";
  display: block;
  height: calc(100% - 4.2rem);
  width: calc(100vw - (100vw - 104rem) / 2);
  background-color: var(--background-white);
  position: absolute;
  top: -8.8rem;
  right: 0;
  z-index: 1;
}
@media screen and (max-width: 1400x) {
  .c-companyPartner__infoBox::before {
    width: calc(100vw - 18rem);
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__infoBox::before {
    display: none;
  }
}
.c-companyPartner__infoBoxInner {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__infoBoxInner {
    padding-right: 3.2rem;
  }
}
.c-companyPartner__boxTtl {
  min-height: 38rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4.4rem;
  font-size: 4rem;
  letter-spacing: 0.25em;
  line-height: 1.25;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  position: absolute;
  top: -5rem;
  left: 8.8rem;
}
@media screen and (max-width: 1023px) {
  .c-companyPartner__boxTtl {
    left: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTtl {
    min-height: initial;
    font-size: 3rem;
    gap: 2rem;
    position: initial;
    -webkit-writing-mode: initial;
        -ms-writing-mode: initial;
            writing-mode: initial;
  }
}
.c-companyPartner__boxTtl span {
  margin: auto;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTtl span {
    margin: initial;
  }
}
.c-companyPartner__boxTtl--01 {
  -webkit-box-align: initial;
      -ms-flex-align: initial;
          align-items: initial;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTtl--01 {
    padding-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTtl--01 img {
    width: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTtl--02 img {
    width: 6rem;
    height: auto;
  }
}
.c-companyPartner__boxTxtArea {
  max-width: 73.8rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 1023px) {
  .c-companyPartner__boxTxtArea {
    max-width: calc(100vw - 17rem);
  }
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTxtArea {
    max-width: 100%;
    margin-top: 3rem;
  }
}
.c-companyPartner__boxTxt {
  line-height: 2.2857142857;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__boxTxt {
    font-size: 1.2rem;
  }
}
.c-companyPartner__message {
  background-color: var(--background-white);
}
.c-companyPartner__messageHeader {
  position: relative;
}
.c-companyPartner__messageHeader img {
  width: 100%;
  height: auto;
}
.c-companyPartner__messageCopy {
  font-size: 3.5714285714vw;
  letter-spacing: 0.2em;
  line-height: 1.6;
  color: var(--color-white);
  position: absolute;
  bottom: 6rem;
  left: 5vw;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageCopy {
    font-size: 2.2rem;
    left: 1.6rem;
    bottom: 1.8rem;
  }
}
.c-companyPartner__messageCopy--02 {
  color: var(--color-base);
}
.c-companyPartner__messageBody {
  padding: 8rem 0 22.3rem;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageBody {
    padding: 0.8rem 0 2rem;
  }
}
.c-companyPartner__messageNameArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageNameArea {
    display: block;
  }
}
.c-companyPartner__messageName {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageName {
    font-size: 1.4rem;
  }
}
.c-companyPartner__messageSubttl {
  font-size: 3.6rem;
  letter-spacing: 0.2em;
  line-height: 1.6111111111;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageSubttl {
    font-size: 1.6rem;
    margin-top: 1.2rem;
  }
}
.c-companyPartner__messageTxt {
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  .c-companyPartner__messageTxt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 1.4rem;
  }
}

/* c-bg */
.c-bg {
  background-color: var(--background-lightGray);
}

/* c-article */
.c-article {
  letter-spacing: 0.05em;
  padding: 4.4rem 0 7rem;
}
@media screen and (max-width: 768px) {
  .c-article {
    padding-top: 2rem;
    padding-bottom: 5.8rem;
  }
}
.c-article h2 {
  font-size: 2rem;
  margin: 3.6rem 0 1rem;
}
@media screen and (max-width: 768px) {
  .c-article h2 {
    font-size: 1.4rem;
    margin: 1.8rem 0 0.6rem;
  }
}
.c-article p {
  margin: 1rem 0;
}
@media screen and (max-width: 768px) {
  .c-article p {
    font-size: 1.2rem;
    line-height: 2;
    margin: 0.6rem 0;
  }
}

/* c-swiperConcept*/
.c-swiperConcept__thumbnailArea {
  background-color: var(--color-gray);
  padding: 3rem 0;
  margin-top: 5.4rem;
}
.c-swiperConcept__swiperThumbnail .swiper-slide {
  height: auto;
  font-size: 2rem;
  line-height: 1.8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide {
    font-size: 1.2rem;
    line-height: 2.3333333333;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide--01 {
  width: 24rem;
}
@media screen and (max-width: 1116px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide--01 {
    width: 8rem;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide--02 {
  width: 28.4rem;
}
@media screen and (max-width: 1116px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide--02 {
    width: 10rem;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide--03 {
  width: 14rem;
}
@media screen and (max-width: 1116px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide--03 {
    width: 9rem;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide--04 {
  width: 18.6rem;
}
@media screen and (max-width: 1116px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide--04 {
    width: 10rem;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide span {
  display: inline-block;
  padding: 0 0.8rem;
  text-align: center;
}
@media screen and (max-width: 1116px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide span {
    font-size: 1.6rem;
    padding: 0 2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperThumbnail .swiper-slide span {
    font-size: 1rem;
  }
}
.c-swiperConcept__swiperThumbnail .swiper-slide.swiper-slide-thumb-active span {
  background-color: var(--background-darkGray02);
}
.c-swiperConcept__thumbnailInner {
  max-width: 66.4rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__thumbnailInner {
    max-width: 40rem;
  }
}
.c-swiperConcept__thumbnailInner--wide {
  max-width: 109rem;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__thumbnailInner--wide {
    max-width: 40rem;
  }
}
.c-swiperConcept__thumbnailInner--wide .swiper-slide span {
  padding: 0 1rem;
}
.c-swiperConcept__swiperTxt {
  padding: 1rem 0;
  margin-top: 6rem;
}
.c-swiperConcept__swiperTxt .swiper-slide {
  font-size: 4rem;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt .swiper-slide {
    font-size: 2.2rem;
    line-height: 2.2727272727;
  }
}
.c-swiperConcept__swiperTxt .swiper-slide--01 {
  width: 50rem;
}
.c-swiperConcept__swiperTxt .swiper-slide--02 {
  width: 50rem;
}
.c-swiperConcept__swiperTxt .swiper-slide--03 {
  width: 37rem;
}
.c-swiperConcept__swiperTxt .swiper-slide--04 {
  width: 50rem;
}
.c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-prev {
  text-align: left;
  color: #525252;
}
.c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-next {
  text-align: right;
  color: #525252;
}
.c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-active {
  text-align: center;
  color: var(--color-white);
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-active {
    position: relative;
    top: -0.8rem;
  }
}
.c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-active span {
  display: inline-block;
  position: relative;
}
.c-swiperConcept__swiperTxt .swiper-slide.swiper-slide-active span::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--color-white);
  position: absolute;
  bottom: -1rem;
  left: 0;
}
.c-swiperConcept__swiperTxt .swiper-button-next,
.c-swiperConcept__swiperTxt .swiper-button-prev {
  width: 3.2rem;
  height: 3.2rem;
}
.c-swiperConcept__swiperTxt .swiper-button-next::after,
.c-swiperConcept__swiperTxt .swiper-button-prev::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.c-swiperConcept__swiperTxt .swiper-button-next {
  right: auto;
  left: calc(50% + 14rem);
  top: calc(50% + 1.2rem);
  bottom: auto;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt .swiper-button-next {
    left: calc(50% + 8rem);
  }
}
.c-swiperConcept__swiperTxt .swiper-button-next::after {
  background: url(../../assets/images/common/i_swiper_r.png) no-repeat center center/contain;
}
.c-swiperConcept__swiperTxt .swiper-button-prev {
  right: auto;
  left: calc(50% - 18rem);
  top: calc(50% + 1.2rem);
  bottom: auto;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt .swiper-button-prev {
    left: calc(50% - 11rem);
  }
}
.c-swiperConcept__swiperTxt .swiper-button-prev::after {
  background: url(../../assets/images/common/i_swiper_l.png) no-repeat center center/contain;
}
.c-swiperConcept__swiperTxt--wide {
  width: 100vw;
  margin: 6rem calc(50% - 50vw) 0;
}
.c-swiperConcept__swiperTxt--wide .swiper-button-next--txt02 {
  left: calc(50% + 27rem);
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt--wide .swiper-button-next--txt02 {
    left: calc(50% + 15rem);
  }
}
.c-swiperConcept__swiperTxt--wide .swiper-button-prev--txt02 {
  left: calc(50% - 30rem);
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__swiperTxt--wide .swiper-button-prev--txt02 {
    left: calc(50% - 18rem);
  }
}
.c-swiperConcept__swiperContent {
  margin-top: 8rem;
}
.c-swiperConcept__swiperContent img {
  width: 100%;
}
.c-swiperConcept__ttl {
  font-size: 2.4rem;
  line-height: 2.4166666667;
  letter-spacing: 0.05em;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__ttl {
    font-size: 1.6rem;
    line-height: 2;
  }
}
.c-swiperConcept__txt {
  margin-top: 3rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .c-swiperConcept__txt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 1rem;
  }
}

/* p-mv */
.p-mv {
  height: 100svh;
  overflow: hidden;
  position: relative;
}
.p-mv--center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-mv--works .p-mv__desc {
    padding-bottom: 5rem;
  }
}
.p-mv--works .p-mv__txt span {
  font-size: 1.4rem;
  margin-right: 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-mv--works .p-mv__txt span {
    font-size: 1.2rem;
  }
}
.p-mv--works .p-mv__ttl {
  font-size: 3.6rem;
  line-height: 1.6666666667;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-mv--works .p-mv__ttl {
    font-size: 3.2rem;
    line-height: 1.5625;
  }
}
.p-mv--concept .p-mv__bg {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}
.p-mv__ttlArea {
  color: var(--color-white);
  text-align: center;
  position: relative;
  z-index: 3;
}
.p-mv__ttlEn {
  font-family: var(--fontFamily-accent);
  font-weight: var(--fontWeight-regular);
  letter-spacing: 0.05rem;
  line-height: 1.3;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-mv__ttlEn {
    font-size: 1.6rem;
  }
}
.p-mv__ttlJa {
  letter-spacing: 0.1em;
  font-size: 6rem;
}
@media screen and (max-width: 768px) {
  .p-mv__ttlJa {
    font-size: 3rem;
  }
}
.p-mv__desc {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  color: var(--color-white);
  padding-bottom: 7.6rem;
}
@media screen and (max-width: 768px) {
  .p-mv__desc {
    padding-bottom: 3.6rem;
  }
}
.p-mv__date {
  display: inline-block;
  font-size: 1.6rem;
  font-family: var(--fontFamily-accent);
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .p-mv__date {
    font-size: 1.2rem;
  }
}
.p-mv__txt span {
  display: inline-block;
  font-size: 2rem;
  line-height: 1.5;
  color: var(--fontColor-base);
  background-color: var(--background-white);
  padding: 0.4rem 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-mv__txt span {
    font-size: 1.4rem;
  }
}
.p-mv__ttl {
  font-size: 5rem;
  font-weight: var(--fontWeight-regular);
  line-height: 1.6;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-mv__ttl {
    font-size: 3.2rem;
    margin-top: 1rem;
  }
}
.p-mv__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-mv__bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--background-black_30);
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
}
.p-mv__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* p-eventLead */
.p-eventLead {
  padding: 11rem 0 13rem;
  color: var(--color-white);
  background-color: var(--background-dark);
}
@media screen and (max-width: 768px) {
  .p-eventLead {
    padding: 6.4rem 0 8rem;
  }
}
.p-eventLead__content {
  max-width: 78.8rem;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 3.6rem 8.5025380711%;
}
@media screen and (max-width: 768px) {
  .p-eventLead__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.4rem;
  }
}
.p-eventLead__ttl {
  font-size: 5rem;
  letter-spacing: 0.2em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  padding-top: 2.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-eventLead__ttl {
    font-size: 3.2rem;
    padding-top: 0;
  }
}
.p-eventLead__txt {
  letter-spacing: 0.05em;
  line-height: 3.5714285714;
}
@media screen and (max-width: 768px) {
  .p-eventLead__txt {
    line-height: 2.8571428571;
  }
}

/* p-eventDesign */
.p-eventDesign {
  padding: 10.4rem 0 13rem;
  color: var(--color-white);
  background: url(../../assets/images/event/eventDesign_bg.jpg) center/cover no-repeat;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-eventDesign {
    padding: 8.4rem 0;
  }
}
.p-eventDesign::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--background-black_30);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-eventDesign__content {
  position: relative;
  z-index: 2;
}
.p-eventDesign__ttl {
  font-size: 3.6rem;
  letter-spacing: 0.1em;
  line-height: 1.6666666667;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-eventDesign__ttl {
    font-size: 2.2rem;
    line-height: 2.2727272727;
  }
}
.p-eventDesign__txt {
  letter-spacing: 0.05em;
  line-height: 2.8571428571;
  text-align: center;
  margin-top: 3.7rem;
}
@media screen and (max-width: 768px) {
  .p-eventDesign__txt {
    margin-top: 2.7rem;
  }
}
.p-eventDesign__btnArea {
  max-width: 25rem;
  margin: 5rem auto 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-eventDesign__btnArea {
    max-width: 21.3rem;
    margin-top: 4rem;
  }
}

/* p-eventSlider */
.p-eventSlider {
  height: 57.1428571429vw;
  background-color: var(--background-black_30);
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-eventSlider {
    height: 69.7674418605vw;
  }
}
.p-eventSlider__swiper {
  height: 100%;
}
.p-eventSlider__slide {
  height: 100%;
  height: 100%;
}
.p-eventSlider__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-eventSlider .swiper-button-prev {
  width: 3.3rem;
  height: 3.3rem;
  left: 4rem;
}
@media screen and (max-width: 768px) {
  .p-eventSlider .swiper-button-prev {
    width: 2.3rem;
    height: 2.3rem;
    left: 1.6rem;
  }
}
.p-eventSlider .swiper-button-prev::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../../assets/images/common/slide_arrow_l.png) center/contain no-repeat;
}
.p-eventSlider .swiper-button-next {
  width: 3.3rem;
  height: 3.3rem;
  right: 4rem;
}
@media screen and (max-width: 768px) {
  .p-eventSlider .swiper-button-next {
    width: 2.3rem;
    height: 2.3rem;
    right: 1.6rem;
  }
}
.p-eventSlider .swiper-button-next::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../../assets/images/common/slide_arrow_r.png) center/contain no-repeat;
}

/* p-eventDetail */
.p-eventDetail {
  padding: 10rem 0;
  background-color: var(--background-lightGray);
}
@media screen and (max-width: 768px) {
  .p-eventDetail {
    padding: 7.4rem 0 2.4rem;
  }
}
.p-eventDetail__ttl {
  font-size: 5rem;
  letter-spacing: 0.2em;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-eventDetail__ttl {
    font-size: 2.6rem;
  }
}
.p-eventDetail__lead {
  letter-spacing: 0.05em;
  line-height: 3.5714285714;
  text-align: center;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .p-eventDetail__lead {
    line-height: 2.8571428571;
    letter-spacing: 0;
  }
}
.p-eventDetail__tableArea {
  margin-top: 8.8rem;
}
@media screen and (max-width: 768px) {
  .p-eventDetail__tableArea {
    margin-top: 2.8rem;
  }
}

/* p-eventMap */
.p-eventMap {
  padding: 5rem 0 19.4rem;
  background-color: var(--background-lightGray);
}
@media screen and (max-width: 768px) {
  .p-eventMap {
    padding: 2rem 0 8rem;
  }
}
.p-eventMap__ttl {
  font-size: 3.6rem;
  letter-spacing: 0.2em;
  line-height: 1.6111111111;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-eventMap__ttl {
    font-size: 2.6rem;
  }
}
.p-eventMap__lead {
  letter-spacing: 0.05em;
  line-height: 2.2857142857;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .p-eventMap__lead {
    line-height: 2.2857142857;
    letter-spacing: 0;
  }
}
.p-eventMap__mapArea {
  max-width: 104rem;
  margin: 2.2rem auto 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-eventMap__mapArea {
    margin-top: 2rem;
  }
}
.p-eventMap__mapArea .acf-map, .p-eventMap__mapArea iframe {
  width: 100%;
  height: 60rem;
}
@media screen and (max-width: 768px) {
  .p-eventMap__mapArea .acf-map, .p-eventMap__mapArea iframe {
    height: 23rem;
  }
}

/* p-eventDesigner */
.p-eventDesigner {
  padding: 10rem 0 13rem;
  background-color: var(--background-darkGray);
}
@media screen and (max-width: 768px) {
  .p-eventDesigner {
    padding: 6rem 0 6.6rem;
  }
}
.p-eventDesigner__content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 800px) {
  .p-eventDesigner__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media screen and (max-width: 1400px) {
  .p-eventDesigner__inner {
    width: 100%;
    padding: 0 0 0 calc((100vw - 1040px) / 2);
  }
}
@media screen and (max-width: 800px) {
  .p-eventDesigner__inner {
    padding: 0 2rem;
  }
}
.p-eventDesigner__desc {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-top: 1.4rem;
}
@media screen and (max-width: 1400px) {
  .p-eventDesigner__desc {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial;
    width: calc(100% - 61.1rem);
  }
}
@media screen and (max-width: 1220px) {
  .p-eventDesigner__desc {
    width: 51.6rem;
    max-width: 100%;
    padding-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__desc {
    padding-left: 0;
    padding-top: 4.2rem;
  }
}
.p-eventDesigner__imgArea {
  width: 61.1rem;
  margin-right: -18rem;
}
@media screen and (max-width: 1400px) {
  .p-eventDesigner__imgArea {
    position: absolute;
    top: 0;
    right: 0;
    margin-right: 0;
  }
}
@media screen and (max-width: 1220px) {
  .p-eventDesigner__imgArea {
    width: calc(100% - 53.6rem);
  }
}
@media screen and (max-width: 800px) {
  .p-eventDesigner__imgArea {
    position: initial;
    width: 65.8139534884vw;
    max-width: 30rem;
  }
}
.p-eventDesigner__imgWrap {
  width: 100%;
  padding-top: 129.2962356792%;
  position: relative;
}
.p-eventDesigner__imgWrap img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.p-eventDesigner__en {
  font-size: 3.2rem;
  font-family: var(--fontFamily-accent);
  line-height: 1.25;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__en {
    font-size: 2.4rem;
  }
}
.p-eventDesigner__ttl {
  margin-top: 4.8rem;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__ttl {
    margin-top: 3rem;
  }
}
.p-eventDesigner__role {
  font-size: 3rem;
  line-height: 2.1333333333;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__role {
    font-size: 1.8rem;
  }
}
.p-eventDesigner__name {
  display: block;
  font-size: 4rem;
  line-height: 1.35;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__name {
    font-size: 3.2rem;
  }
}
.p-eventDesigner__lead {
  letter-spacing: 0.05em;
  line-height: 2.2857142857;
  margin-top: 4.2rem;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__lead {
    margin-top: 2.4rem;
  }
}
.p-eventDesigner__profileTtl {
  font-family: var(--fontFamily-accent);
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .p-eventDesigner__profileTtl {
    margin-top: 2.6rem;
  }
}
.p-eventDesigner__profileTxt {
  line-height: 2.2857142857;
}

/* p-eventSectionImg */
.p-eventSectionImg img {
  width: 100%;
}

/* p-form */
.p-form {
  padding: 10.4rem 0 12rem;
  background-color: var(--background-white02);
}
@media screen and (max-width: 768px) {
  .p-form {
    padding: 4rem 0 8.2rem;
  }
}
.p-form ::-webkit-input-placeholder {
  color: var(--color-placeholder);
}
.p-form ::-moz-placeholder {
  color: var(--color-placeholder);
}
.p-form :-ms-input-placeholder {
  color: var(--color-placeholder);
}
.p-form ::-ms-input-placeholder {
  color: var(--color-placeholder);
}
.p-form ::placeholder {
  color: var(--color-placeholder);
}
.p-form__enTtl {
  letter-spacing: 0.05em;
  line-height: 1.7142857143;
  color: var(--color-gray);
  text-align: center;
  text-transform: capitalize;
}
.p-form__ttl {
  font-size: 4rem;
  letter-spacing: 0.2em;
  line-height: 1.25;
  text-align: center;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-form__ttl {
    font-size: 2.6rem;
  }
}
.p-form__subttl {
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 2.4166666667;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--border-gray02);
}
@media screen and (max-width: 768px) {
  .p-form__subttl {
    font-size: 1.6rem;
    padding-bottom: 0.2rem;
  }
}
.p-form__body {
  max-width: 90rem;
  margin: 8rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-form__body {
    margin-top: 5.4rem;
  }
}
.p-form__box {
  margin-top: 3.4rem;
}
@media screen and (max-width: 768px) {
  .p-form__box {
    margin-top: 1.8rem;
  }
}
.p-form__content {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-form__content {
    margin-top: 0.8rem;
  }
}
.p-form__privacy {
  font-size: 1.8rem;
  margin-top: 2.8rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-form__privacy {
    font-size: 1.4rem;
    margin-top: 1.4rem;
  }
}
.p-form__btnArea {
  max-width: 33.4rem;
  margin: 2.8rem auto 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-form__btnArea {
    max-width: 27rem;
    margin-top: 1.4rem;
  }
}
.p-form__btn {
  display: block;
  width: 100%;
  font-size: 2rem;
  color: var(--background-white);
  background: var(--color-accent) url(../../assets/images/common/i_arrow.svg) center right 1.5rem/0.886rem auto no-repeat;
  border: 1px solid #A3A3A3;
  cursor: pointer;
  padding: 1.9rem 1rem;
}
@media screen and (max-width: 768px) {
  .p-form__btn {
    font-size: 1.6rem;
    padding: 1.5rem 1rem;
  }
}

/* p-contact */
.p-contact {
  padding: 9.2rem 0 10.6rem;
  background: var(--background-darkGray);
}
@media screen and (max-width: 768px) {
  .p-contact {
    padding: 4rem 0 4.6rem;
  }
}
.p-contact__content {
  width: calc(100% - 18rem);
  margin: 0 0 0 auto;
}
@media screen and (max-width: 1000px) {
  .p-contact__content {
    width: calc(100% - 10rem);
  }
}
@media screen and (max-width: 768px) {
  .p-contact__content {
    width: calc(100% - 1.6rem);
  }
}
.p-contact__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-contact__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.8rem;
  }
}
.p-contact__item {
  width: 50%;
  background: var(--background-dark);
}
@media screen and (max-width: 768px) {
  .p-contact__item {
    width: 100%;
  }
}
.p-contact__link {
  height: 30rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: var(--color-white);
  padding: 2.1rem 3.6rem;
}
@media screen and (max-width: 768px) {
  .p-contact__link {
    height: 20.4rem;
    padding: 1.2rem 1.6rem;
  }
}
.p-contact__link--event {
  background: url(../../assets/images/common/bg_event.jpg) center/cover no-repeat;
}
.p-contact__link--contact {
  background: url(../../assets/images/common/bg_contact.jpg) center/cover no-repeat;
}
.p-contact__en {
  font-family: var(--fontFamily-accent);
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.7142857143;
}
.p-contact__ttl {
  font-size: 4rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding-right: 3rem;
  position: relative;
}
@media screen and (max-width: 1000px) {
  .p-contact__ttl {
    font-size: 3rem;
  }
}
.p-contact__ttl::after {
  content: "";
  display: block;
  width: 1.428rem;
  height: 1.665rem;
  background: url(../../assets/images/common/i_arrow.svg) center/contain no-repeat;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* eventList */
.p-eventList__item {
  padding: 11rem 0 9rem;
}
@media screen and (max-width: 768px) {
  .p-eventList__item {
    padding: 4.6rem 0;
  }
}
.p-eventList__item:nth-child(2n) {
  background-color: var(--background-gray02);
}
.p-eventList__thumb {
  width: 100%;
}
.p-eventList__thumb img {
  width: 100%;
}
.p-eventList__link {
  display: block;
  color: var(--fontColor-base);
}
.p-eventList__desc {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-eventList__desc {
    margin-top: 0.2rem;
  }
}
.p-eventList__date {
  font-family: var(--fontFamily-accent);
  font-size: 1.4rem;
}
.p-eventList__ttl {
  font-size: 4rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .p-eventList__ttl {
    font-size: 2.4rem;
  }
}
.p-eventList__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-eventList__info {
    margin-top: 0.6rem;
  }
}
.p-eventList__infoIcon {
  width: 1.667rem;
  height: 2rem;
}
.p-eventList__infoTxt {
  font-size: 2rem;
  color: var(--color-gray);
}
@media screen and (max-width: 768px) {
  .p-eventList__infoTxt {
    font-size: 1.6rem;
  }
}

/* p-mvTop */
.p-mvTop {
  height: 100svh;
  background-color: var(--background-dark);
  overflow: hidden;
  position: relative;
}
.p-mvTop--center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-mvTop__inner {
  max-width: 131.2rem;
  padding: 0 2.6rem;
  margin: auto;
}
.p-mvTop__desc {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  color: var(--color-white);
  padding-bottom: 7.6rem;
}
@media screen and (max-width: 768px) {
  .p-mvTop__desc {
    padding-bottom: 19rem;
  }
}
.p-mvTop__descInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-mvTop__descInner {
    display: block;
  }
}
.p-mvTop__txt {
  max-width: 42rem;
  font-size: 1.2rem;
  line-height: 2.6666666667;
}
@media screen and (max-width: 768px) {
  .p-mvTop__txt {
    margin-top: 1rem;
  }
}
.p-mvTop__ttl {
  font-size: 4.8rem;
  font-weight: var(--fontWeight-regular);
  letter-spacing: 0.2em;
  line-height: 1.6166666667;
}
@media screen and (max-width: 768px) {
  .p-mvTop__ttl {
    font-size: 3.2rem;
    letter-spacing: 0.2em;
    line-height: 1.625;
  }
}
.p-mvTop__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-mvTop__bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 50%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(70%, var(--background-darkGray03)), to(var(--background-darkGray03)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), var(--background-darkGray03) 70%, var(--background-darkGray03));
  z-index: 2;
  position: absolute;
  bottom: 0;
  left: 0;
}
.p-mvTop__swiper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-mvTop__swiper img {
  width: calc(100% + 80px);
  max-width: calc(100% + 80px);
  height: auto;
  -webkit-animation: moveToLeft_PC 10s forwards;
          animation: moveToLeft_PC 10s forwards;
}
@media screen and (max-width: 768px) {
  .p-mvTop__swiper img {
    width: 140rem;
    max-width: 140rem;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-animation: moveToLeft_SP 16s forwards;
            animation: moveToLeft_SP 16s forwards;
  }
}
.p-mvTop__swiper .swiper-pagination-mv {
  width: 1.2rem;
  position: absolute;
  right: auto;
  top: auto;
  left: 4.2rem;
  bottom: 25.6rem;
  z-index: 3;
  color: var(--color-white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
  padding-bottom: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-mvTop__swiper .swiper-pagination-mv {
    left: auto;
    right: 1rem;
    bottom: 32rem;
  }
}
.p-mvTop__swiper .swiper-pagination-mv .swiper-pagination-bullet {
  display: block;
  width: 100%;
  height: 1px;
  background: #707070;
  opacity: 1;
  border-radius: 0;
  margin: 0;
}
.p-mvTop__swiper .swiper-pagination-mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--color-white);
}
.p-mvTop__swiper .swiper-pagination-extra {
  color: var(--color-white);
  font-size: 1rem;
  position: absolute;
  left: 4.2rem;
  bottom: 25.6rem;
  z-index: 3;
}
@media screen and (max-width: 768px) {
  .p-mvTop__swiper .swiper-pagination-extra {
    left: auto;
    right: 1rem;
    bottom: 32rem;
  }
}
.p-mvTop__swiper .progressbar {
  position: absolute;
  bottom: 32rem;
  left: 4.8rem;
  z-index: 3;
  width: 1px;
  height: 39.4rem;
  max-height: calc(100vh - 44rem);
  margin-top: 10px;
  background: #707070;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-mvTop__swiper .progressbar {
    max-height: calc(100vh - 60rem);
    left: auto;
    right: 1.6rem;
    bottom: 39rem;
  }
}
.p-mvTop__swiper .progressbar span {
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background: var(--color-white);
  border-radius: 7px;
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}

@-webkit-keyframes moveToLeft_PC {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
  }
}

@keyframes moveToLeft_PC {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
  }
}
@-webkit-keyframes moveToLeft_SP {
  0% {
    -webkit-transform: translateX(-40%);
            transform: translateX(-40%);
  }
  100% {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@keyframes moveToLeft_SP {
  0% {
    -webkit-transform: translateX(-40%);
            transform: translateX(-40%);
  }
  100% {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
/* p-topLead */
.p-topLead {
  color: var(--color-white);
  padding: 24.2rem 0;
  background-color: var(--background-darkGray03);
}
@media screen and (max-width: 768px) {
  .p-topLead {
    padding: 11.6rem 0 7.2rem;
  }
}
.p-topLead__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 6.6%;
}
@media screen and (max-width: 768px) {
  .p-topLead__content {
    display: block;
  }
}
.p-topLead__header {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 1.5;
  padding-right: 3rem;
}
@media screen and (max-width: 768px) {
  .p-topLead__header {
    padding-right: 0;
    margin: auto;
  }
}
.p-topLead__en {
  font-weight: var(--fontWeight-regular);
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-topLead__en {
    font-size: 1rem;
  }
}
.p-topLead__ttl {
  font-size: 5rem;
  letter-spacing: 0.2em;
  padding-right: 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-topLead__ttl {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-topLead__body {
    max-width: 38.2rem;
    margin: 6.2rem auto 0;
  }
}
.p-topLead__txt {
  font-size: 1.8rem;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-topLead__txt {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 0 auto;
  }
}

/* p-skill */
.p-skill {
  color: var(--color-white);
  padding: 9rem 0 28rem;
  background-color: var(--background-darkGray04);
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-skill {
    padding: 7rem 0 8rem;
  }
}
.p-skill__outer {
  position: relative;
}
.p-skill__bg01 {
  position: absolute;
  top: 1.6rem;
  left: calc(50% + 30.4rem);
}
@media screen and (max-width: 768px) {
  .p-skill__bg01 {
    display: none;
  }
}
.p-skill__bg02 {
  position: absolute;
  bottom: -20rem;
  left: calc(50% - 63.8rem);
}
@media screen and (max-width: 768px) {
  .p-skill__bg02 {
    display: none;
  }
}
.p-skill__bgSP {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-skill__bgSP {
    display: block;
    margin: 5.2rem 1.6rem 0;
  }
}
.p-skill__bgSP img {
  margin: auto;
}
.p-skill__ttl {
  font-size: 5rem;
  line-height: 1.6;
  letter-spacing: 0.2em;
  padding-left: 11%;
}
@media screen and (max-width: 768px) {
  .p-skill__ttl {
    font-size: 3rem;
    padding-left: 0;
  }
}
.p-skill__body {
  max-width: 46rem;
  margin: 10rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-skill__body {
    max-width: 100%;
    margin-top: 2rem;
  }
}
.p-skill__txt {
  line-height: 2.3;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-skill__txt {
    font-size: 1.2rem;
    line-height: 2.6666666667;
  }
}
.p-skill__btnArea {
  text-align: center;
  max-width: 25rem;
  margin-top: 7.4rem;
}
@media screen and (max-width: 768px) {
  .p-skill__btnArea {
    max-width: 18rem;
    margin-top: 3rem;
  }
}

/* p-404 */
.p-404 {
  padding: 10rem 0 6rem;
  color: var(--color-white);
  background-color: var(--background-darkGray02);
}
@media screen and (max-width: 768px) {
  .p-404 {
    padding: 6rem 0;
  }
}
.p-404 a {
  color: var(--color-white);
  display: inline-block;
  text-decoration: underline;
  margin-top: 20px;
}

/* p-works */
.p-works {
  padding: 11.3rem 0 9rem;
  background: url(../../assets/images/top/works_bg.jpg) no-repeat center center/cover;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-works {
    padding: 4.4rem 0 8rem;
  }
}
.p-works__header {
  padding-top: 11.3rem;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-works__header {
    position: initial;
    padding-top: 0;
  }
}
.p-works__body {
  max-width: calc(100vw - ((100vw - 104rem) / 2 + 17rem));
  margin: 0 0 0 auto;
}
@media screen and (max-width: 1400px) {
  .p-works__body {
    max-width: calc(100% - 35rem);
  }
}
@media screen and (max-width: 1040px) {
  .p-works__body {
    max-width: calc(100vw - 17rem);
  }
}
@media screen and (max-width: 768px) {
  .p-works__body {
    max-width: 100%;
    padding-left: 1.6rem;
    margin-top: 2.4rem;
  }
}
.p-works__slide {
  width: 82.5rem;
  max-width: 100%;
}
.p-works .swiper-pagination {
  position: initial;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: 9rem;
}
.p-works .swiper-pagination .swiper-pagination-bullet {
  background: #EAEAEA;
  opacity: 1;
  margin: 0 0.8rem;
}
.p-works .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #A3A3A3;
}
.p-works__btnArea {
  max-width: 25rem;
  margin: 3.4rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-works__btnArea {
    max-width: 18rem;
    margin-top: 6rem;
  }
}

/* p-feature */
.p-feature__videoArea {
  width: 100%;
  padding-top: 41.1428571429%;
  background: url(../../assets/images/top/feature_bg.jpg) no-repeat center center/cover;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-feature__videoArea {
    padding-top: 103.023255814%;
  }
}
.p-feature__videoArea video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-feature__body {
  color: var(--color-white);
  background-color: #0B0502;
}
.p-feature__list {
  padding: 12rem 0 18.6rem;
}
@media screen and (max-width: 768px) {
  .p-feature__list {
    padding: 10rem 0 0;
  }
}
.p-feature__item:not(:first-child) {
  margin-top: 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-feature__item:not(:first-child) {
    margin-top: 2.8rem;
  }
}
.p-feature__link {
  min-height: 46rem;
  display: block;
  color: var(--color-white);
  position: relative;
}
.p-feature__link::before {
  content: "";
  display: block;
  width: 0%;
  height: 100%;
  background-color: #0B0502;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  opacity: 0.6;
  -webkit-transition: width 0.5s;
  transition: width 0.5s;
}
.p-feature__link:hover::before {
  width: 100%;
}
.p-feature__link:hover .p-feature__inner {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
  opacity: 1;
}
.p-feature__inner {
  position: relative;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
@media screen and (max-width: 768px) {
  .p-feature__inner {
    opacity: 1;
  }
}
.p-feature__header {
  max-width: 19.4rem;
  padding-top: 6.6rem;
}
@media screen and (max-width: 768px) {
  .p-feature__header {
    max-width: 100%;
    padding-top: 0;
  }
}
.p-feature__lead {
  line-height: 1.5;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-feature__lead {
    font-size: 1.2rem;
    margin-top: 1rem;
  }
}
.p-feature__btnArea {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-feature__btnArea {
    display: block;
    width: 18rem;
    margin-top: 3rem;
  }
}
.p-feature__imgArea {
  max-height: 46rem;
  width: calc(100vw - ((100vw - 104rem) / 2 + 34rem));
  position: absolute;
  right: 0;
  top: 0;
  overflow: hidden;
}
@media screen and (max-width: 1400px) {
  .p-feature__imgArea {
    width: calc(100vw - 52.7rem);
  }
}
@media screen and (max-width: 1040px) {
  .p-feature__imgArea {
    width: calc(100vw - 34rem);
  }
}
@media screen and (max-width: 768px) {
  .p-feature__imgArea {
    position: initial;
    width: 100%;
    margin-top: 4.4rem;
  }
}
.p-feature__imgArea img {
  width: 100%;
}

/* p-topEvent */
.p-topEvent {
  padding: 13.6rem 0 11rem;
  color: var(--color-white);
  background-color: var(--background-darkGray04);
}
@media screen and (max-width: 768px) {
  .p-topEvent {
    padding: 2.4rem 0 6rem;
  }
}
.p-topEvent__inner {
  position: relative;
}
.p-topEvent__header {
  position: absolute;
  top: 0;
  right: -4rem;
}
@media screen and (max-width: 1180px) {
  .p-topEvent__header {
    position: initial;
    margin-bottom: 2rem;
  }
  .p-topEvent__header .c-ttl {
    margin: auto;
  }
}
.p-topEvent__list {
  max-width: 82.4rem;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-topEvent__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-topEvent__item {
  width: calc(50% - 1.2rem);
}
@media screen and (max-width: 768px) {
  .p-topEvent__item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .p-topEvent__item:not(:first-child) {
    margin-top: 1rem;
  }
}
.p-topEvent__link {
  display: block;
  color: var(--fontColor-white);
}
@media screen and (max-width: 768px) {
  .p-topEvent__desc {
    margin-top: 0.6rem;
  }
}
.p-topEvent__date {
  font-family: var(--fontFamily-accent);
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-topEvent__date {
    font-size: 1rem;
  }
}
.p-topEvent__ttl {
  font-size: 1.6rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .p-topEvent__ttl {
    font-size: 1.4rem;
    margin-top: 1rem;
  }
}
.p-topEvent__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
@media screen and (max-width: 768px) {
  .p-topEvent__info {
    margin-top: 0.6rem;
    gap: 0.4rem;
  }
}
.p-topEvent__infoIcon {
  width: 1.4rem;
  height: 1.6rem;
  padding-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  .p-topEvent__infoIcon {
    width: 1.1rem;
    height: 1.3rem;
    padding-top: 0;
  }
}
.p-topEvent__infoTxt {
  font-size: 1.4rem;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .p-topEvent__infoTxt {
    font-size: 1rem;
    margin-top: 0;
  }
}
.p-topEvent__btnArea {
  max-width: 25rem;
  margin: 5rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-topEvent__btnArea {
    max-width: 18rem;
    margin-top: 3.2rem;
  }
}

/* p-modelhouse */
.p-modelhouse {
  padding: 12rem 0 20rem;
  color: var(--color-white);
  background: url(../../assets/images/top/modelhouse_bg.jpg) no-repeat center center/cover;
}
@media screen and (max-width: 768px) {
  .p-modelhouse {
    padding: 3.4rem 0 5.6rem;
  }
}
.p-modelhouse__content {
  position: relative;
}
.p-modelhouse__header {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1000px) {
  .p-modelhouse__header {
    position: initial;
  }
}
.p-modelhouse__copy {
  font-size: 3.6rem;
  line-height: 1.5;
  letter-spacing: 0.4em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  padding-top: 1rem;
}
@media screen and (max-width: 768px) {
  .p-modelhouse__copy {
    font-size: 2rem;
    line-height: 1.8;
    padding-top: 0;
    margin: auto;
  }
}
.p-modelhouse__body {
  max-width: 58rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .p-modelhouse__body {
    margin-top: 1.6rem;
  }
}
.p-modelhouse__txt {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.7;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .p-modelhouse__txt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 2rem;
  }
}
.p-modelhouse__btnArea {
  max-width: 25rem;
  margin-top: 2.6rem;
}
@media screen and (max-width: 768px) {
  .p-modelhouse__btnArea {
    max-width: 18rem;
    margin-top: 1.6rem;
  }
}

/* p-partner */
/* p-land */
.p-land__lead {
  color: var(--color-white);
  background: url(../images/local_production/lead_img.jpg) no-repeat center center/cover;
}
.p-land__leadContent {
  padding: 14rem 0 12rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1000px) {
  .p-land__leadContent {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .p-land__leadContent {
    padding: 10rem 0;
  }
}
.p-land__ttl {
  font-size: 3.6rem;
  line-height: 1.9444444444;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-land__ttl {
    font-size: 2.2rem;
    max-width: 27rem;
    margin: auto;
  }
}
.p-land__txt {
  line-height: 2.8571428571;
  max-width: 46rem;
  margin-top: 7.4rem;
}
@media screen and (max-width: 1000px) {
  .p-land__txt {
    margin: 2rem 0 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .p-land__txt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 4rem;
  }
}
.p-land__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 7.8rem;
  padding: 17rem 0;
  color: var(--color-white);
  background-color: var(--background-darkGray04);
}
@media screen and (max-width: 1000px) {
  .p-land__list {
    gap: 0;
    padding: 1rem 0 8rem;
  }
}
.p-land__item {
  min-height: 70rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1000px) {
  .p-land__item {
    padding: 7rem 0 1.2rem;
    min-height: initial;
  }
}
.p-land__item--reverse .p-land__content {
  margin: 0 0 0 auto;
}
.p-land__item--reverse .p-land__imgArea {
  left: calc(50% - 70rem);
}
.p-land__imgArea {
  width: 58.6rem;
  max-width: 100%;
  height: 70rem;
  position: absolute;
  top: 0;
  left: calc(50% + 11.6rem);
}
@media screen and (max-width: 768px) {
  .p-land__imgArea {
    width: 100%;
    height: auto;
    position: initial;
  }
  .p-land__imgArea img {
    width: 100%;
  }
}
.p-land__content {
  height: 70rem;
  max-width: 50rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .p-land__content {
    max-width: 100%;
    height: auto;
    display: block;
  }
}
.p-land__num {
  font-family: var(--fontFamily-accent);
  font-size: 6.7rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  .p-land__num {
    font-size: 5rem;
    line-height: 1.3;
  }
}
.p-land__subttl {
  font-size: 3.6rem;
  letter-spacing: 0.15em;
  line-height: 1.6111111111;
}
@media screen and (max-width: 768px) {
  .p-land__subttl {
    font-size: 2.2rem;
    line-height: 1.5;
  }
}
.p-land__contentTxt {
  line-height: 2.2857142857;
  margin-top: 4.6rem;
}
@media screen and (max-width: 768px) {
  .p-land__contentTxt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 1.4rem;
  }
}

/* p-tekizami */
.p-tekizami__header {
  padding: 11rem 0 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-tekizami__header {
    padding: 6.2rem 0 6.8rem;
  }
}
.p-tekizami__header:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - 19.4rem);
  background-color: var(--background-darkGray);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .p-tekizami__header:before {
    height: 100%;
  }
}
.p-tekizami__ttlEn {
  font-family: var(--fontFamily-accent);
  font-size: 8rem;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-tekizami__ttlEn {
    font-size: 4rem;
  }
}
.p-tekizami__ttlJa {
  font-size: 2rem;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__ttlJa {
    font-size: 1.2rem;
    margin-top: 0.4rem;
  }
}
.p-tekizami__imgArea {
  margin-top: 7.2rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__imgArea {
    margin-top: 4.2rem;
  }
}
.p-tekizami__imgArea img {
  margin: auto;
}
.p-tekizami__subttl {
  font-size: 3.6rem;
  letter-spacing: 0.1em;
  line-height: 1.6111111111;
  margin-top: 4rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-tekizami__subttl {
    font-size: 3rem;
    margin-top: 2.4rem;
  }
}
.p-tekizami__txt {
  max-width: 76.7rem;
  line-height: 2.2857142857;
  margin: 5.4rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-tekizami__txt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 3rem;
  }
}
.p-tekizami__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.4rem;
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__list {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 6rem;
    gap: 2rem 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItem {
    padding-bottom: 5.6rem;
  }
}
.p-tekizami__itemTxt {
  font-size: 1.6rem;
  line-height: 1.6875;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__itemTxt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 0.8rem;
  }
}
.p-tekizami__body {
  padding-top: 13.6rem;
  padding-bottom: 19rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__body {
    padding-top: 5.6rem;
    padding-bottom: 0;
  }
}
.p-tekizami__aboutList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 9.5rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutList {
    gap: 0;
  }
}
.p-tekizami__aboutItem {
  overflow: hidden;
}
.p-tekizami__aboutItem--reverse .p-tekizami__aboutItemheader {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.p-tekizami__aboutItem--reverse .p-tekizami__aboutItemTxtArea {
  margin: 0 auto 0 0;
}
.p-tekizami__aboutItem--reverse .p-tekizami__aboutItemImgArea {
  left: calc(50% + 2.4rem);
}
@media screen and (max-width: 1080px) {
  .p-tekizami__aboutItem--reverse .p-tekizami__aboutItemImgArea {
    max-width: calc(100% - 54rem);
    left: auto;
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItem--reverse .p-tekizami__aboutItemImgArea {
    max-width: 100%;
    width: calc(100% - 10.6rem);
    position: initial;
  }
}
.p-tekizami__aboutItemInner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItemheader {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-tekizami__aboutItemImgArea {
  width: 64rem;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: calc(100% - 124rem);
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItemImgArea {
    width: calc(100% - 10.6rem);
    position: initial;
  }
}
.p-tekizami__aboutItemTxtArea {
  min-height: 70rem;
  max-width: 50rem;
  margin: 0 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItemTxtArea {
    min-height: initial;
  }
}
.p-tekizami__aboutItemTtl {
  font-size: 3.6rem;
  letter-spacing: 0.15em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItemTtl {
    font-size: 3rem;
    margin-top: 0;
  }
}
.p-tekizami__aboutItemTxt {
  line-height: 2.2857142857;
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-tekizami__aboutItemTxt {
    font-size: 1.2rem;
    line-height: 2;
  }
}

/* p-worksSlider */
.p-worksSlider {
  background-color: var(--background-gray02);
}
.p-worksSlider__leadArea {
  padding: 5.4rem 0 11rem;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-worksSlider__leadArea {
    font-size: 1.2rem;
    line-height: 2;
    padding: 3.2rem 0 4.6rem;
  }
}
.p-worksSlider__swiper {
  padding-bottom: 4rem;
}
.p-worksSlider__slide {
  height: 32.8571428571vw;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-worksSlider__slide {
    height: 57.2093023256vw;
  }
}
.p-worksSlider__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-worksSlider__slideTxt {
  min-height: 7.5rem;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 1rem;
  color: var(--color-white);
  padding: 1.6rem 1.8rem;
  background-color: var(--background-black_50);
}
@media screen and (max-width: 768px) {
  .p-worksSlider__slideTxt {
    font-size: 1rem;
    line-height: 1.8;
    padding: 1rem 1.8rem;
    min-height: 9.4rem;
  }
}
.p-worksSlider .swiper-pagination-bullet {
  opacity: 1;
  background-color: var(--color-white);
}
.p-worksSlider .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--background-tag);
}

/* p-propertyDescription */
.p-propertyDescription {
  padding: 11rem 0 9.4rem;
  background-color: var(--background-gray02);
}
@media screen and (max-width: 768px) {
  .p-propertyDescription {
    padding: 8rem 0;
  }
}
.p-propertyDescription__tableArea {
  max-width: 104rem;
  margin: 3.8rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-propertyDescription__tableArea {
    margin-top: 2.4rem;
  }
}
.p-propertyDescription__btnArea {
  max-width: 25rem;
  margin: 11rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-propertyDescription__btnArea {
    margin-top: 5rem;
  }
}

/* p-workList */
.p-workList__link {
  display: block;
  padding: 12rem 0;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-workList__link {
    padding: 4.6rem 0 7rem;
  }
}
.p-workList__itemBg {
  width: calc(100% + 2rem);
  height: calc(100% + 2rem);
  position: absolute;
  top: -1rem;
  left: -1rem;
  z-index: -1;
}
.p-workList__itemBg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-filter: blur(1rem);
          filter: blur(1rem);
}
.p-workList__itemBg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: var(--background-black_22);
  position: absolute;
  top: 0;
  left: 0;
}
.p-workList__itemContent {
  color: var(--color-white);
  position: relative;
  z-index: 2;
}
.p-workList__contentInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-workList__contentInner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.p-workList__itemImgArea {
  width: 55rem;
  padding-top: 78.5714285714%;
  max-width: 50%;
  overflow: hidden;
  position: relative;
  left: -3.4rem;
}
@media screen and (max-width: 768px) {
  .p-workList__itemImgArea {
    padding-top: 130.6532663317%;
    width: 100%;
    max-width: 100%;
    margin: auto;
    left: 0;
  }
}
.p-workList__itemImgArea img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.p-workList__itemBody {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 5.7692307692%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .p-workList__itemBody {
    margin-top: 2.8rem;
    padding-left: 0;
  }
}
.p-workList__itemDate {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-workList__itemDate {
    font-size: 1.2rem;
  }
}
.p-workList__itemTtl {
  font-size: 4rem;
  line-height: 1.5;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-workList__itemTtl {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    margin-top: 1rem;
  }
}
.p-workList__itemTagList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.8rem;
  margin-top: 0.5rem;
}
.p-workList__itemTagItem {
  font-size: 1.4rem;
  line-height: 1.5714285714;
  background-color: var(--background-tag);
  padding: 0 0.4rem;
}

/* p-message */
.p-message {
  padding: 11rem 0 13rem;
  background-color: var(--background-gray03);
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-message {
    padding: 6rem 0 4rem;
  }
}
.p-message__header {
  padding-top: 11.3rem;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-message__header {
    position: initial;
    padding-top: 0;
    text-align: center;
  }
}
.p-message__body {
  max-width: 80rem;
  margin: auto;
}
@media screen and (max-width: 990px) {
  .p-message__body {
    max-width: calc(100% - 20rem);
  }
}
@media screen and (max-width: 768px) {
  .p-message__body {
    max-width: 100%;
    margin-top: 2.4rem;
  }
}
.p-message__ttl {
  font-size: 3.6rem;
  line-height: 1.6111111111;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-message__ttl {
    font-size: 2.2rem;
    margin-top: 1.6rem;
  }
}
.p-message__txt {
  font-size: 1.4rem;
  line-height: 2.2857142857;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-message__txt {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 2rem;
  }
}

/* p-companyDetail */
.p-companyDetail {
  padding: 9.2rem 0 16.4rem;
  background-color: var(--background-gray02);
}
@media screen and (max-width: 768px) {
  .p-companyDetail {
    padding: 5rem 0 6rem;
  }
}
.p-companyDetail__mapArea {
  width: 100%;
  padding-top: 43.2692307692%;
  overflow: hidden;
  position: relative;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-companyDetail__mapArea {
    padding-top: 73.3668341709%;
  }
}
.p-companyDetail__mapArea iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

/* p-concept */
.p-concept {
  padding: 27rem 0 19rem;
  color: var(--color-white);
  position: relative;
}
.p-concept::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(30%, rgba(0, 0, 0, 0)), to(rgb(0, 0, 0)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 30%, rgb(0, 0, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-concept__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  position: relative;
  z-index: 2;
}
.p-concept__ttl {
  font-size: 5rem;
  line-height: 1.2;
  letter-spacing: 0.2em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
.p-concept__txtArea {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-concept__txt {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 3;
}
@media screen and (max-width: 768px) {
  .p-concept__txt {
    font-size: 1.4rem;
    line-height: 3.5714285714;
    margin-top: 1.6rem;
  }
}

/* p-conceptMessage */
.p-conceptMessage {
  padding: 11rem 0 15rem;
  color: var(--color-white);
  background-color: var(--background-darkGray04);
}
@media screen and (max-width: 768px) {
  .p-conceptMessage {
    padding: 6.6rem 0 8rem;
  }
}
.p-conceptMessage__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.p-conceptMessage__item:nth-child(2n) {
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__item:nth-child(2n) {
    margin-top: 0;
  }
}
.p-conceptMessage__header {
  padding-top: 140%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__header {
    height: initial;
    padding-top: 110.5527638191%;
  }
}
.p-conceptMessage__header img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.p-conceptMessage__numArea {
  font-family: var(--fontFamily-accent);
  letter-spacing: 0.05em;
  width: 100%;
  text-align: center;
  padding-top: 3.6rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-conceptMessage__numTxt {
  font-size: 1.4rem;
  text-transform: capitalize;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__numTxt {
    font-size: 1.2rem;
  }
}
.p-conceptMessage__num {
  font-size: 6.7rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__num {
    font-size: 5rem;
  }
}
.p-conceptMessage__ttl {
  font-size: 3.6rem;
  line-height: 1.6111111111;
  letter-spacing: 0.2em;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__ttl {
    font-size: 2.2rem;
    margin-top: 1.6rem;
  }
}
.p-conceptMessage__name {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 1.8rem;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__name {
    font-size: 1.4rem;
    line-height: 2.1428571429;
    margin-top: 1.4rem;
  }
}
.p-conceptMessage__txt {
  line-height: 2.2857142857;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-conceptMessage__txt {
    font-size: 1.2rem;
    line-height: 2;
  }
}

/* p-conceptList */
.p-conceptList {
  color: var(--color-white);
  background-color: var(--background-black);
  position: relative;
}
.p-conceptList::before {
  content: "";
  display: block;
  height: 6rem;
  width: 100%;
  background-color: var(--background-darkGray04);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-conceptList::before {
    height: 7rem;
  }
}
.p-conceptList__item:not(:first-child) {
  margin-top: 6.4rem;
}
.p-conceptList__body {
  padding-bottom: 15rem;
}
@media screen and (max-width: 768px) {
  .p-conceptList__body {
    margin-top: 3.2rem;
    padding-bottom: 9rem;
  }
}
.p-conceptList__bodyInner {
  max-width: 128rem;
  margin: auto;
}
.p-conceptList__ttlArea {
  position: relative;
  z-index: 2;
}
.p-conceptList__ttlArea .c-ttl {
  margin: auto;
}
.p-conceptList__link {
  display: block;
  color: var(--color-white);
  padding: 12rem 0 14rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .p-conceptList__link {
    padding: 5.4rem 0 4.8rem;
  }
}
.p-conceptList__link::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-conceptList__link--land {
  background-image: url(../../assets/images/concept/bg_landConstruction.jpg);
}
.p-conceptList__link--performance {
  background-image: url(../../assets/images/concept/bg_housingPeformance.jpg);
}
.p-conceptList__linkInner {
  position: relative;
  z-index: 2;
}
.p-conceptList__txt {
  max-width: 50rem;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .p-conceptList__txt {
    font-size: 1.2rem;
    line-height: 2;
  }
}
.p-conceptList__linkArrow {
  position: absolute;
  bottom: 50%;
  right: 9rem;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}
@media screen and (max-width: 768px) {
  .p-conceptList__linkArrow {
    width: 5rem;
    height: 5rem;
    top: 1.4rem;
    right: 1.6rem;
    -webkit-transform: none;
            transform: none;
  }
}

/* u-align */
.u-align--center {
  text-align: center !important;
}
.u-align--right {
  text-align: right !important;
}

/* u-txt */
.u-txt--privacySign {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .u-txt--privacySign {
    font-size: 1.2rem;
  }
}

/* u-display */
.u-display--pcNone {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u-display--pcNone {
    display: block !important;
  }
}
@media screen and (max-width: 768px) {
  .u-display--spNone {
    display: none !important;
  }
}
.u-display--inlineBlock {
  display: inline-block;
}