/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;700&display=swap");
@font-face {
  font-family: SegoeUI;
  src: local("Segoe UI Semibold"), url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff2) format("woff2"), url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff) format("woff"), url(//c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.ttf) format("truetype");
  font-weight: 700; }
#aboutFv {
  position: relative; }
  @media (max-width: 1200px) {
    #aboutFv {
      margin-top: 65px; } }
  #aboutFv::before {
    content: '';
    position: absolute;
    background: #fff;
    left: 8.33%;
    bottom: 0;
    width: 1px;
    height: 16.67%;
    z-index: 3; }
  #aboutFv::after {
    content: '';
    position: absolute;
    background: #fff;
    right: 8.33%;
    top: 0;
    width: 1px;
    height: 83.33%;
    z-index: 3; }
  #aboutFv .ttlBox {
    position: absolute;
    width: 83.33%;
    bottom: 16.67%;
    left: 8.33%;
    z-index: 3;
    border-bottom: 1px solid #fff; }
    #aboutFv .ttlBox p {
      color: #fff;
      font-size: 6.0rem;
      font-weight: 700;
      line-height: 1.5;
      text-align: left;
      padding-left: 20px; }
      #aboutFv .ttlBox p span {
        font-size: 4.0rem; }
      @media (max-width: 1024px) {
        #aboutFv .ttlBox p {
          font-size: 4.5rem; }
          #aboutFv .ttlBox p span {
            font-size: 3.2rem; } }
      @media (max-width: 480px) {
        #aboutFv .ttlBox p {
          font-size: 3.0rem; }
          #aboutFv .ttlBox p span {
            font-size: 2.6rem; } }
      #aboutFv .ttlBox p + p {
        margin-top: 20px; }
    #aboutFv .ttlBox p.main {
      vertical-align: top;
      line-height: 1; }
      #aboutFv .ttlBox p.main span {
        border-bottom: 1px solid #fff;
        padding: 20px 20px;
        line-height: 1;
        vertical-align: top;
        margin: 0 10px; }
        @media (max-width: 480px) {
          #aboutFv .ttlBox p.main span {
            display: block;
            max-width: 80%;
            margin: 0 auto; } }
        #aboutFv .ttlBox p.main span + span {
          margin: 0 0 0 20px; }
          @media (max-width: 480px) {
            #aboutFv .ttlBox p.main span + span {
              margin: 20px auto 0; } }
      @media (max-width: 480px) {
        #aboutFv .ttlBox p.main {
          font-size: 2.2rem; } }
  #aboutFv .bg {
    width: 100%; }
    #aboutFv .bg picture {
      width: 100%;
      max-width: 100%;
      overflow: hidden;
      display: block;
      position: relative; }
      #aboutFv .bg picture::before {
        content: '';
        padding-top: 20.833%;
        width: 100%;
        display: block; }
        @media (max-width: 480px) {
          #aboutFv .bg picture::before {
            padding-top: 124.5%; } }
      #aboutFv .bg picture source, #aboutFv .bg picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }

#aboutWrap {
  padding-top: 100px; }
  #aboutWrap #aboutIntroArea {
    border: 1px solid #D1D1D1;
    border-right: none;
    padding: min(100px,10.416vw) min(50px,5.208vw); }
    #aboutWrap #aboutIntroArea p.ttl {
      font-size: 2.4rem;
      font-weight: 700;
      line-height: 1.75;
      letter-spacing: 0; }
      @media (max-width: 480px) {
        #aboutWrap #aboutIntroArea p.ttl {
          font-size: 2.0rem; } }
    #aboutWrap #aboutIntroArea .textBox {
      margin-top: 25px; }
      #aboutWrap #aboutIntroArea .textBox p {
        font-weight: 500;
        line-height: 1.75;
        font-size: 1.6rem;
        letter-spacing: 0; }
        @media (max-width: 480px) {
          #aboutWrap #aboutIntroArea .textBox p {
            font-size: 1.4rem; } }
        #aboutWrap #aboutIntroArea .textBox p + p {
          margin-top: 1em; }
  #aboutWrap #aboutDetailArea {
    padding: min(100px,10.416vw) min(50px,5.208vw);
    width: 100%;
    border: 1px solid #D1D1D1;
    border-left: none;
    border-top: none; }
    #aboutWrap #aboutDetailArea .descBox .textBox {
      max-width: 600px;
      width: 54.55%; }
      @media (max-width: 480px) {
        #aboutWrap #aboutDetailArea .descBox .textBox {
          width: 100%; } }
      #aboutWrap #aboutDetailArea .descBox .textBox p.ttl {
        font-size: clamp(22.4px, 3.333vw, 32px);
        font-weight: 700;
        line-height: 1.40625;
        letter-spacing: 0.05em; }
      #aboutWrap #aboutDetailArea .descBox .textBox .text {
        margin-top: 25px; }
        #aboutWrap #aboutDetailArea .descBox .textBox .text p {
          font-weight: 500;
          line-height: 1.75;
          font-size: 1.6rem;
          letter-spacing: 0; }
          @media (max-width: 480px) {
            #aboutWrap #aboutDetailArea .descBox .textBox .text p {
              font-size: 1.4rem; } }
          #aboutWrap #aboutDetailArea .descBox .textBox .text p + p {
            margin-top: 1em; }
    #aboutWrap #aboutDetailArea .descBox figure, #aboutWrap #aboutDetailArea .descBox picture {
      width: 40.91%;
      margin: 0 0 0 4.17%; }
      @media (max-width: 480px) {
        #aboutWrap #aboutDetailArea .descBox figure, #aboutWrap #aboutDetailArea .descBox picture {
          width: 90%;
          margin: 30px auto; } }
    #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) {
      align-items: center; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) .textBox .text p:nth-of-type(1) {
        text-indent: -4px; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) figure {
        max-width: 445px;
        overflow: hidden;
        display: block;
        position: relative; }
        #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) figure::before {
          content: '';
          padding-top: 40.449%;
          width: 100%;
          display: block; }
        #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) figure source, #aboutWrap #aboutDetailArea .descBox:nth-of-type(1) figure img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 0; }
    #aboutWrap #aboutDetailArea .descBox:nth-of-type(2) picture {
      max-width: 450px;
      overflow: hidden;
      display: block;
      position: relative; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(2) picture::before {
        content: '';
        padding-top: 84.444%;
        width: 100%;
        display: block; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(2) picture source, #aboutWrap #aboutDetailArea .descBox:nth-of-type(2) picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
    #aboutWrap #aboutDetailArea .descBox:nth-of-type(3) picture {
      max-width: 450px;
      overflow: hidden;
      display: block;
      position: relative; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(3) picture::before {
        content: '';
        padding-top: 64.666%;
        width: 100%;
        display: block; }
      #aboutWrap #aboutDetailArea .descBox:nth-of-type(3) picture source, #aboutWrap #aboutDetailArea .descBox:nth-of-type(3) picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
    #aboutWrap #aboutDetailArea .descBox + .descBox {
      margin-top: min(100px,10.416vw); }
  #aboutWrap #aboutLeadBox {
    padding: min(125px,13.0215vw) min(50px,5.208vw);
    width: 100%;
    border-left: 1px solid #D1D1D1; }
    #aboutWrap #aboutLeadBox .textBox {
      text-align: center; }
      #aboutWrap #aboutLeadBox .textBox p.ttl {
        font-size: clamp(28px, 4.167vw, 40px);
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 1.5;
        border-bottom: 1px solid #000000;
        width: fit-content;
        margin: 0 auto;
        padding: 0 1em; }
        @media (max-width: 480px) {
          #aboutWrap #aboutLeadBox .textBox p.ttl {
            font-size: 2.2rem; } }
      #aboutWrap #aboutLeadBox .textBox p.text {
        font-size: clamp(22.4px, 3.333vw, 32px);
        font-weight: 700;
        line-height: 1.5625;
        letter-spacing: 0.05em;
        margin-top: .75em; }
        @media (max-width: 480px) {
          #aboutWrap #aboutLeadBox .textBox p.text {
            font-size: 1.8rem; } }
  #aboutWrap #aboutDesigner {
    padding: min(120px,12.4995vw) min(100px,10.416vw);
    border: 1px solid #D1D1D1;
    background: #F6F6F6; }
    @media (max-width: 480px) {
      #aboutWrap #aboutDesigner {
        padding-left: 20px;
        padding-right: 20px; } }
    #aboutWrap #aboutDesigner .descBox {
      background: #fff;
      border-left: 10px solid #1B2B58; }
      @media (max-width: 480px) {
        #aboutWrap #aboutDesigner .descBox {
          border-left: 6px solid #1B2B58; } }
      #aboutWrap #aboutDesigner .descBox .infoBox {
        align-items: center; }
        @media (max-width: 480px) {
          #aboutWrap #aboutDesigner .descBox .infoBox {
            flex-direction: column-reverse; } }
        #aboutWrap #aboutDesigner .descBox .infoBox .textBox {
          padding-left: min(38px,3.9585vw);
          max-width: 562px; }
          @media (max-width: 480px) {
            #aboutWrap #aboutDesigner .descBox .infoBox .textBox {
              margin: 25px auto; } }
          #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.ttl span.name {
            font-size: 2.4rem;
            line-height: 1.5;
            letter-spacing: 0.05em;
            font-weight: 700;
            padding-right: 1em; }
            @media (max-width: 480px) {
              #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.ttl span.name {
                font-size: 2rem; } }
          #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.ttl span.job {
            font-size: 1.8rem;
            line-height: 1;
            letter-spacing: 0.05em;
            font-weight: 700;
            padding-left: 1em;
            border-left: 1px solid #D1D1D1; }
            @media (max-width: 480px) {
              #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.ttl span.job {
                font-size: 1.6rem; } }
          #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.text {
            margin-top: 1em;
            font-size: 1.4rem;
            line-height: 1.7142857143;
            letter-spacing: 0;
            color: #8E8E8E; }
            @media (max-width: 480px) {
              #aboutWrap #aboutDesigner .descBox .infoBox .textBox p.text {
                font-size: 1.2rem; } }
          #aboutWrap #aboutDesigner .descBox .infoBox .textBox .story {
            margin-top: min(70px,7.2915vw); }
            @media (max-width: 1024px) {
              #aboutWrap #aboutDesigner .descBox .infoBox .textBox .story {
                margin-top: 40px; } }
            @media (max-width: 480px) {
              #aboutWrap #aboutDesigner .descBox .infoBox .textBox .story {
                margin-top: 18px; } }
            #aboutWrap #aboutDesigner .descBox .infoBox .textBox .story p {
              font-weight: 500;
              line-height: 1.75;
              font-size: 1.6rem;
              letter-spacing: 0; }
              @media (max-width: 480px) {
                #aboutWrap #aboutDesigner .descBox .infoBox .textBox .story p {
                  font-size: 1.4rem; } }
        #aboutWrap #aboutDesigner .descBox .infoBox picture {
          max-width: 280px;
          margin: 0 0 0 auto;
          width: 30.94%;
          overflow: hidden;
          display: block;
          position: relative; }
          @media (max-width: 1024px) {
            #aboutWrap #aboutDesigner .descBox .infoBox picture {
              width: 60%;
              margin-left: 20px; } }
          @media (max-width: 480px) {
            #aboutWrap #aboutDesigner .descBox .infoBox picture {
              margin: 25px auto 0;
              width: 80%; } }
          #aboutWrap #aboutDesigner .descBox .infoBox picture::before {
            content: '';
            padding-top: 135.71%;
            width: 100%;
            display: block; }
          #aboutWrap #aboutDesigner .descBox .infoBox picture source, #aboutWrap #aboutDesigner .descBox .infoBox picture img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            position: absolute;
            top: 0;
            left: 0;
            z-index: 0; }
      #aboutWrap #aboutDesigner .descBox .commentBox {
        border-top: 1px solid #D1D1D1;
        padding: min(70px,7.2915vw) min(40px,4.167vw); }
        #aboutWrap #aboutDesigner .descBox .commentBox p {
          font-weight: 500;
          line-height: 1.75;
          font-size: 1.6rem;
          letter-spacing: 0; }
          @media (max-width: 480px) {
            #aboutWrap #aboutDesigner .descBox .commentBox p {
              font-size: 1.4rem; } }
          #aboutWrap #aboutDesigner .descBox .commentBox p + p {
            margin-top: 1.5em; }
  #aboutWrap #aboutBtnArea {
    padding: min(120px,12.4995vw) 0;
    border-right: 1px solid #D1D1D1;
    border-bottom: 1px solid #D1D1D1; }
    #aboutWrap #aboutBtnArea p.c-btn {
      margin: 0 auto;
      text-align: center; }
      #aboutWrap #aboutBtnArea p.c-btn button.learn-more {
        width: 33rem; }
        #aboutWrap #aboutBtnArea p.c-btn button.learn-more .button-text {
          margin: 0 0 0 3em; }
          @media (max-width: 480px) {
            #aboutWrap #aboutBtnArea p.c-btn button.learn-more .button-text {
              margin: 0; } }
      #aboutWrap #aboutBtnArea p.c-btn button.learn-more .circle {
        background: #99731F; }
  #aboutWrap #aboutBottomArea {
    padding: min(100px,10.416vw) 0;
    border-left: 1px solid #D1D1D1; }
