@charset "UTF-8";
/* ==========================================================================
Foundation
========================================================================== */
*, *:before, *:after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

div, header, footer, main, section, aside, address, nav {
  display: block;
}

address, cite {
  font-style: normal;
}

caption, th {
  text-align: left;
}

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

ul, ol {
  list-style: none;
}

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

iframe {
  max-width: 100%;
  height: auto;
  border: none;
}

button:hover {
  cursor: pointer;
}

input, textarea, select, button {
  font-family: inherit;
  font-size: 1em;
}

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

html {
  font-size: 62.5%;
}

html.js-open {
  overflow: hidden;
  position: fixed;
  z-index: -1;
  width: 100%;
}

body {
  position: relative;
  min-width: 320px;
  font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
  font-size: 19px;
  font-size: 1.9rem;
  color: #000;
  letter-spacing: .075em;
  line-height: 1.73;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  line-height: 1.4;
}

a {
  color: #000;
  text-decoration: none;
}

a:hover {
  cursor: pointer;
}

/* ==========================================================================
Layout
========================================================================== */
.l-header {
  top: 0;
  width: 100%;
  background-color: #fff;
}

.l-header#header-sticky {
  position: fixed;
  top: -79px;
  left: 0;
  z-index: 9998;
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid #231815;
  transition: top .4s;
}

.l-header#header-sticky.js-fixed, .l-header#header-sticky.js-open {
  top: 0 !important;
}

.l-header__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100px;
  margin: 0 auto;
}

.l-header__logo {
  width: 148px;
  margin-right: 50px;
  line-height: 1;
}

.l-header__logo a {
  display: block;
}

.l-header__logo img {
  display: block;
}

.l-header__catch {
  font-family: 'Cormorant Garamond', serif;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1;
}

.l-header__link--sns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin-left: auto;
}

.l-header__link--sns__item {
  width: 36px;
  margin-right: 20px;
}

.l-header__link--sns__item:last-child {
  margin-right: 0;
}

#header-sticky .l-header__link--sns__item:last-child {
  margin-right: 0;
}

.l-header__link--sns__item a {
  display: block;
}

.l-header__link--sns__item img {
  display: block;
  margin: 0 auto;
}

.l-gnav {
  position: fixed;
  top: 100px;
  left: 0;
  z-index: 9998;
  display: none;
  width: 100%;
  margin: 0;
  background-color: rgba(255, 255, 255, 0.85);
}

.l-gnav__inner {
  overflow-y: scroll;
  height: calc(100vh - 100px);
  height: calc( (calc(var(--vh, 1vh) * 100)) - 100px);
}

.l-gnav__content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: end;
      align-items: flex-end;
  max-width: 1100px;
  margin: 50px auto;
  padding: 0 224px;
}

.l-gnav__content > * {
  max-width: 100%;
  min-height: 0%;
}

.l-gnav__content:before {
  content: '';
  position: absolute;
  top: 0;
  right: 140px;
  width: 1px;
  height: 100%;
  background-color: #231815;
}

.l-gnav__list {
  margin-bottom: 80px;
}

.l-gnav__list__item {
  margin-bottom: 15px;
  text-align: right;
}

.l-gnav__list__item:last-child {
  margin-bottom: 0;
}

.l-gnav__list__item a {
  font-family: 'Cormorant Garamond', serif;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1;
}

.l-gnav__list--sns {
  margin-bottom: 80px;
}

.l-gnav__list--sns__item {
  width: 35px;
  margin-bottom: 25px;
  text-align: right;
}

.l-gnav__list--sns__item:last-child {
  margin-bottom: 0;
}

.l-gnav__list--sns__item a {
  display: block;
}

.l-gnav__list--sns__item img {
  display: block;
  margin: 0 auto;
}

.l-gnav__link--enmichi {
  width: 124px;
}

.l-gnav__link--enmichi a {
  display: block;
}

.l-gnav__link--enmichi img {
  display: block;
}

.l-gnav__btn {
  position: relative;
  width: 58px;
  height: 30px;
  margin-left: 60px;
  transition: transform .4s;
  transform-origin: center center;
}

.l-gnav__btn.js-close {
  transform: rotate(-270deg);
}

.l-gnav__btn span {
  position: absolute;
  display: block;
  width: 100%;
  height: 4px;
  left: 0;
  background-color: #231815;
}

.l-gnav__btn span:nth-of-type(1) {
  top: 0;
}

.l-gnav__btn span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}

.l-gnav__btn span:nth-of-type(3) {
  bottom: 0;
}

.l-footer {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
  margin-top: 45px;
}

.l-footer__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  padding: 30px 0;
  border-top: 1px solid #231815;
}

.l-footer__column--right {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: end;
      align-items: flex-end;
  margin-left: auto;
}

.l-footer__column--right > * {
  max-width: 100%;
  min-height: 0%;
}

.l-footer__link--enmichi {
  font-family: 'Cormorant Garamond', serif;
  font-size: 23px;
  font-size: 2.3rem;
}

.l-footer__link--enmichi a {
  display: block;
  width: 170px;
  margin-top: 20px;
}

.l-footer__link--enmichi img {
  display: block;
}

.l-footer__link--contact {
  margin-bottom: 35px;
}

.l-footer__link--contact a {
  position: relative;
  display: block;
  padding-bottom: 10px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1;
}

.l-footer__link--contact a:after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #231815;
}

.l-footer__link--contact img {
  display: block;
}

.l-footer__copy {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 25px;
  font-size: 2.5rem;
}

.p-pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: none;
}

.p-pagetop a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 50px;
  height: 50px;
}

.l-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
}

/* ==========================================================================
Object
========================================================================== */
/* Component
----------------------------------------------------------------- */
.c-title--page {
  margin-bottom: 50px;
  padding: 20px 0;
  font-family: 'Cormorant Garamond', serif;
  font-size: 36px;
  font-size: 3.6rem;
  text-align: center;
  line-height: 1;
  border-top: 1px solid #231815;
  border-bottom: 1px solid #231815;
}

.c-title--lg {
  margin-bottom: 24px;
  font-weight: normal;
  font-size: 16px;
  font-size: 1.6rem;
}

.c-title--lg-en {
  margin-right: 10px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 44px;
  font-size: 4.4rem;
  line-height: 1;
}

.c-title--md {
  margin-bottom: 10px;
  font-weight: normal;
  font-size: 24px;
  font-size: 2.4rem;
}

.c-title--sm {
  margin-top: 1.5em;
  font-weight: normal;
  font-size: 19px;
  font-size: 1.9rem;
}

.c-list--disc__item {
  position: relative;
  padding-left: 1em;
}

.c-list--disc__item:before {
  content: '\30FB';
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
}

.c-list--decimal {
  counter-reset: decimal;
}

.c-list--decimal__item {
  position: relative;
  padding-left: 2em;
  counter-increment: decimal;
}

.c-list--decimal__item:before {
  content: counter(decimal) "．";
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
}

.c-table--simple {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-table--simple__body {
  display: block;
}

.c-table--simple__row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-table--simple__head {
  width: 130px;
  padding-right: 1em;
  font-weight: normal;
}

.c-table--simple__data {
  width: calc(100% - 130px);
}

.c-table--simple__data > *:first-child {
  margin-top: 0;
}

.c-table--simple__data > *:last-child {
  margin-bottom: 0;
}

/* Project
----------------------------------------------------------------- */
.p-nav--content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
  margin: 80px auto 0;
}

.p-nav--content__list {
  padding-top: 32px;
  border-top: 1px solid #231815;
}

#top .p-nav--content__list {
  border-top: none;
  padding-top: 0;
}

.p-nav--content__list__item__inner {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  height: 160px;
  color: #000;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  border: 1px solid #231815;
}

.p-nav--content__list__item__inner > * {
  max-width: 100%;
  min-height: 0%;
}

.p-nav--content__list__item__inner:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.77);
}

.p-nav--content__list__item__inner:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: calc(100% - (10px * 2));
  height: calc(100% - (10px * 2));
  margin: auto;
  border: 1px solid #231815;
}

.p-nav--content__list__item__inner#about-bnr, .p-nav--content__list__item__inner#project-bnr {
  height: 220px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: none;
}

.p-nav--content__list__item__inner#about-bnr {
  background-color: #679194;
  background-image: url(/assets/img/common/logo-w.svg);
  background-size: 150px auto;
}

.p-nav--content__list__item__inner#project-bnr {
  background-color: #3E3A39;
  background-image: url(/assets/img/common/logo-enmichi-w.svg);
  background-size: 248px auto;
}

.p-nav--content__list__text {
  position: relative;
  z-index: 1;
  min-width: 104px;
  padding-bottom: 6px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  border-bottom: 1px solid #231815;
}

.p-nav--content__list__text--en {
  position: relative;
  z-index: 1;
  margin-bottom: 10px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 37px;
  font-size: 3.7rem;
}

#about-bnr .p-nav--content__list__text--en,
#project-bnr .p-nav--content__list__text--en {
  margin-bottom: 30px;
}

.p-nav--anchor {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  width: 100%;
  margin-bottom: 50px;
  padding: 0 10px;
}

#about-nav .p-nav--anchor {
  margin: 0;
}

.p-nav--anchor__item a {
  font-family: 'Cormorant Garamond', serif;
  font-size: 28px;
  font-size: 2.8rem;
  color: #000;
  line-height: 1;
  transition: opacity .3s;
}

.p-nav--anchor__item a.js-current {
  opacity: .3;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
}

#about-nav .p-nav--anchor__item a {
  font-size: 22px;
  font-size: 2.2rem;
}

.p-top__mv {
  margin-bottom: 16px;
}

.p-top__mv__image img {
  display: block;
  width: 100%;
}

.p-archive__list {
  padding: 0 28px;
}

.p-archive__list__item {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1.5em;
  font-size: 19px;
  font-size: 1.9rem;
}

.p-archive__list__time {
  width: 130px;
  margin-right: 10px;
}

.p-archive__list__title {
  -ms-flex: 1;
      flex: 1;
}

.p-about > *:first-child {
  margin-top: 0;
}

.p-about > *:last-child {
  margin-bottom: 0;
}

.p-about__section {
  margin: 50px 0;
  padding: 0 0 25px 44px;
  border-left: 1px solid #231815;
}

.p-about__section > *:first-child {
  margin-top: 0;
}

.p-about__section > *:last-child {
  margin-bottom: 0;
}

.p-about__nav {
  display: none;
  -ms-flex-align: center;
      align-items: center;
  height: 58px;
  border-top: 1px solid #231815;
  border-bottom: 1px solid #231815;
}

#about .p-about__nav {
  display: -ms-flexbox;
  display: flex;
}

.p-about__nav__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
  width: 100%;
}

.p-about__profile__title {
  margin-bottom: 35px;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1;
}

.p-about__profile__title--en {
  display: block;
  margin-top: 10px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 19px;
  font-size: 1.9rem;
}

.p-about__profile__title--sub {
  margin: 2.5em 0 1.5em;
  font-weight: normal;
  font-size: 19px;
  font-size: 1.9rem;
}

.p-project__block {
  margin-top: 80px;
  padding-top: 58px;
  border-top: 1px solid #231815;
}

.p-project__block:first-child {
  margin-top: 0;
  padding-top: 0;
  border: none;
}

.p-project__block__header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 35px;
}

.p-project__block__header .c-title--lg {
  margin: 0;
}

.p-project__block__header__link {
  margin-left: auto;
  font-family: 'Cormorant Garamond', serif;
  font-size: 27px;
  font-size: 2.7rem;
}

.p-project__block__image {
  width: 100%;
  margin-top: 24px;
}

.p-project__block__image img {
  display: block;
  width: 100%;
}

/* ==========================================================================
Utility
========================================================================== */
.u-align--center {
  text-align: center;
}

.u-align--right {
  text-align: right;
}

.u-align--left {
  text-align: left;
}

.u-clear {
  clear: both;
}

.u-clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.u-mg--0 {
  margin: 0 !important;
}

.u-mg--t-0 {
  margin-top: 0 !important;
}

.u-mg--t-5e {
  margin-top: 0.5em !important;
}

.u-mg--t-10e {
  margin-top: 1em !important;
}

.u-mg--t-15e {
  margin-top: 1.5em !important;
}

.u-mg--t-20e {
  margin-top: 2em !important;
}

.u-mg--t-25e {
  margin-top: 2.5em !important;
}

.u-mg--t-30e {
  margin-top: 3em !important;
}

.u-mg--t-35e {
  margin-top: 3.5em !important;
}

.u-mg--t-40e {
  margin-top: 4em !important;
}

.u-mg--t-45e {
  margin-top: 4.5em !important;
}

.u-mg--t-50e {
  margin-top: 5em !important;
}

.u-mg--r-0 {
  margin-right: 0 !important;
}

.u-mg--r-5e {
  margin-right: 0.5em !important;
}

.u-mg--r-10e {
  margin-right: 1em !important;
}

.u-mg--r-15e {
  margin-right: 1.5em !important;
}

.u-mg--r-20e {
  margin-right: 2em !important;
}

.u-mg--r-25e {
  margin-right: 2.5em !important;
}

.u-mg--r-30e {
  margin-right: 3em !important;
}

.u-mg--r-35e {
  margin-right: 3.5em !important;
}

.u-mg--r-40e {
  margin-right: 4em !important;
}

.u-mg--r-45e {
  margin-right: 4.5em !important;
}

.u-mg--r-50e {
  margin-right: 5em !important;
}

.u-mg--b-0 {
  margin-bottom: 0 !important;
}

.u-mg--b-5e {
  margin-bottom: 0.5em !important;
}

.u-mg--b-10e {
  margin-bottom: 1em !important;
}

.u-mg--b-15e {
  margin-bottom: 1.5em !important;
}

.u-mg--b-20e {
  margin-bottom: 2em !important;
}

.u-mg--b-25e {
  margin-bottom: 2.5em !important;
}

.u-mg--b-30e {
  margin-bottom: 3em !important;
}

.u-mg--b-35e {
  margin-bottom: 3.5em !important;
}

.u-mg--b-40e {
  margin-bottom: 4em !important;
}

.u-mg--b-45e {
  margin-bottom: 4.5em !important;
}

.u-mg--b-50e {
  margin-bottom: 5em !important;
}

.u-mg--l-0 {
  margin-left: 0 !important;
}

.u-mg--l-5e {
  margin-left: 0.5em !important;
}

.u-mg--l-10e {
  margin-left: 1em !important;
}

.u-mg--l-15e {
  margin-left: 1.5em !important;
}

.u-mg--l-20e {
  margin-left: 2em !important;
}

.u-mg--l-25e {
  margin-left: 2.5em !important;
}

.u-mg--l-30e {
  margin-left: 3em !important;
}

.u-mg--l-35e {
  margin-left: 3.5em !important;
}

.u-mg--l-40e {
  margin-left: 4em !important;
}

.u-mg--l-45e {
  margin-left: 4.5em !important;
}

.u-mg--l-50e {
  margin-left: 5em !important;
}

.u-mg--t-auto {
  margin-top: auto !important;
}

.u-mg--r-auto {
  margin-right: auto !important;
}

.u-mg--b-auto {
  margin-bottom: auto !important;
}

.u-mg--l-auto {
  margin-left: auto !important;
}

.u-pd--0 {
  padding: 0 !important;
}

.u-pd--t-0 {
  padding-top: 0 !important;
}

.u-pd--t-5e {
  padding-top: 0.5em !important;
}

.u-pd--t-10e {
  padding-top: 1em !important;
}

.u-pd--t-15e {
  padding-top: 1.5em !important;
}

.u-pd--t-20e {
  padding-top: 2em !important;
}

.u-pd--t-25e {
  padding-top: 2.5em !important;
}

.u-pd--t-30e {
  padding-top: 3em !important;
}

.u-pd--t-35e {
  padding-top: 3.5em !important;
}

.u-pd--t-40e {
  padding-top: 4em !important;
}

.u-pd--t-45e {
  padding-top: 4.5em !important;
}

.u-pd--t-50e {
  padding-top: 5em !important;
}

.u-pd--r-0 {
  padding-right: 0 !important;
}

.u-pd--r-5e {
  padding-right: 0.5em !important;
}

.u-pd--r-10e {
  padding-right: 1em !important;
}

.u-pd--r-15e {
  padding-right: 1.5em !important;
}

.u-pd--r-20e {
  padding-right: 2em !important;
}

.u-pd--r-25e {
  padding-right: 2.5em !important;
}

.u-pd--r-30e {
  padding-right: 3em !important;
}

.u-pd--r-35e {
  padding-right: 3.5em !important;
}

.u-pd--r-40e {
  padding-right: 4em !important;
}

.u-pd--r-45e {
  padding-right: 4.5em !important;
}

.u-pd--r-50e {
  padding-right: 5em !important;
}

.u-pd--b-0 {
  padding-bottom: 0 !important;
}

.u-pd--b-5e {
  padding-bottom: 0.5em !important;
}

.u-pd--b-10e {
  padding-bottom: 1em !important;
}

.u-pd--b-15e {
  padding-bottom: 1.5em !important;
}

.u-pd--b-20e {
  padding-bottom: 2em !important;
}

.u-pd--b-25e {
  padding-bottom: 2.5em !important;
}

.u-pd--b-30e {
  padding-bottom: 3em !important;
}

.u-pd--b-35e {
  padding-bottom: 3.5em !important;
}

.u-pd--b-40e {
  padding-bottom: 4em !important;
}

.u-pd--b-45e {
  padding-bottom: 4.5em !important;
}

.u-pd--b-50e {
  padding-bottom: 5em !important;
}

.u-pd--l-0 {
  padding-left: 0 !important;
}

.u-pd--l-5e {
  padding-left: 0.5em !important;
}

.u-pd--l-10e {
  padding-left: 1em !important;
}

.u-pd--l-15e {
  padding-left: 1.5em !important;
}

.u-pd--l-20e {
  padding-left: 2em !important;
}

.u-pd--l-25e {
  padding-left: 2.5em !important;
}

.u-pd--l-30e {
  padding-left: 3em !important;
}

.u-pd--l-35e {
  padding-left: 3.5em !important;
}

.u-pd--l-40e {
  padding-left: 4em !important;
}

.u-pd--l-45e {
  padding-left: 4.5em !important;
}

.u-pd--l-50e {
  padding-left: 5em !important;
}

.u-text--font-gothic {
  font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
}

.u-text--font-eng {
  font-family: 'Cormorant Garamond', serif;
}

.u-text--strong {
  font-weight: bold;
}

.u-text--break {
  word-wrap: break-word;
}

.u-link--tel {
  color: inherit;
  text-decoration: none;
  cursor: default;
}

.u-link--line {
  text-decoration: underline;
  color: #444;
}

.u-link--line-none {
  text-decoration: none;
}

.u-link--disabled {
  cursor: default;
  pointer-events: none;
  opacity: .3;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
}

.js-animation--fedein {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transform: translateY(50px);
  transition: transform 1.2s ease-out .4s, opacity 1.2s ease-out .4s;
}

.js-animation--fedein.js-show {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transform: translateY(0);
}

@media screen and (max-width: 1000px){
  body{
    font-size: 1.9vw;
  }
  .l-header#header-sticky{
    top: -7.9vw;
  }
  .l-header__inner{
    width: auto;
    padding: 0 5vw;
  }
  .l-header__inner{
    height: 10vw;
  }
  .l-header__logo{
    width: 14.8vw;
    margin-right: 5vw;
  }
  .l-header__catch{
    font-size: 2.4vw;
  }
  .l-header__link--sns__item{
    width: 3.6vw;
    margin-right: 2vw;
  }
  .l-gnav{
    top: 10vw;
  }
  .l-gnav__inner{
    height: calc(100vh - 10vw);
    height: calc( (calc(var(--vh, 1vh) * 100)) - 10vw);
  }
  .l-gnav__content{
    margin: 5vw auto;
    padding: 0 22.4vw;
  }
  .l-gnav__content:before{
    right: 14vw;
  }
  .l-gnav__list{
    margin-bottom: 8vw;
  }
  .l-gnav__list__item{
    margin-bottom: 1.5vw;
  }
  .l-gnav__list__item a{
    font-size: 3.6vw;
  }
  .l-gnav__list--sns{
    margin-bottom: 8vw;
  }
  .l-gnav__list--sns__item{
    width: 3.5vw;
    margin-bottom: 2.5vw;
  }
  .l-gnav__link--enmichi{
    width: 12.4vw;
  }
  .l-gnav__btn{
    width: 5.8vw;
    height: 3vw;
    margin-left: 6vw;
  }
  .l-gnav__btn span{
    height: 0.4vw;
  }
  .l-footer{
    width: auto;
    padding: 0 5vw;
  }
  .l-footer{
    margin-top: 4.5vw;
  }
  .l-footer__inner{
    padding: 3vw 0;
  }
  .l-footer__link--enmichi{
    font-size: 2.3vw;
  }
  .l-footer__link--enmichi a{
    width: 17vw;
    margin-top: 2vw;
  }
  .l-footer__link--contact{
    margin-bottom: 4.22705vw;
  }
  .l-footer__link--contact a{
    padding-bottom: 1vw;
    font-size: 3vw;
  }
  .l-footer__copy{
    font-size: 2.5vw;
  }
  .p-pagetop a{
    width: 5vw;
    height: 5vw;
  }
  .l-content{
    width: auto;
    padding: 0 5vw;
  }
  .c-title--page{
    margin-bottom: 5vw;
    padding: 2vw 0;
    font-size: 3.6vw;
  }
  .c-title--lg{
    margin-bottom: 2.4vw;
    font-size: 1.6vw;
  }
  .c-title--lg-en{
    margin-right: 1vw;
    font-size: 4.4vw;
  }
  .c-title--md{
    margin-bottom: 1vw;
    font-size: 2.4vw;
  }
  .c-title--sm{
    font-size: 1.9vw;
  }
  .c-table--simple__head{
    width: 13vw;
  }
  .c-table--simple__data{
    width: calc(100% - 13vw);
  }
  .p-nav--content{
    width: auto;
    padding: 0 5vw;
  }
  .p-nav--content{
    margin-top: 8vw;
  }
  .p-nav--content__list{
    padding-top: 3.2vw;
  }
  .p-nav--content__list__item__inner{
    height: 16vw;
  }
  .p-nav--content__list__item__inner:after{
    width: calc(100% - (1vw * 2));
    height: calc(100% - (1vw * 2));
  }
  .p-nav--content__list__item__inner#about-bnr, .p-nav--content__list__item__inner#project-bnr{
    height: 22vw;
  }
  .p-nav--content__list__item__inner#about-bnr{
    background-size: 15vw auto;
  }
  .p-nav--content__list__item__inner#project-bnr{
    background-size: 24.8vw;
  }
  .p-nav--content__list__text{
    min-width: 10.4vw;
    padding-bottom: 0.6vw;
    font-size: 1.6vw;
  }
  .p-nav--content__list__text--en{
    margin-bottom: 1vw;
    font-size: 3.7vw;
  }
  #about-bnr .p-nav--content__list__text--en,
  #project-bnr .p-nav--content__list__text--en{
    margin-bottom: 3vw;
  }
  .p-nav--anchor{
    margin-bottom: 5vw;
    padding: 0 1vw;
  }
  .p-nav--anchor__item a{
    font-size: 2.8vw;
  }
  #about-nav .p-nav--anchor__item a{
    font-size: 2.2vw;
  }
  .p-top__mv{
    margin-bottom: 1.6vw;
  }
  .p-archive__list{
    padding: 0 2.8vw;
  }
  .p-archive__list__item{
    font-size: 1.9vw;
  }
  .p-archive__list__time{
    width: 13vw;
    margin-right: 1vw;
  }
  .p-about__section{
    margin: 5vw 0;
    padding: 0 0 2.5vw 4.4vw;
  }
  .p-about__nav{
    height: 5.8vw;
  }
  .p-about__nav__inner{
    width: auto;
    padding: 0 5vw;
  }
  .p-about__nav__inner{
    width: 100%;
  }
  .p-about__profile__title{
    margin-bottom: 3.5vw;
    font-size: 2.5vw;
  }
  .p-about__profile__title--en{
    margin-top: 1vw;
    font-size: 1.9vw;
  }
  .p-about__profile__title--sub{
    font-size: 1.9vw;
  }
  .p-project__block{
    margin-top: 8vw;
    padding-top: 5.8vw;
  }
  .p-project__block__header{
    margin-bottom: 3.5vw;
  }
  .p-project__block__header__link{
    font-size: 2.7vw;
  }
  .p-project__block__image{
    margin-top: 2.4vw;
  }
}

@media screen and (max-width: 640px){
  body{
    font-size: 2.89855vw;
  }
  .l-header#header-sticky{
    top: -21.98068vw;
  }
  .l-header__inner{
    padding: 0 4.83092vw;
  }
  .l-header__inner{
    height: 21.73913vw;
    padding: 0 8.45411vw;
  }
  .l-header__logo{
    width: 21.4vw;
    margin-right: auto;
  }
  .l-header__catch{
    display: none;
  }
  .l-header__link--sns__item{
    width: 5.07246vw;
    margin-right: 2.657vw;
  }
  .l-gnav{
    top: 21.73913vw;
  }
  .l-gnav__inner{
    height: calc(100vh - 18vw);
    height: calc( (calc(var(--vh, 1vh) * 100)) - 18vw);
  }
  .l-gnav__content{
    margin: 10.86957vw 0;
    padding: 0 16.90821vw;
  }
  .l-gnav__content:before{
    right: 10.86957vw;
  }
  .l-gnav__list{
    margin-bottom: 12.07729vw;
  }
  .l-gnav__list__item{
    margin-bottom: 3vw;
  }
  .l-gnav__list__item a{
    font-size: 5.91787vw;
  }
  .l-gnav__list--sns{
    margin-bottom: 12.07729vw;
  }
  .l-gnav__list--sns__item{
    width: 5.7971vw;
    margin-bottom: 3.62319vw;
  }
  .l-gnav__link--enmichi{
    width: 20.77295vw;
  }
  .l-gnav__btn{
    width: 7.72947vw;
    height: 4.10628vw;
    margin-left: 6.28019vw;
  }
  .l-gnav__btn span{
    height: 0.72464vw;
  }
  .l-footer{
    padding: 0 4.83092vw;
  }
  .l-footer{
    margin-top: 6.03865vw;
    padding: 0 8.45411vw;
  }
  .l-footer__inner{
    display: block;
    padding: 3.38164vw 0;
  }
  .l-footer__column--left{
    margin-bottom: 19.32367vw;
  }
  .l-footer__link--enmichi{
    font-size: 3.38164vw;
  }
  .l-footer__link--enmichi a{
    width: 30.19324vw;
    margin-top: 3.01932vw;
  }
  .l-footer__link--contact{
    margin-bottom: 4.83092vw;
  }
  .l-footer__link--contact a{
    font-size: 4.22705vw;
  }
  .l-footer__copy{
    font-size: 4.22705vw;
  }
  .p-pagetop a{
    width: 9.66184vw;
    height: 9.66184vw;
  }
  .l-content{
    padding: 0 4.83092vw;
  }
  #top .l-content{
    padding-right: 0;
    padding-left: 0;
  }
  .c-title--page{
    margin: 0 -4.83092vw 8.45411vw;
    padding: 1.44928vw 0;
    font-size: 5.31401vw;
  }
  .c-title--lg{
    margin-bottom: 2.89855vw;
    font-size: 3.01932vw;
  }
  .c-title--lg-en{
    margin-right: 1.20773vw;
    font-size: 6.28019vw;
  }
  .c-title--md{
    margin-bottom: 1.20773vw;
    font-size: 3.62319vw;
  }
  .c-title--sm{
    font-size: 2.89855vw;
  }
  .c-table--simple__head{
    width: 15.70048vw;
  }
  .c-table--simple__data{
    width: calc(100% - 15.70048vw);
  }
  .p-nav--content{
    padding: 0 4.83092vw;
  }
  .p-nav--content{
    margin-top: 7.24638vw;
    padding: 0 8.45411vw;
  }
  .p-nav--content__list{
    padding-top: 7.24638vw;
  }
  .p-nav--content__list__item{
    margin-bottom: 4.10628vw;
  }
  .p-nav--content__list__item:last-child{
    margin-bottom: 0;
  }
  .p-nav--content__list__item__inner{
    height: 31.40097vw;
  }
  .p-nav--content__list__item__inner:after{
    width: calc(100% - (1.93237vw * 2));
    height: calc(100% - (1.93237vw * 2));
  }
  .p-nav--content__list__item__inner#about-bnr, .p-nav--content__list__item__inner#project-bnr{
    height: 43.23671vw;
  }
  .p-nav--content__list__item__inner#about-bnr{
    background-size: 29.58937vw auto;
  }
  .p-nav--content__list__item__inner#project-bnr{
    background-size: 48.55072vw auto;
  }
  .p-nav--content__list__text{
    min-width: 20.5314vw;
    padding-bottom: 1.20773vw;
    font-size: 3.1401vw;
  }
  .p-nav--content__list__text--en{
    margin-bottom: 2.41546vw;
    font-size: 7.24638vw;
  }
  #about-bnr .p-nav--content__list__text--en,
  #project-bnr .p-nav--content__list__text--en{
    margin-bottom: 2.41546vw;
  }
  .p-nav--anchor{
    display: none;
  }
  .p-archive__list{
    padding: 0 3.38164vw;
  }
  .p-archive__list__item{
    display: block;
    font-size: 2.89855vw;
  }
  .p-archive__list__time{
    width: auto;
    margin-right: 0;
  }
  .p-about__section{
    margin: 7.97101vw 0;
    padding: 0 0 2.41546vw 6.28019vw;
  }
  .p-about__nav{
    display: none !important;
  }
  .p-about__nav__inner{
    padding: 0 4.83092vw;
  }
  .p-about__profile__title{
    margin-bottom: 4.22705vw;
    font-size: 3.62319vw;
  }
  .p-about__profile__title--en{
    margin-top: 1.20773vw;
    font-size: 2.89855vw;
  }
  .p-about__profile__title--sub{
    font-size: 2.89855vw;
  }
  .p-project__block{
    margin-top: 9.66184vw;
    padding-top: 7.00483vw;
  }
  .p-project__block__header{
    display: block;
    margin-bottom: 4.22705vw;
  }
  .p-project__block__header__link{
    margin-top: 1.81159vw;
    font-size: 3.62319vw;
  }
  .p-project__block__image{
    margin-top: 2.89855vw;
  }
  .u-align--center-sp{
    text-align: center;
  }
  .u-align--right-sp{
    text-align: right;
  }
  .u-align--left-sp{
    text-align: left;
  }
  .u-display--block-sp{
    display: block;
  }
  .u-display--inline-sp{
    display: inline-block;
  }
  .u-show--pc{
    display: none !important;
  }
  .u-show--sp{
    display: inherit !important;
  }
  .u-hide--sp{
    display: none !important;
  }
}

@media all and (-ms-high-contrast: none){
  .l-header#header-sticky{
    transition: none;
  }
}

@media print, screen and (min-width: 641px){
  #about .l-header#header-sticky{
    top: -16.42512vw;
    border-bottom: none;
  }
  #header-sticky .l-header__inner{
    height: 7.8vw;
  }
  #header-sticky .l-header__logo{
    width: 10vw;
  }
  .l-header__logo a{
    transition: opacity .4s;
  }
  .l-header__logo a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-header__logo a img{
    transition: opacity .4s;
  }
  .l-header__logo a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  #header-sticky .l-header__link--sns__item{
    width: 2.7vw;
    margin-right: 1.5vw;
  }
  .l-header__link--sns__item a{
    transition: opacity .4s;
  }
  .l-header__link--sns__item a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-header__link--sns__item a img{
    transition: opacity .4s;
  }
  .l-header__link--sns__item a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav#gnav-sticky{
    top: 7.8vw;
  }
  #gnav-sticky .l-gnav__inner{
    height: calc(100vh - 7.8vw);
    height: calc( (calc(var(--vh, 1vh) * 100)) - 7.8vw);
  }
  .l-gnav__list__item a{
    transition: opacity .4s;
  }
  .l-gnav__list__item a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav__list__item a img{
    transition: opacity .4s;
  }
  .l-gnav__list__item a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav__list--sns__item a{
    transition: opacity .4s;
  }
  .l-gnav__list--sns__item a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav__list--sns__item a img{
    transition: opacity .4s;
  }
  .l-gnav__list--sns__item a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav__link--enmichi a{
    transition: opacity .4s;
  }
  .l-gnav__link--enmichi a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-gnav__link--enmichi a img{
    transition: opacity .4s;
  }
  .l-gnav__link--enmichi a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  #header-sticky .l-gnav__btn{
    width: 4.2vw;
    height: 2.2vw;
    margin-left: 4vw;
  }
  .l-footer__link--enmichi a{
    transition: opacity .4s;
  }
  .l-footer__link--enmichi a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-footer__link--enmichi a img{
    transition: opacity .4s;
  }
  .l-footer__link--enmichi a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-footer__link--contact a{
    transition: opacity .4s;
  }
  .l-footer__link--contact a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .l-footer__link--contact a img{
    transition: opacity .4s;
  }
  .l-footer__link--contact a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .p-pagetop a{
    transition: opacity .4s;
  }
  .p-pagetop a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .p-pagetop a img{
    transition: opacity .4s;
  }
  .p-pagetop a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  #top .p-nav--content{
    margin-top: 1.5vw;
  }
  .p-nav--content__list{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .p-nav--content__list > *{
    margin: 1.88889% 1.66667% 0 0;
    width: calc(50% - ((1.66667 * 1%) / 2));
  }
  .p-nav--content__list > *:nth-of-type(-n+2){
    margin-top: 0;
  }
  .p-nav--content__list > *:nth-of-type(2n){
    margin-right: 0;
  }
  .p-nav--content__list__item__inner{
    transition: all .4s;
  }
  .p-nav--content__list__item__inner:hover{
    color: #fff;
    border-color: rgba(35, 24, 21, 0);
  }
  .p-nav--content__list__item__inner:hover:before{
    background-color: rgba(35, 24, 21, 0.77);
  }
  .p-nav--content__list__item__inner:hover:after{
    border-color: #fff;
  }
  .p-nav--content__list__item__inner:before{
    transition: .4s;
  }
  .p-nav--content__list__item__inner:after{
    transition: .4s;
  }
  .p-nav--content__list__text{
    transition: border-color .4s;
  }
  a:hover .p-nav--content__list__text{
    border-bottom-color: #fff;
  }
  .p-nav--anchor__item a{
    transition: opacity .4s;
  }
  .p-nav--anchor__item a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .p-nav--anchor__item a img{
    transition: opacity .4s;
  }
  .p-nav--anchor__item a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .p-project__block__header__link a{
    transition: opacity .4s;
  }
  .p-project__block__header__link a:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .p-project__block__header__link a img{
    transition: opacity .4s;
  }
  .p-project__block__header__link a img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-align--center-pc{
    text-align: center;
  }
  .u-align--right-pc{
    text-align: right;
  }
  .u-align--left-pc{
    text-align: left;
  }
  .u-display--block-pc{
    display: block;
  }
  .u-display--inline-pc{
    display: inline-block;
  }
  .u-show--pc{
    display: inherit !important;
  }
  .u-show--sp{
    display: none !important;
  }
  .u-hide--pc{
    display: none !important;
  }
  .u-link--image{
    transition: opacity .4s;
  }
  .u-link--image:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-link--image img{
    transition: opacity .4s;
  }
  .u-link--image img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-link--tel{
    pointer-events: none;
  }
  .u-link--line{
    transition: opacity .4s;
  }
  .u-link--line:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-link--line img{
    transition: opacity .4s;
  }
  .u-link--line img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-link--line-none{
    transition: opacity .4s;
  }
  .u-link--line-none:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
  .u-link--line-none img{
    transition: opacity .4s;
  }
  .u-link--line-none img:hover{
    opacity: 0.3;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
  }
}

@media print, screen and (min-width: 1001px){
  #about .l-header#header-sticky{
    top: -136px;
  }
  #header-sticky .l-header__inner{
    height: 78px;
  }
  #header-sticky .l-header__logo{
    width: 100px;
  }
  #header-sticky .l-header__link--sns__item{
    width: 27px;
    margin-right: 15px;
  }
  .l-gnav#gnav-sticky{
    top: 78px;
  }
  #gnav-sticky .l-gnav__inner{
    height: calc(100vh - 78px);
    height: calc( (calc(var(--vh, 1vh) * 100)) - 78px);
  }
  #header-sticky .l-gnav__btn{
    width: 42px;
    height: 22px;
    margin-left: 40px;
  }
  #top .p-nav--content{
    margin-top: 15px;
  }
}

@media print{
  .l-header#header-sticky{
    display: none !important;
  }
}

@media screen and (max-width: 340px){
  .u-show--xs{
    display: inherit !important;
  }
}

@media print, screen and (min-width: 341px){
  .u-show--xs{
    display: none !important;
  }
}
