@charset "UTF-8";
/*================================================================
 *FILE          :page-whoweare.css
 *DESCRIPTION   :resetはressを使用。環境変数とmixinは_mixin.scss内に記述。
                 それぞれfoundationよりインポート。
 *AUTHOR        :
 *--------------------------------------------------------------
 *(C)
=================================================================*/
/*================================================================
 *FILE					:_components.scss
 *DESCRIPTION   :全ページ共通コンポーネント カスタムCSS
 *AUTHOR				:
 *--------------------------------------------------------------
 *(C)
=================================================================*/
/*
ページネーション
------------------------------------*/
/*
View More
------------------------------------*/
/*
共通 Main Visual（brands, about, who we are）
------------------------------------*/
/*
Button
------------------------------------*/
/*
c-title
------------------------------------*/
/*
c-modal
------------------------------------*/
/*
iframeCookieAccept
------------------------------------*/
.c-title {
  color: #2b2b2b;
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
  width: 100%;
  text-align: left; }
  @media print, screen and (max-width: 767px) {
    .c-title {
      font-size: calc(48 / 375 * 100vw);
      letter-spacing: 0; } }
  @media print, screen and (min-width: 768px) {
    .c-title {
      font-size: calc(90 / 1280 * 100vw); } }
  .c-title.c-title-white {
    color: #E4E0D9; }
  @media print, screen and (max-width: 767px) {
    .c-title.c-title-small {
      font-size: calc(38 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-title.c-title-small {
      font-size: calc(80 / 1280 * 100vw); } }
  @media print, screen and (max-width: 767px) {
    .c-title.c-title-tiny {
      font-size: calc(38 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-title.c-title-tiny {
      font-size: calc(60 / 1280 * 100vw); } }

.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(43, 43, 43, 0.9);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 1000; }
  .c-modal.is-show {
    opacity: 1;
    visibility: visible; }

.c-modal_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%; }

.c-modal_close {
  position: absolute;
  top: 20px;
  right: 20px;
  border: 1px solid #b1b1b1;
  border-radius: 50%;
  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;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s; }
  @media print, screen and (max-width: 767px) {
    .c-modal_close {
      width: calc(56 / 375 * 100vw);
      height: calc(56 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-modal_close {
      width: calc(70 / 1280 * 100vw);
      height: calc(70 / 1280 * 100vw); } }
  .c-modal_close::before {
    content: '';
    position: absolute;
    width: calc(60 / 1280 * 100vw);
    height: calc(60 / 1280 * 100vw);
    border-radius: 50%;
    background-color: #F1F0EE;
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s; }
  @media (hover: hover) {
    .c-modal_close:hover::before {
      opacity: 1; }
    .c-modal_close:hover .c-modal_closeBar::before, .c-modal_close:hover .c-modal_closeBar::after {
      background-color: #2B2B2B; } }

.c-modal_closeBar {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%; }
  .c-modal_closeBar::before, .c-modal_closeBar::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    background-color: #F1F0EE;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
      .c-modal_closeBar::before, .c-modal_closeBar::after {
        width: calc(12 / 375 * 100vw);
        height: calc(2 / 375 * 100vw); } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
      .c-modal_closeBar::before, .c-modal_closeBar::after {
        width: calc(16 / 1280 * 100vw);
        height: calc(2 / 1280 * 100vw); } }
  .c-modal_closeBar::before {
    rotate: 45deg; }
  .c-modal_closeBar::after {
    rotate: -45deg; }

.c-modal_videoIframe iframe {
  border: none; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .c-modal_videoIframe iframe {
      aspect-ratio: 1.76887;
      overflow: hidden;
      width: 100vw; }
      .c-modal_videoIframe iframe img,
      .c-modal_videoIframe iframe svg,
      .c-modal_videoIframe iframe iframe,
      .c-modal_videoIframe iframe video {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .c-modal_videoIframe iframe {
      aspect-ratio: 1.77698;
      overflow: hidden;
      width: calc(988 / 1280 * 100vw); }
      .c-modal_videoIframe iframe img,
      .c-modal_videoIframe iframe svg,
      .c-modal_videoIframe iframe iframe,
      .c-modal_videoIframe iframe video {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover; } }

.c-viewMore {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer; }

@media print and (hover: hover), screen and (hover: hover) and (min-width: 768px) {
  .c-viewMore:hover .c-viewMore_text {
    translate: calc(10 / 1280 * 100vw) 0; } }

@media print and (hover: hover), screen and (hover: hover) and (max-width: 767px) {
  .c-viewMore:hover .c-viewMore_right_icon::before {
    -webkit-transform: translate(calc(15 / 375 * 100vw), calc(-15 / 375 * 100vw));
    -ms-transform: translate(calc(15 / 375 * 100vw), calc(-15 / 375 * 100vw));
    transform: translate(calc(15 / 375 * 100vw), calc(-15 / 375 * 100vw)); } }

@media print and (hover: hover), screen and (hover: hover) and (min-width: 768px) {
  .c-viewMore:hover .c-viewMore_right_icon::before {
    -webkit-transform: translate(calc(15 / 1280 * 100vw), calc(-15 / 1280 * 100vw));
    -ms-transform: translate(calc(15 / 1280 * 100vw), calc(-15 / 1280 * 100vw));
    transform: translate(calc(15 / 1280 * 100vw), calc(-15 / 1280 * 100vw)); } }
  @media (hover: hover) {
    .c-viewMore:hover .c-viewMore_right_icon::after {
      -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      transform: translate(0, 0); } }

.c-viewMore_left {
  background-color: #2B2B2B;
  border-radius: 100px; }
  @media print, screen and (max-width: 767px) {
    .c-viewMore_left {
      padding: calc(13 / 375 * 100vw) calc(36 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-viewMore_left {
      padding: calc(12 / 1280 * 100vw) calc(36 / 1280 * 100vw); } }
  .c-viewMore-red .c-viewMore_left {
    background-color: #B91E1E; }

.c-viewMore_text {
  display: block;
  color: #F1F0EE;
  font-weight: bold;
  -webkit-transition: translate 0.3s ease;
  transition: translate 0.3s ease;
  translate: 0 0; }
  @media print, screen and (max-width: 767px) {
    .c-viewMore_text {
      letter-spacing: 0.04em; } }
  @media print, screen and (min-width: 768px) {
    .c-viewMore_text {
      font-size: calc(18 / 1280 * 100vw); } }

.c-viewMore_right {
  background-color: #2B2B2B;
  border-radius: 50%;
  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 print, screen and (max-width: 767px) {
    .c-viewMore_right {
      width: calc(48 / 375 * 100vw);
      height: calc(48 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-viewMore_right {
      width: calc(48 / 1280 * 100vw);
      height: calc(48 / 1280 * 100vw); } }
  .c-viewMore-red .c-viewMore_right {
    background-color: #B91E1E; }

.c-viewMore_right_icon {
  position: relative;
  inset: 0;
  overflow: hidden; }
  @media print, screen and (max-width: 767px) {
    .c-viewMore_right_icon {
      width: calc(15 / 375 * 100vw);
      height: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .c-viewMore_right_icon {
      width: calc(15 / 1280 * 100vw);
      height: calc(15 / 1280 * 100vw); } }
  .c-viewMore_right_icon::before, .c-viewMore_right_icon::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../images/common/arrow.svg);
    background-size: contain;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    will-change: transform; }
    @media print, screen and (max-width: 767px) {
      .c-viewMore_right_icon::before, .c-viewMore_right_icon::after {
        width: calc(15 / 375 * 100vw);
        height: calc(15 / 375 * 100vw); } }
    @media print, screen and (min-width: 768px) {
      .c-viewMore_right_icon::before, .c-viewMore_right_icon::after {
        width: calc(15 / 1280 * 100vw);
        height: calc(15 / 1280 * 100vw); } }
  .c-viewMore_right_icon::before {
    top: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
  .c-viewMore_right_icon::after {
    top: 0;
    left: 0; }
    @media print, screen and (max-width: 767px) {
      .c-viewMore_right_icon::after {
        -webkit-transform: translate(calc(-15 / 375 * 100vw), calc(15 / 375 * 100vw));
        -ms-transform: translate(calc(-15 / 375 * 100vw), calc(15 / 375 * 100vw));
        transform: translate(calc(-15 / 375 * 100vw), calc(15 / 375 * 100vw)); } }
    @media print, screen and (min-width: 768px) {
      .c-viewMore_right_icon::after {
        -webkit-transform: translate(calc(-15 / 1280 * 100vw), calc(15 / 1280 * 100vw));
        -ms-transform: translate(calc(-15 / 1280 * 100vw), calc(15 / 1280 * 100vw));
        transform: translate(calc(-15 / 1280 * 100vw), calc(15 / 1280 * 100vw)); } }

.commonMv_section {
  height: 100svh; }

.commonMv_content {
  height: 100svh;
  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; }

.commonMv_imageWrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100svh;
  background-color: #f1f0ee;
  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; }

.commonMv_image {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100%; }
  .commonMv_image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }

.commonMv_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 1;
  -webkit-transition: opacity 2s ease-out;
  transition: opacity 2s ease-out; }
  .is-pageTransition .commonMv_overlay {
    opacity: 0.4; }

.commonMv_content {
  position: relative; }

.commonMv_titleGroup {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 8px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, calc(-50% + 30px));
  -ms-transform: translate(-50%, calc(-50% + 30px));
  transform: translate(-50%, calc(-50% + 30px));
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }
  @media print, screen and (max-width: 767px) {
    .commonMv_titleGroup {
      gap: calc(8 / 375 * 100vw); }
      .post-type-archive-brands .commonMv_titleGroup {
        margin-left: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .commonMv_titleGroup {
      gap: calc(8 / 1280 * 100vw); }
      .post-type-archive-brands .commonMv_titleGroup {
        margin-left: calc(15 / 1280 * 100vw); } }
  .is-pageTransition .commonMv_titleGroup {
    opacity: 1; }
    @media print, screen and (max-width: 767px) {
      .is-pageTransition .commonMv_titleGroup {
        -webkit-transform: translate(-50%, calc(-50% - (9 / 375 * 100vw)));
        -ms-transform: translate(-50%, calc(-50% - (9 / 375 * 100vw)));
        transform: translate(-50%, calc(-50% - (9 / 375 * 100vw))); } }
    @media print, screen and (min-width: 768px) {
      .is-pageTransition .commonMv_titleGroup {
        -webkit-transform: translate(-50%, calc(-50% - (9 / 1280 * 100vw)));
        -ms-transform: translate(-50%, calc(-50% - (9 / 1280 * 100vw)));
        transform: translate(-50%, calc(-50% - (9 / 1280 * 100vw))); } }

.commonMv_title {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 800;
  margin: 0;
  color: #E4E0D9;
  line-height: 1.1;
  text-align: center; }
  @media print, screen and (max-width: 767px) {
    .commonMv_title {
      font-size: calc(48 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .commonMv_title {
      font-size: calc(90 / 1280 * 100vw);
      white-space: nowrap; } }

.commonMv_annotation {
  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;
  border: 1px dashed #E4E0D9;
  border-radius: 3px; }
  @media print, screen and (max-width: 767px) {
    .commonMv_annotation {
      margin-top: calc(10 / 375 * 100vw);
      width: calc(32 / 375 * 100vw);
      height: calc(21 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .commonMv_annotation {
      margin-top: calc(20 / 1280 * 100vw);
      width: calc(38 / 1280 * 100vw);
      height: calc(24 / 1280 * 100vw); } }

.commonMv_annotationNumber {
  font-weight: 400;
  letter-spacing: 0.02em;
  color: #E4E0D9; }
  @media print, screen and (max-width: 767px) {
    .commonMv_annotationNumber {
      font-size: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .commonMv_annotationNumber {
      font-size: calc(15 / 1280 * 100vw); } }

.commonMv_description {
  text-align: center;
  margin: 0;
  color: #E4E0D9;
  position: absolute;
  bottom: 48px;
  left: 50%;
  -webkit-transform: translate(-50%, 30px);
  -ms-transform: translate(-50%, 30px);
  transform: translate(-50%, 30px);
  opacity: 0;
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }
  @media print, screen and (max-width: 767px) {
    .commonMv_description {
      width: 100%;
      padding: 0 calc(20 / 375 * 100vw);
      font-size: calc(14 / 375 * 100vw);
      line-height: 1.3; } }
  @media print, screen and (min-width: 768px) {
    .commonMv_description {
      width: calc(820 / 1280 * 100vw); } }
  .is-pageTransition .commonMv_description {
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    opacity: 1; }

.iframeAccept {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-color: #2B2B2B;
  z-index: 50;
  border-radius: 16px; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .iframeAccept {
      width: calc(100% - calc(40 / 375 * 100vw));
      height: calc(163 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .iframeAccept {
      width: calc(100% - calc(80 / 1280 * 100vw)); } }
  [data-cookie="accept"] .iframeAccept {
    opacity: 0;
    visibility: hidden; }

.iframeAccept_inner {
  color: #E4E0D9; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .iframeAccept_inner {
      padding: calc(24 / 375 * 100vw) calc(10 / 375 * 100vw) calc(24 / 375 * 100vw) calc(20 / 375 * 100vw);
      height: 100%;
      overflow-y: auto;
      margin-right: calc(6 / 375 * 100vw); }
      .iframeAccept_inner::-webkit-scrollbar {
        width: 4px; }
      .iframeAccept_inner::-webkit-scrollbar-track {
        background-color: #2B2B2B;
        margin: 24px 0; }
      .iframeAccept_inner::-webkit-scrollbar-thumb {
        background-color: #E4E0D9;
        border-radius: 999px;
        width: 30px; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .iframeAccept_inner {
      padding: calc(80 / 1280 * 100vw) calc(20 / 1280 * 100vw);
      text-align: center; } }

.iframeAccept_title {
  line-height: 1.2; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .iframeAccept_title {
      font-size: calc(16 / 375 * 100vw);
      margin-bottom: calc(24 / 375 * 100vw);
      letter-spacing: 0.02em; } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .iframeAccept_title {
      font-size: calc(20 / 1280 * 100vw);
      margin-bottom: calc(40 / 1280 * 100vw);
      letter-spacing: 0.04em; } }

@media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
  .iframeAccept_text {
    font-size: calc(14 / 375 * 100vw);
    margin-bottom: calc(24 / 375 * 100vw);
    line-height: 1.3; } }

@media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
  .iframeAccept_text {
    font-size: calc(14 / 1280 * 100vw);
    margin: 0 auto calc(40 / 1280 * 100vw);
    line-height: 1.7;
    max-width: calc(718 / 1280 * 100vw); } }

.iframeAccept_text a {
  text-decoration: underline;
  text-underline-offset: 3px; }

.iframeAccept_button {
  color: #E4E0D9;
  border-radius: 200px;
  background-color: #B91E1E;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .iframeAccept_button {
      font-size: calc(14 / 375 * 100vw);
      width: calc(160 / 375 * 100vw);
      height: calc(40 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .iframeAccept_button {
      font-size: calc(16 / 1280 * 100vw);
      width: calc(160 / 1280 * 100vw);
      height: calc(48 / 1280 * 100vw); } }

.globalFamily_section {
  background-color: #f1f0ee;
  position: relative;
  border-radius: 24px 24px 0 0;
  overflow: hidden; }

@media print, screen and (max-width: 767px) {
  .globalFamily_section {
    padding: calc(64 / 375 * 100vw) 0 calc(60 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_section {
      padding: calc(80 / 1280 * 100vw) 0 calc(250 / 1280 * 100vw); } }

@media print, screen and (max-width: 767px) {
  .globalFamily_inner {
    padding: 0 calc(20 / 375 * 100vw); } }

@media print, screen and (min-width: 768px) {
  .globalFamily_inner {
    padding: 0 calc(146 / 1280 * 100vw) 0 calc(44 / 1280 * 100vw); } }

.globalFamily_title {
  padding-top: 0; }

@media print, screen and (min-width: 768px) {
  .globalFamily_content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px;
    width: calc(622 / 1280 * 100vw);
    margin-left: auto; } }

@media print, screen and (max-width: 767px) {
  .globalFamily_intro {
    margin-top: calc(16 / 375 * 100vw); } }

@media print, screen and (min-width: 768px) {
  .globalFamily_intro {
    margin-top: calc(61 / 1280 * 100vw); } }

.globalFamily_introText {
  line-height: 1.50;
  letter-spacing: 0.02em;
  color: #2b2b2b;
  margin: 0; }

@media print, screen and (max-width: 767px) {
  .globalFamily_introText {
    font-size: calc(15 / 375 * 100vw);
    margin-bottom: calc(24 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_introText {
      font-size: calc(16 / 1280 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    html[lang="en-US"] .globalFamily_introText, html[lang="auto"] .globalFamily_introText {
      font-size: calc(18 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    html[lang="en-US"] .globalFamily_introText, html[lang="auto"] .globalFamily_introText {
      font-size: calc(18 / 1280 * 100vw); } }

.globalFamily_transform {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transform {
    gap: 7px; }
    .globalFamily_transform + .globalFamily_transform {
      margin-top: calc(12 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transform {
      gap: calc(10 / 1280 * 100vw); } }

.globalFamily_transformRow {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformRow {
    gap: calc(49 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformRow {
      gap: calc(102 / 1280 * 100vw); } }

.globalFamily_transformLabel {
  text-align: center; }

.globalFamily_transformLabel_text {
  letter-spacing: 0.02em;
  color: #2B2B2B; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformLabel_text {
    font-size: calc(14 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformLabel_text {
      font-size: calc(14 / 1280 * 100vw); } }

.globalFamily_arrowIcon {
  width: 38px;
  height: auto; }

.globalFamily_transformBoxes {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBoxes {
    -ms-grid-columns: calc(138 / 375 * 100vw) calc(25 / 375 * 100vw) calc(148 / 375 * 100vw);
    grid-template-columns: calc(138 / 375 * 100vw) calc(25 / 375 * 100vw) calc(148 / 375 * 100vw);
    gap: calc(12 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformBoxes {
      -ms-grid-columns: calc(260 / 1280 * 100vw) calc(38 / 1280 * 100vw) calc(260 / 1280 * 100vw);
      grid-template-columns: calc(260 / 1280 * 100vw) calc(38 / 1280 * 100vw) calc(260 / 1280 * 100vw);
      gap: calc(32 / 1280 * 100vw); } }

.globalFamily_transformBox {
  border: 1px dashed #8E8E8E;
  border-radius: 80px;
  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; }
  .globalFamily_transformBox:first-child {
    -ms-grid-column: 1;
    grid-column: 1; }
  .globalFamily_transformBox:last-child {
    -ms-grid-column: 3;
    grid-column: 3; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBox {
    padding: calc(19 / 375 * 100vw) calc(10 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformBox {
      min-height: calc(80 / 1280 * 100vw);
      padding: calc(15 / 1280 * 100vw) calc(20 / 1280 * 100vw); } }

.globalFamily_transformBox_text {
  margin: 0;
  text-align: center; }

.globalFamily_transformBox_text-japanese {
  font-family: "BIZ UDGothic", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  letter-spacing: 0.20em;
  color: #b91e1e; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBox_text-japanese {
    font-size: calc(22 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformBox_text-japanese {
      font-size: calc(37 / 1280 * 100vw); } }

.globalFamily_transformBox_text-english {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #b91e1e; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBox_text-english {
    font-size: calc(22 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformBox_text-english {
      font-size: calc(41 / 1280 * 100vw); } }

.globalFamily_transformBox_text-global {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 700;
  line-height: 1.1;
  color: #b91e1e; }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBox_text-global {
    font-size: calc(16 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_transformBox_text-global {
      font-size: calc(28 / 1280 * 100vw); } }

@media print, screen and (max-width: 767px) {
  .globalFamily_transformBox_arrow {
    width: calc(25 / 375 * 100vw); }
    .globalFamily_transformBox_arrow img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover; } }

.globalFamily_closing {
  margin-top: 10px; }

@media print, screen and (max-width: 767px) {
  .globalFamily_closing {
    margin-top: 24px; } }

.globalFamily_closingText {
  line-height: 1.50;
  letter-spacing: 0.02em;
  color: #2b2b2b;
  margin: 0; }

@media print, screen and (max-width: 767px) {
  .globalFamily_closingText {
    font-size: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .globalFamily_closingText {
      font-size: calc(18 / 1280 * 100vw); } }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    html[lang="en-US"] .globalFamily_closingText, html[lang="auto"] .globalFamily_closingText {
      font-size: calc(18 / 375 * 100vw); } }

.conceptMovie_section {
  background-color: #F1F0EE;
  margin-top: -1px;
  position: relative; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .conceptMovie_section {
      height: 100% !important; } }

.conceptMovie_cursor {
  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 print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .conceptMovie_cursor {
      padding: calc(20 / 375 * 100vw) 0 calc(5 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .conceptMovie_cursor {
      position: fixed;
      pointer-events: none;
      width: 160px;
      height: 48px;
      margin: -24px 0 0 -80px; } }

.conceptMovie_cursorLeft {
  background-color: #B91E1E;
  border-radius: 100px;
  width: 112px;
  height: 48px;
  color: #F1F0EE;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0;
  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; }

.conceptMovie_cursorRight {
  background-color: #B91E1E;
  border-radius: 100px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  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; }
  .conceptMovie_cursorRight img {
    width: 11px; }

@media print, screen and (max-width: 1023px) {
  .conceptMovie_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #2B2B2B; } }

@media print, screen and (min-width: 1024px) {
  .conceptMovie_inner {
    position: sticky;
    top: 0; } }

.conceptMovie_videoWrap {
  position: relative;
  cursor: none; }
  .is-brand-appear .conceptMovie_videoWrap {
    cursor: default; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .conceptMovie_videoWrap {
      border-radius: var(--radius, 80px); } }

.conceptMovie_spButton {
  position: absolute;
  background-color: rgba(228, 224, 217, 0.3);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 50;
  width: calc(54 / 375 * 100vw);
  height: calc(54 / 375 * 100vw); }
  .conceptMovie_spButton img {
    width: calc(12 / 375 * 100vw);
    margin-left: calc(4 / 375 * 100vw); }

.conceptMovie_video {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
    .conceptMovie_video {
      height: 100vh;
      border-radius: var(--radius, 80px);
      scale: var(--scale, 0.66); } }
  .conceptMovie_video:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    opacity: 0.65;
    pointer-events: none;
    background-color: transparent;
    -webkit-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease; }
    .is-brand-appear .conceptMovie_video:before {
      background-color: #000; }
  .conceptMovie_video img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover; }
  .conceptMovie_video iframe {
    width: 100vw;
    -o-object-fit: cover;
    object-fit: cover;
    border: none;
    -o-object-position: top;
    object-position: top; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
      .conceptMovie_video iframe {
        aspect-ratio: 375/211;
        width: calc(375 / 375 * 100vw); } }
    @media print, screen and (min-width: 1024px) and (orientation: landscape), screen and (min-width: 1024px) {
      .conceptMovie_video iframe {
        height: 100vh;
        cursor: none;
        position: absolute;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
        min-width: 177.78vh;
        min-height: 100dvh;
        height: 56.25vw;
        width: 100vw; } }

.conceptMovie_videoCursor {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100%;
  z-index: 100;
  pointer-events: none; }
  [data-cookie="accept"] .conceptMovie_videoCursor {
    pointer-events: auto; }

.brandMapSection {
  position: relative;
  pointer-events: none;
  overflow: clip; }
  @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
    .brandMapSection {
      margin-top: -1px; } }
  @media print, screen and (min-width: 1024px) {
    .brandMapSection {
      padding: calc(60 / 1280 * 100vw) 0 calc(145 / 1280 * 100vw);
      position: sticky;
      top: 0;
      left: 0;
      width: 100%; } }

.brandMapSection_inner {
  position: relative;
  z-index: 1; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_inner {
      background-color: #2B2B2B;
      padding: calc(80 / 375 * 100vw) calc(20 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) and (max-width: 1023px) {
    .brandMapSection_inner {
      background-color: #2B2B2B;
      padding: calc(64 / 1280 * 100vw) calc(20 / 1280 * 100vw); } }
  @media print, screen and (min-width: 1024px) {
    .brandMapSection_inner {
      padding: calc(52 / 1280 * 100vw) calc(44 / 1280 * 100vw); } }

@media print, screen and (min-width: 768px) {
  .brandMapSection_header {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: calc(478 / 1280 * 100vw) 1fr;
    grid-template-columns: calc(478 / 1280 * 100vw) 1fr;
    gap: calc(30 / 1280 * 100vw); } }

.brandMapSection_headerLeft {
  -webkit-transition: opacity 0.5s ease, translate 0.5s ease;
  transition: opacity 0.5s ease, translate 0.5s ease;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s; }
  @media print, screen and (min-width: 1024px) {
    .brandMapSection_headerLeft {
      translate: calc(-30 / 1280 * 100vw) calc(-30 / 1280 * 100vw);
      opacity: 0; }
      .is-brand-appear .brandMapSection_headerLeft {
        opacity: 1;
        translate: 0 0; } }

.brandMapSection_title {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 800;
  font-size: calc(80 / 1280 * 100vw);
  color: #e4e0d9;
  margin: 0;
  margin-bottom: calc(20 / 1280 * 100vw); }

.brandMapSection_description {
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #e4e0d9;
  margin: 0; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_description {
      margin-top: 24px;
      font-size: calc(15 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) and (max-width: 1023px) {
    .brandMapSection_description {
      margin-top: calc(32 / 1280 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_description {
      font-size: calc(15 / 1280 * 100vw);
      margin-top: calc(32 / 1280 * 100vw); } }
  html[lang="en-US"] .brandMapSection_description, html[lang="auto"] .brandMapSection_description {
    line-height: 1.5; }
    @media print, screen and (max-width: 1023px), screen and (min-width: 1024px) and (max-width: 1023px) and (orientation: portrait) {
      html[lang="en-US"] .brandMapSection_description, html[lang="auto"] .brandMapSection_description {
        font-size: calc(18 / 375 * 100vw); } }
    @media print, screen and (min-width: 768px) {
      html[lang="en-US"] .brandMapSection_description, html[lang="auto"] .brandMapSection_description {
        font-size: calc(18 / 1280 * 100vw); } }

.brandMapSection_headerRight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition: opacity 0.5s ease, translate 0.5s ease;
  transition: opacity 0.5s ease, translate 0.5s ease;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s; }
  @media print, screen and (max-width: 1023px) {
    .brandMapSection_headerRight {
      margin-top: calc(32 / 375 * 100vw); } }
  @media print, screen and (min-width: 1024px) {
    .brandMapSection_headerRight {
      translate: 30px 30px;
      opacity: 0; }
      .is-brand-appear .brandMapSection_headerRight {
        opacity: 1;
        translate: 0 0; } }

@media print, screen and (min-width: 768px) {
  .brandMapSection_mapBox {
    width: calc(684 / 1280 * 100vw);
    padding-top: calc(130 / 1280 * 100vw); } }

.brandMapSection_mapImage {
  width: 100%;
  height: auto;
  display: block; }

@media print, screen and (min-width: 1024px) {
  .brandMapSection_stats {
    margin-top: calc(120 / 1280 * 100vw); } }

@media print, screen and (min-width: 768px) and (max-width: 1023px) {
  .brandMapSection_stats {
    padding: calc(50 / 1280 * 100vw) 0;
    background-color: #2B2B2B; } }

.brandMapSection_statsInner {
  position: relative; }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsInner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 0 calc(20 / 1280 * 100vw); } }

@media print, screen and (min-width: 768px) {
  .brandMapSection_statsCard {
    width: calc(620 / 1280 * 100vw);
    height: calc(706 / 1280 * 100vw);
    border-radius: 16px; } }

.brandMapSection_statsCard canvas {
  position: absolute; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsCard canvas {
      top: -100px; } }

.brandMapSection_statsCard-left {
  position: relative;
  z-index: 100;
  pointer-events: auto; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsCard-left {
      padding: 36px 20px;
      background-color: #B91E1E;
      overflow: hidden; } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsCard-left {
      background-color: #980000; } }

.brandMapSection_statsCard-right {
  background-color: #B91E1E;
  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-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  -webkit-transition: rotate 0.5s ease;
  transition: rotate 0.5s ease; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsCard-right {
      height: 100vh;
      padding: 36px 20px;
      display: none; } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsCard-right {
      padding: 30px 32px; }
      .is-yakitori-appear .brandMapSection_statsCard-right {
        rotate: -3deg; } }

.brandMapSection_statsCard_bg {
  position: absolute; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsCard_bg {
      top: calc(-20 / 375 * 100vw);
      right: calc(-50 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsCard_bg {
      top: calc(-30 / 1280 * 100vw);
      right: calc(-178 / 1280 * 100vw); } }
  .brandMapSection_statsCard_bg svg {
    fill: rgba(142, 5, 5, 0.2); }
    @media print, screen and (max-width: 767px) {
      .brandMapSection_statsCard_bg svg {
        width: calc(280 / 375 * 100vw);
        height: calc(231 / 375 * 100vw); } }
    @media print, screen and (min-width: 768px) {
      .brandMapSection_statsCard_bg svg {
        width: calc(609 / 1280 * 100vw);
        height: calc(502 / 1280 * 100vw); } }

@media print, screen and (max-width: 767px) {
  .brandMapSection_statsCard_wrap {
    height: calc(100vh - 72px);
    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-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }

.brandMapSection_statsTitle {
  position: relative;
  color: #E4E0D9; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsTitle {
      font-size: calc(44 / 375 * 100vw);
      z-index: 10; } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsTitle {
      font-size: calc(70 / 1280 * 100vw); } }

.brandMapSection_statsNumber {
  position: relative;
  z-index: 10; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsNumber {
      margin-left: calc(-5 / 375 * 100vw); } }

.brandMapSection_statsNumberMain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 8px; }

.brandMapSection_statsNumberText {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 700;
  letter-spacing: -0.09em;
  color: #e4e0d9;
  line-height: 1; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsNumberText {
      font-size: calc(68 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsNumberText {
      font-size: calc(120 / 1280 * 100vw); } }

.brandMapSection_statsNumberUnit {
  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;
  position: relative;
  margin-bottom: 16px;
  margin-left: 15px; }

.brandMapSection_statsNumberUnitText {
  font-family: "Manrope", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", sans-serif;
  font-weight: 700;
  line-height: 1.14;
  color: #e4e0d9;
  margin: 0;
  text-align: center; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsNumberUnitText {
      font-size: calc(20 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsNumberUnitText {
      font-size: calc(22 / 1280 * 100vw); } }

.brandMapSection_statsNumberUnitSpace {
  display: inline-block;
  width: 15px; }

.brandMapSection_statsNumberUnitPer {
  font-family: "Caveat", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", cursive;
  color: #ffce00;
  position: absolute;
  bottom: -6px;
  left: -3px; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsNumberUnitPer {
      font-size: calc(24 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsNumberUnitPer {
      font-size: calc(31 / 1280 * 100vw); } }

.brandMapSection_statsNote {
  font-family: "Caveat", "Noto Sans JP", "Noto Sans SC", "Noto Sans TC", cursive;
  line-height: 1.06;
  color: #ffce00;
  margin: 0;
  position: absolute;
  -webkit-transform: rotate(-22deg);
  -ms-transform: rotate(-22deg);
  transform: rotate(-22deg);
  white-space: pre-line; }
  @media print, screen and (max-width: 767px) {
    .brandMapSection_statsNote {
      top: 50%;
      translate: 0 -50%;
      right: calc(10 / 375 * 100vw);
      font-size: calc(31 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .brandMapSection_statsNote {
      font-size: calc(31 / 1280 * 100vw);
      top: calc(403 / 1280 * 100vw);
      right: calc(75 / 1280 * 100vw); } }

.companyInfo_section {
  background-color: #e4e0d9;
  position: relative;
  z-index: 10; }

@media print, screen and (max-width: 767px) {
  .companyInfo_section {
    padding: calc(64 / 375 * 100vw) 0; } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_section {
      padding: calc(80 / 1280 * 100vw) 0 calc(100 / 1280 * 100vw);
      margin-top: calc(-5 / 1280 * 100vw); } }

.companyInfo_inner {
  margin: 0 auto; }

@media print, screen and (max-width: 767px) {
  .companyInfo_inner {
    padding: 0 calc(20 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: calc(424 / 1280 * 100vw) 1fr;
      grid-template-columns: calc(424 / 1280 * 100vw) 1fr;
      gap: calc(86 / 1280 * 100vw);
      padding: 0 calc(32 / 1280 * 100vw); } }

.companyInfo_title {
  line-height: 1.2; }
  @media print, screen and (max-width: 767px) {
    .companyInfo_title {
      font-size: calc(38 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_title {
      font-size: calc(60 / 1280 * 100vw); } }

.companyInfo_content {
  padding-top: 26px; }

.companyInfo_table {
  border-top: 1px dashed #8E8E8E; }

.companyInfo_tableRow {
  display: -ms-grid;
  display: grid;
  border-bottom: 1px dashed #8E8E8E; }

@media print, screen and (max-width: 767px) {
  .companyInfo_tableRow {
    -ms-grid-columns: calc(108 / 375 * 100vw) 1fr;
    grid-template-columns: calc(108 / 375 * 100vw) 1fr;
    gap: calc(30 / 375 * 100vw);
    padding: calc(16 / 375 * 100vw) 0; } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_tableRow {
      -ms-grid-columns: calc(186 / 1280 * 100vw) 1fr;
      grid-template-columns: calc(186 / 1280 * 100vw) 1fr;
      gap: calc(20 / 1280 * 100vw);
      padding: calc(24 / 1280 * 100vw) 0; } }

.companyInfo_tableLabel {
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #2B2B2B;
  margin: 0;
  line-height: 1.2; }

@media print, screen and (max-width: 767px) {
  .companyInfo_tableLabel {
    font-size: calc(14 / 375 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_tableLabel {
      font-size: calc(14 / 1280 * 100vw); } }
  @media print, screen and (min-width: 768px) {
    html[lang="en-US"] .companyInfo_tableLabel, html[lang="auto"] .companyInfo_tableLabel {
      font-size: calc(16 / 1280 * 100vw); } }

.companyInfo_tableValue {
  color: #2B2B2B;
  margin: 0;
  white-space: pre-line; }
  @media print, screen and (max-width: 767px) {
    .companyInfo_tableValue {
      font-size: calc(14 / 375 * 100vw);
      letter-spacing: 0.02em; } }
  @media print, screen and (min-width: 768px) {
    .companyInfo_tableValue {
      font-size: calc(14 / 1280 * 100vw); } }
  @media print, screen and (max-width: 767px) {
    html[lang="en-US"] .companyInfo_tableValue, html[lang="auto"] .companyInfo_tableValue {
      font-size: calc(14 / 375 * 100vw);
      line-height: 1.2; } }
  @media print, screen and (min-width: 768px) {
    html[lang="en-US"] .companyInfo_tableValue, html[lang="auto"] .companyInfo_tableValue {
      font-size: calc(16 / 1280 * 100vw);
      line-height: 1.4; } }
