/*How to set the size with “vw”;
 * The value among 1 to 40 is available (variables are already defined in CSS).
 * Smart phone: --vw1 to --vw40
 * PCの場合：PC: --vw-pc1 to --vw-pc40
 * ---------------------------------
 * In case of setting over 40, use the formula below.
 * Smart phone: pixel/ 375*100
 * PC: pixel/ 1360*100
-------------------------------------*/

:root {
  /*Font Family*/
  --family-gothic: 'Microsoft Yahei', Arial, 'Hiragino Sans', 'BIZ UDPGothic', Meiryo, sans-serif;
  --family-serif: 'Microsoft Yahei','Arial', 'Noto Sans Japanese', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'モリサワ 新ゴ R', 'Droid Sans', 'メイリオ', sans-serif;
}

/*------ Menu -------*/
.gnavLink {
  font-size: var(--vw12);
  line-height: 1.1;
}
.gnavLink.-top,
.gnavLink.-movie,
.gnavLink.-cate,
.gnavLink.-global {
  font-size: var(--vw18);
}
.headerSns > ._title {
  /*base size*/
}
.headerSns .snsLink {
  font-size: var(--vw12);
}

/*------ Menu PC -------*/
@media screen and (min-width: 768px) {
  .gnavLink {
    font-size: var(--vw-pc14);
  }
  .gnavLink.-top,
  .gnavLink.-global {
    font-size: var(--vw-pc18);
  }
  .gnavLink.-cate {
    font-size: var(--vw-pc24);
  }
  .headerSns > ._title {
    /*base size*/
  }
  .headerSns .snsLink {
    font-size: var(--vw-pc14);
  }
}

/*------ Footer -------*/
.footer {
  font-size: var(--vw14);
}
/*------ Footer PC -------*/
@media screen and (min-width: 768px) {
  .footer {
    font-size: var(--vw-pc14);
  }
}

/*------ Top -------*/
.topContent .button {
  font-size: var(--vw14);
}
/*------ Top PC -------*/
@media screen and (min-width: 768px) {
  .topContent .button {
    font-size: var(--vw-pc24);
  }
}

/*------ Home -------*/
.homeContent .intro > ._text {
  font-size: var(--vw15);
  line-height: 1.67;
  letter-spacing: 0.1em;
}
.homeContent .movieTitle {
  font-size: var(--vw11);
  letter-spacing: 0.2em;
}
.homeContent .linkList > ._link {
  font-size: var(--vw12);
  font-weight: bold;
  line-height: 1.25;
}
/*------ Home PC -------*/
@media screen and (min-width: 768px) {
  .homeContent .intro > ._text {
    font-size: var(--vw-pc20);
    line-height: 1.5;
  }
  .homeContent .movieTitle {
    font-size: var(--vw-pc18);
  }
  .homeContent .linkList > ._link {
    font-size: var(--vw-pc16);
  }
}

/*------ Product Menu -------*/
.productMenu .pageListLink > ._label {
  font-size: var(--vw12);
}
.productMenu .pageListLink.isCurrent > ._label {
  font-size: var(--vw14);
}
.productMenu.isOpen::before {
  width: 39.2vw !important; /*147px*/
}
/*------ Product Menu PC -------*/
@media screen and (min-width: 768px) {
  .productMenu .pageListLink > ._label,
  .productMenu .pageListLink.isCurrent > ._label {
    font-size: var(--vw-pc14);
  }
  .productMenu.isOpen::before {
    width: 14.706vw !important; /*200px*/
  }
}

/*------ Product BottomNav -------*/
.productNav .linkPrev,
.productNav .linkNext {
  /*base size*/
}
.productNav .currentPage > ._name {
  font-size: var(--vw14);
}
.productNav .currentPage > ._type {
  font-size: var(--vw18);
}
/*------ Product BottomNav PC -------*/
@media screen and (min-width: 768px) {
  .productNav .linkPrev,
  .productNav .linkNext {
    /*base size*/
  }
  .productNav .currentPage > ._name {
    font-size: var(--vw-pc18);
  }
  .productNav .currentPage > ._type {
    font-size: var(--vw-pc18);
  }
}

/*------ ProductPage Title -------*/
.cProductTitle > ._ruby {
  font-size: var(--vw13);
  letter-spacing: 0.05em;
}
/*------ ProductPage Title PC -------*/
@media screen and (min-width: 768px) {
  .cProductTitle > ._ruby {
    font-size: var(--vw-pc16);
  }
}

/*------ Design Concept -------*/
.productConcept .heroSect > ._lead {
  font-size: var(--vw11);
  line-height: 1.7;
  letter-spacing: 0.15em;
}
.productConcept .detailSect > ._title {
  font-size: var(--vw26);
  line-height: 1.5;
}
.productConcept .detailSect > ._text {
  font-size: var(--vw14);
}
/*------ Design Concept PC -------*/
@media screen and (min-width: 768px) {
  .productConcept .heroSect > ._lead {
    font-size: var(--vw-pc15);
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
  .productConcept .detailSect > ._title {
    font-size: var(--vw-pc40);
  }
  .productConcept .detailSect > ._text {
    font-size: var(--vw-pc18);
  }
}

/*------ Design Story -------*/
.productStory .designSect .colImage > ._title {
  font-size: var(--vw40);
  line-height: 1;
}
.productStory .designSect > ._text {
  font-size: var(--vw11);
  line-height: 1.7;
  letter-spacing: 0.15em;
}
.productStory .designSect > ._text > ._note {
  font-size: var(--vw12);
}
.productStory .detailSectInner > ._title {
  font-size: var(--vw40);
  line-height: 1;
}
.productStory .detailTextList > ._text {
  font-size: var(--vw11);
  line-height: 1.7;
  letter-spacing: 0.15em;
}
.productStory .detailImage > ._sup {
  font-size: var(--vw9);
  line-height: 1;
}
.productStory .detailImage > ._label {
  font-size: var(--vw12);
  line-height: 1.1;
}
.productStory .developSect > ._title {
  font-size: var(--vw40);
  line-height: 1;
}
.productStory .developSect > ._text {
  font-size: var(--vw11);
  line-height: 1.7;
  letter-spacing: 0.15em;
}
/*------ Design Story PC -------*/
@media screen and (min-width: 768px) {
  .productStory .designSect .colImage > ._title {
    font-size: 5.368vw; /*73px*/
  }
  .productStory .designSect > ._text {
    font-size: var(--vw-pc15);
    line-height: 2.4;
    letter-spacing: 0.05em;
  }
  .productStory .designSect > ._text > ._note {
    font-size: var(--vw-pc10);
    line-height: 1.7;
    letter-spacing: 0.05em;
  }
  .productStory .detailSectInner > ._title {
    font-size: 4.044vw; /*55px*/
  }
  .productStory .detailTextList > ._text {
    font-size: var(--vw-pc14);
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
  .productStory .detailImage > ._sup {
    font-size: var(--vw-pc16);
  }
  .productStory .detailImage > ._label {
    font-size: var(--vw-pc22);
  }
  .productStory .developSect > ._title {
    font-size: 4.779vw; /*65px*/
  }
  .productStory .developSect > ._text {
    font-size: var(--vw-pc15);
    line-height: 2.4;
    letter-spacing: 0.05em;
  }
}

/*------ Prime Function -------*/
.productFunc .funcListTitle {
  font-size: var(--vw22);
  letter-spacing: 0.03em;
}
.productFunc .funcItem > ._label {
  font-size: var(--vw13);
  line-height: 1.2;
  letter-spacing: -0.02em;
}
.productFunc .bannerSect > ._title {
  font-size: var(--vw20);
}
/*------ Prime Function PC -------*/
@media screen and (min-width: 768px) {
  .productFunc .funcListTitle {
    font-size: var(--vw-pc25);
  }
  .productFunc .funcItem > ._label {
    font-size: var(--vw-pc16);
  }
  .productFunc .bannerSect > ._title {
    font-size: var(--vw-pc30);
  }
}

/*------ Interior Planning -------*/
.productPlan .planItem > ._title {
  font-size: var(--vw12);
}
/*------ Interior Planning PC -------*/
@media screen and (min-width: 768px) {
  .productPlan .planItem > ._title {
    font-size: var(--vw-pc24);
  }
}

/*------ Global Reference -------*/
.productGlobal .cardSect .card > ._title {
  font-size: var(--vw12);
  line-height: 1.2;
}
.productGlobal .allButton > ._label {
  font-size: var(--vw16);
  letter-spacing: 0.05em;
}
/*------ Global Reference PC -------*/
@media screen and (min-width: 768px) {
  .productGlobal .cardSect .card > ._title {
    font-size: var(--vw-pc18);
  }
  .productGlobal .allButton > ._label {
    font-size: var(--vw-pc20);
  }
}

/*------ Privacy Policy / Terms of Use -------*/
.documentContent > ._inner {
  font-size: var(--vw12);
  line-height: 1.6;
}
.documentContent h1 {
  font-size: var(--vw24);
  letter-spacing: 0.3em;
}
.documentContent h2 {
  font-size: var(--vw18);
  letter-spacing: 0.15em;
}
.documentContent .docSect > ._text {
  letter-spacing: 0.1em;
}
.documentContent dt::before {
  content: '■';
}
.documentContent .note::before {
  content: '※';
}
@media screen and (min-width: 768px) {
  .documentContent > ._inner {
    font-size: var(--vw-pc16);
  }
  .documentContent h1 {
    font-size: 3.088vw; /*42px*/
  }
  .documentContent h2 {
    font-size: var(--vw-pc24);
  }
}

.regAlign {
    vertical-align: -0.1em;
    display: inline-block;
    height: 0.95em;
    font-size: 12px;
    padding-left: 0.1em;
    transform: scale(0.9);
    padding-right: 0.1em;
    display: inline !important;
    background: none !important;
}