html,
body {
  margin: 0;
  min-width: 1200px;
  background: #4d4d4d;
  scrollbar-width: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none;
}

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

.philosophy-page {
  color: #fff;
  overflow-x: hidden;
  font-family: "Noto Serif JP", serif;
}

.philosophy-page img {
  display: block;
}

.philosophy-page p,
.philosophy-page h1,
.philosophy-page h2 {
  margin: 0;
}

.philosophy-fv {
  position: relative;
  width: 100%;
  height: 1210px;
  overflow: hidden;
  background: -webkit-gradient(linear, left top, left bottom, from(#b3b3b3), to(#4d4d4d));
  background: linear-gradient(#b3b3b3, #4d4d4d);
}

.philosophy-fv__background {
  position: absolute;
  left: 0;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-fv__center-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 11.3vw;
  height: 11.77vw;
  max-width: 217px;
  max-height: 226px;
  -webkit-transform: translateX(-50%) translateY(-50%);
      -ms-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-fv__copy {
  position: absolute;
  top: 960px;
  left: max(121px, 50% - 839px);
  width: 764px;
  margin: 0;
  font-family: "Noto Serif JP", serif;
  font-size: 56px;
  font-weight: 500;
  line-height: 80px;
  letter-spacing: 3px;
  white-space: nowrap;
  text-shadow: 0 0 20px #000;
}

.philosophy-fv__copy span {
  display: block;
}

.philosophy-message {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #000;
  color: #fff;
}

.philosophy-message__english {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-family: "Cinzel", serif;
  font-size: 160px;
  font-weight: 400;
  line-height: 160px;
  letter-spacing: 32px;
  white-space: nowrap;
  opacity: 0.2;
}

.philosophy-message__columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  color: #fff;
}

.philosophy-message__small-copy {
  width: 480px;
  font-size: 16px;
  font-weight: 400;
  line-height: 48px;
  letter-spacing: 3px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
}

.philosophy-message__lead {
  font-size: 24px;
  font-weight: 500;
  line-height: 56px;
  letter-spacing: 3px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
}

.philosophy-message--intro {
  height: 444px;
}

.philosophy-message--intro .philosophy-message__english {
  position: absolute;
  top: 0;
  left: 0;
}

.philosophy-message__columns--intro {
  position: absolute;
  top: 200px;
  left: 641px;
  width: 640px;
  height: 240px;
  gap: 80px;
}

.philosophy-feature {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #000;
  color: #c9c4b8;
}

.philosophy-feature__kanji {
  font-family: "Noto Serif JP", serif;
  font-size: 400px;
  font-weight: 400;
  line-height: 400px;
  letter-spacing: 3px;
  color: transparent;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(231, 194, 75, 0.6)), to(rgba(57, 52, 36, 0.6)));
  background: linear-gradient(rgba(231, 194, 75, 0.6), rgba(57, 52, 36, 0.6));
  -webkit-background-clip: text;
          background-clip: text;
  opacity: 0.4;
}

.philosophy-feature__content {
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 798px;
  gap: 80px;
  -webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.8));
          filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.8));
  text-shadow: 0 0 20px #000;
  letter-spacing: 3px;
}

.philosophy-feature__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  gap: 24px;
}

.philosophy-feature__en {
  font-family: "Cinzel", serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 40px;
  white-space: nowrap;
}

.philosophy-feature__en span:first-child {
  color: #811704;
}

.philosophy-feature__heading h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 24px;
}

.philosophy-feature__body {
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
}

.philosophy-feature--01 {
  height: 73.54vw;
}

.philosophy-feature__kanji--right {
  position: absolute;
  top: 26px;
  left: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 840px;
  height: 810px;
}

.philosophy-feature__kanji--right span {
  width: 420px;
  padding: 10px;
  text-align: center;
}

.philosophy-feature--01__image {
  position: absolute;
  top: 185px;
  left: 0;
  max-width: 1670px;
  max-height: 1042px;
}

.philosophy-feature--01__content {
  position: absolute;
  top: 771px;
  right: clamp(40px, 9.73vw, 187px);
  width: 757px;
}

.philosophy-feature--02 {
  height: 73.54vw;
}

.philosophy-feature__kanji--light {
  position: absolute;
  top: -25px;
  right: 0;
  width: 420px;
  height: 820px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

.philosophy-feature--02__row {
  position: absolute;
  top: 522px;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 80px;
}

.philosophy-feature--02__row > img {
  width: 899px;
  height: 673px;
  opacity: 0.8;
}

.philosophy-feature--03__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 80px;
  height: 420px;
}

.philosophy-feature__kanji--thought {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 420px;
          flex: 0 0 420px;
  width: 420px;
  padding: 10px;
  word-break: break-all;
}

.philosophy-feature--03__top .philosophy-feature__content {
  width: 798px;
}

.philosophy-feature--03__image {
  width: 100%;
  height: auto;
  margin-top: 40px;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-photo-pair {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 648px;
  overflow: hidden;
  background: #000;
}

.philosophy-photo-pair > div {
  position: relative;
  width: 50%;
  height: 648px;
  overflow: hidden;
}

.philosophy-photo-pair img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
}

.philosophy-photo-pair > div:first-child img {
  height: 111.11%;
}

.philosophy-photo-pair > div:last-child img {
  height: 197.53%;
}

.philosophy-message--masterpiece {
  height: 942px;
}

.philosophy-message--masterpiece .philosophy-message__english {
  position: absolute;
  top: 0;
  left: 264.5px;
}

.philosophy-message__columns--masterpiece {
  position: absolute;
  top: 200px;
  left: 613px;
  height: 240px;
  gap: 120px;
}

.philosophy-works {
  width: 100%;
  background: #000;
}

.philosophy-work {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 790px;
  padding-inline: clamp(24px, 2.0833vw, 40px);
  gap: clamp(32px, 4.1667vw, 80px);
  color: #c9c4b8;
}

.philosophy-work__image {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 1248px;
          flex: 1 1 1248px;
  min-width: 0;
  max-width: 1248px;
  height: 790px;
  overflow: hidden;
}

.philosophy-work__image img {
  width: 100%;
  height: 129.2%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: translateY(-14.56%);
      -ms-transform: translateY(-14.56%);
          transform: translateY(-14.56%);
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
}

.philosophy-work__image--05 img {
  height: 118.48%;
  -webkit-transform: translateY(-9.21%);
      -ms-transform: translateY(-9.21%);
          transform: translateY(-9.21%);
}

.philosophy-work__image--06 img {
  height: 118.48%;
  -webkit-transform: translateY(-2.62%);
      -ms-transform: translateY(-2.62%);
          transform: translateY(-2.62%);
}

.philosophy-work__image--07 img {
  height: 106.38%;
  -webkit-transform: translateY(-0.03%);
      -ms-transform: translateY(-0.03%);
          transform: translateY(-0.03%);
}

.philosophy-work__image--08 img {
  height: 245.06%;
  -webkit-transform: translateY(-0.05%);
      -ms-transform: translateY(-0.05%);
          transform: translateY(-0.05%);
}

.philosophy-work__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 clamp(420px, 26.6667vw, 512px);
          flex: 0 0 clamp(420px, 26.6667vw, 512px);
  width: auto;
  gap: 80px;
  color: #c9c4b8;
  text-align: right;
  text-shadow: 0 0 20px #000;
  letter-spacing: 3px;
}

.philosophy-work__content p:not(.philosophy-feature__en) {
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
}

.philosophy-work__content .philosophy-feature__heading {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.philosophy-work__content .philosophy-feature__en {
  white-space: nowrap;
}

.philosophy-message--perspectives {
  height: 488px;
}

.philosophy-message--perspectives .philosophy-message__english {
  position: absolute;
  top: 0;
  left: 0;
}

.philosophy-message__columns--perspectives {
  position: absolute;
  top: 200px;
  left: 50%;
  height: 288px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.philosophy-observer {
  position: relative;
  display: grid;
  grid-template-columns: 46.82% 1fr;
  width: 100%;
  height: 672px;
  overflow: hidden;
  background: #fff;
}

.philosophy-observer__photo,
.philosophy-observer__photo img {
  width: 100%;
  height: 100%;
}

.philosophy-observer__photo img {
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-filter: grayscale(1) sepia(0.18);
          filter: grayscale(1) sepia(0.18);
}

.philosophy-observer__content {
  position: relative;
  z-index: 2;
  width: 798px;
  margin: 314px 0 0 80px;
  color: #070b1e;
  letter-spacing: 3px;
}

.philosophy-observer__content .philosophy-feature__heading {
  gap: 24px;
}

.philosophy-observer__content .philosophy-feature__body {
  margin-top: 80px;
}

.philosophy-observer__soul {
  position: absolute;
  top: -25px;
  right: -10px;
  font-size: 400px;
  font-weight: 400;
  line-height: 1;
  color: transparent;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(231, 194, 75, 0.6)), to(rgba(57, 52, 36, 0.6)));
  background: linear-gradient(rgba(231, 194, 75, 0.6), rgba(57, 52, 36, 0.6));
  -webkit-background-clip: text;
  background-clip: text;
  opacity: 0.4;
}

.philosophy-observer__vertical {
  position: absolute;
  z-index: 3;
  top: 10px;
  right: 160px;
  width: 48px;
  height: 655px;
}

.philosophy-legacy {
  color: #070b1e;
  background: #fff;
  letter-spacing: 3px;
}

.philosophy-awards {
  position: relative;
  height: 901px;
  overflow: hidden;
}

.philosophy-awards__background {
  width: 100%;
  height: 820px;
  margin-top: 81px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
  opacity: 0.6;
}

.philosophy-award {
  position: absolute;
  left: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 1316px;
  height: 307px;
  padding: 40px 80px;
  gap: 80px;
  color: #fff;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.philosophy-award,
.philosophy-award * {
  color: #fff;
}

.philosophy-award--dark {
  top: 157px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.8)), to(rgba(102, 102, 102, 0.8)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8), rgba(102, 102, 102, 0.8));
}

.philosophy-award--light {
  top: 511px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(102, 102, 102, 0.8)), to(rgba(0, 0, 0, 0.8)));
  background: linear-gradient(90deg, rgba(102, 102, 102, 0.8), rgba(0, 0, 0, 0.8));
}

.philosophy-award > img {
  width: 357px;
  height: 227px;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-award__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -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: 24px;
  text-align: center;
}

.philosophy-award__copy strong {
  font-family: "Cinzel", serif;
  font-size: 60px;
  font-weight: 400;
  line-height: 1.08;
}

.philosophy-award__copy small {
  font-family: "Cinzel", serif;
  font-size: 20px;
}

.philosophy-award__copy > span {
  min-width: 488px;
  padding: 15px 22px;
  border: 1px solid #fff;
  font-size: 16px;
}

.philosophy-legacy__photo-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 648px;
}

.philosophy-legacy__photo-pair figure {
  position: relative;
  overflow: hidden;
}

.philosophy-legacy__photo-pair img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-legacy__photo-link {
  position: absolute;
  right: 21px;
  bottom: 29px;
  width: 271px;
  padding: 15px 8px;
  border: 1px solid #fff;
  color: #fff;
  background: rgba(0, 0, 0, 0.4);
  text-align: center;
}

.philosophy-legacy__story {
  position: relative;
  min-height: 1669px;
  padding-top: 160px;
}

.philosophy-legacy__intro {
  width: 798px;
  margin: 0 auto;
}

.philosophy-legacy__intro .philosophy-feature__body {
  margin-top: 80px;
}

.philosophy-generations {
  position: relative;
  width: 100%;
  height: 900px;
  margin-top: 60px;
}

.philosophy-generation {
  position: absolute;
  margin: 0;
  text-align: center;
}

.philosophy-generation span {
  position: absolute;
  z-index: 2;
  color: #811704;
  font-family: "Noto Serif JP", serif;
  font-size: 100px;
  opacity: 0.8;
}

.philosophy-generation img {
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.philosophy-generation figcaption {
  margin-top: 40px;
  font-family: "Cinzel", serif;
  font-size: 32px;
}

.philosophy-generation--second {
  top: 140px;
  left: 125px;
}

.philosophy-generation--second span {
  top: -60px;
  right: 20px;
}

.philosophy-generation--second img {
  width: 290px;
  height: 290px;
}

.philosophy-generation--first {
  top: 300px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.philosophy-generation--first span {
  top: -160px;
  left: 0;
}

.philosophy-generation--first img {
  width: 564px;
  height: 513px;
}

.philosophy-generation--third {
  top: 0;
  right: 240px;
}

.philosophy-generation--third span {
  bottom: 0;
  left: 0;
}

.philosophy-generation--third img {
  width: 386px;
  height: 386px;
}

.philosophy-legacy__closing {
  padding: 0 100px 160px;
}

.philosophy-legacy__closing img {
  width: 100%;
  height: 770px;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-legacy__closing p {
  width: 780px;
  margin: 120px auto 0;
  font-size: 24px;
  line-height: 40px;
}

.philosophy-book {
  display: grid;
  grid-template-columns: 62.3% 37.7%;
  min-height: 457px;
  color: #fff;
  background: #000;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.philosophy-book__copy {
  padding: 72px 160px;
}

.philosophy-book h2 {
  font-size: 24px;
  font-weight: 400;
  line-height: 40px;
}

.philosophy-book p {
  max-width: 876px;
  margin-top: 24px;
  font-size: 14px;
  line-height: 32px;
  text-align: justify;
}

.philosophy-book a {
  display: block;
  width: 271px;
  margin: 20px 0 0 auto;
  padding: 15px 8px;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
}

.philosophy-book > img {
  width: 100%;
  height: 457px;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-related {
  display: grid;
  grid-template-columns: 1fr 1fr;
  color: #fff;
}

.philosophy-related__item {
  display: grid;
  grid-template-columns: 260px 1fr;
  min-height: 431px;
  padding: 85px 42px;
  gap: 64px;
}

.philosophy-related__item--kunindo {
  background: rgba(0, 0, 0, 0.6);
}

.philosophy-related__item--surga {
  background: #263953;
}

.philosophy-related__item > img {
  width: 251px;
  height: 251px;
  -o-object-fit: cover;
     object-fit: cover;
}

.philosophy-related__item h2 {
  padding-bottom: 14px;
  border-bottom: 1px solid #ccc;
  font-family: "Inter", sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.3;
}

.philosophy-related__item h2 small {
  font-size: 14px;
}

.philosophy-related__item p {
  margin-top: 18px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  line-height: 26px;
  letter-spacing: 0;
}

.philosophy-related__item a {
  display: block;
  margin-top: 20px;
  padding: 17px;
  border: 1px solid #999;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  letter-spacing: 0;
}

.philosophy-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 197px;
  -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;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #fff;
}

.philosophy-footer img {
  width: 74px;
  height: 74px;
  -o-object-fit: contain;
     object-fit: contain;
}

.philosophy-footer p {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 600;
  letter-spacing: 0;
}/*# sourceMappingURL=page.css.map */