@charset "UTF-8";
a.link_bnr {
  display: block; }
  a.link_bnr:hover {
    opacity: .7;
    transition: .5s; }

h2 {
  border-top: none 0 !important;
  border-bottom: none 0 !important; }

h3 {
  border-left: none 0 !important; }

p, h4 {
  font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  text-align: left;
  font-weight: 400;
  font-feature-settings: "palt"; }

figure img {
  width: 100%;
  height: auto; }
figure figcaption {
  text-align: right;
  display: block;
  font-size: 12px;
  padding: 5px 0;
  width: 100%;
  font-family: "Shippori Mincho","Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; }
figure.imgCaption {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  position: relative; }
  figure.imgCaption img {
    display: block;
    width: 100%; }
  figure.imgCaption figcaption {
    position: absolute;
    bottom: 5px;
    right: 10px;
    padding: 0 0;
    display: block;
    color: #fff !important;
    text-shadow: 1px 1px 3px #000,-1px -1px 3px #000,-1px -1px 3px #000,-1px -1px 3px #000;
    font-size: 11px;
    line-height: 14px;
    font-family: "Shippori Mincho","Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; }
    figure.imgCaption figcaption.left {
      right: inherit;
      left: 10px;
      text-align: left; }
    figure.imgCaption figcaption.black {
      color: #000 !important;
      text-shadow: 1px 1px 3px #fff,-1px -1px 3px #fff,-1px -1px 3px #fff,-1px -1px 3px #fff; }
    figure.imgCaption figcaption.no-shadow {
      text-shadow: 1px 1px 3px transparent,-1px -1px 3px transparent,-1px -1px 3px transparent,-1px -1px 3px transparent; }

.fadein {
  opacity: 0;
  transform: translate(0, 0);
  transition: all 1.5s;
  /*
  &.fadein-left{
      transform: translate(-30px,0);
  }
  &.fadein-right{
      transform: translate(30px,0);
  }*/ }
  .fadein.fadein-center {
    transform: translate(0, 0); }
  .fadein.fadein-up {
    transform: translate(0, -30px); }
  .fadein.fadein-bottom {
    transform: translate(0, 30px); }
  .fadein.fadein-blur {
    filter: blur(10px); }
  .fadein.scrollin {
    opacity: 1 !important;
    transform: translate(0, 0) !important;
    filter: blur(0) !important; }

.fadein-anime {
  animation: fadeIn 3s ease-in; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
#contents {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100vw; }
  #contents #main #mainView {
    width: 100%;
    position: relative;
    z-index: 10; }
    #contents #main #mainView .slick-dotted.slick-slider {
      margin-bottom: 0; }
    #contents #main #mainView .slideItem .baseimg {
      position: relative; }
      #contents #main #mainView .slideItem .baseimg .imgCaption {
        position: absolute;
        bottom: 2%;
        right: 2%;
        font-size: 11px;
        line-height: 15px;
        letter-spacing: 0.03em;
        color: #fff;
        font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
        /*text-shadow: 1px 1px 3px #000,-1px -1px 3px #000,-1px -1px 3px #000,-1px -1px 3px #000;*/ }
        #contents #main #mainView .slideItem .baseimg .imgCaption.top-right {
          bottom: initial;
          top: 2%; }
        #contents #main #mainView .slideItem .baseimg .imgCaption.black, #contents #main #mainView .slideItem .baseimg .imgCaption.black-white {
          color: #231815; }
        #contents #main #mainView .slideItem .baseimg .imgCaption.bottom-left {
          right: initial;
          left: 2%; }
        #contents #main #mainView .slideItem .baseimg .imgCaption.right-half {
          top: calc(55% - 1.5em);
          bottom: initial; }
        #contents #main #mainView .slideItem .baseimg .imgCaption.left-right {
          right: 50%; }
    #contents #main #mainView .slick-dots li button::before {
      color: #b5b6b6;
      opacity: 1;
      content: "●";
      font-size: 10px; }
    #contents #main #mainView .slick-dots li.slick-active button::before {
      color: #024744; }
  #contents #main .merit-box {
    background: #fff;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    position: relative;
    overflow: hidden; }
    #contents #main .merit-box-sp {
      display: none; }
    #contents #main .merit-box-slide {
      width: 100%;
      margin: 0 auto; }
      #contents #main .merit-box-slide .slick-list {
        margin: 0 auto;
        width: 90%;
        max-width: 1200px; }
      #contents #main .merit-box-slide .slick-slide {
        display: block;
        height: auto;
        margin: 0 10px; }
        #contents #main .merit-box-slide .slick-slide img {
          display: block;
          margin: 0 auto; }
          #contents #main .merit-box-slide .slick-slide img:hover {
            opacity: 0;
            transition: 1s; }
      #contents #main .merit-box-slide .slideItem-inner {
        margin: 20px 0;
        background-size: cover;
        background-repeat: no-repeat; }
        #contents #main .merit-box-slide .slideItem-inner.merit01 {
          background-image: url(../img/top/merit01_on.jpg); }
        #contents #main .merit-box-slide .slideItem-inner.merit02 {
          background-image: url(../img/top/merit02_on.jpg); }
        #contents #main .merit-box-slide .slideItem-inner.merit03 {
          background-image: url(../img/top/merit03_on.jpg); }
        #contents #main .merit-box-slide .slideItem-inner.merit04 {
          background-image: url(../img/top/merit04_on.jpg); }
        #contents #main .merit-box-slide .slideItem-inner.merit05 {
          background-image: url(../img/top/merit05_on.jpg); }
      #contents #main .merit-box-slide .slide-arrow {
        display: block;
        background-size: contain;
        background-repeat: no-repeat;
        padding: 15px 0;
        width: 30px;
        position: absolute;
        top: calc(50% - 15px);
        z-index: 10; }
        #contents #main .merit-box-slide .slide-arrow.prev-arrow {
          left: 10px;
          background-image: url(../img/top/top-merit-slide-allow01.png); }
        #contents #main .merit-box-slide .slide-arrow.next-arrow {
          right: 10px;
          background-position: right;
          background-image: url(../img/top/top-merit-slide-allow02.png); }
  #contents #main article.bg-white, #contents #main section.bg-white {
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-image: url(../img/bg/bg-white.jpg); }
  #contents #main article.bg-beige-color, #contents #main section.bg-beige-color {
    background-color: #e9e6e0; }
    #contents #main article.bg-beige-color-multiply, #contents #main section.bg-beige-color-multiply {
      position: relative; }
      #contents #main article.bg-beige-color-multiply:before, #contents #main section.bg-beige-color-multiply:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #e9e6e0;
        transform: translateY(0) scale(1);
        mix-blend-mode: multiply; }
      #contents #main article.bg-beige-color-multiply .content-detail, #contents #main section.bg-beige-color-multiply .content-detail {
        position: relative;
        z-index: 10; }
  #contents #main article .content-detail, #contents #main section .content-detail {
    display: block;
    width: 80%;
    max-width: 1400px;
    padding: 40px 0 80px;
    margin: 0 auto; }
    #contents #main article .content-detail-inner, #contents #main section .content-detail-inner {
      display: block;
      max-width: 1000px;
      margin: 0 auto; }
    #contents #main article .content-detail .section-title, #contents #main section .content-detail .section-title {
      position: relative;
      background-repeat: no-repeat;
      background-size: contain;
      padding: 118px 0; }
      #contents #main article .content-detail .section-title.ttl01, #contents #main section .content-detail .section-title.ttl01 {
        background-image: url(../img/top/top_section-ttl_location_bg.png); }
      #contents #main article .content-detail .section-title.ttl02, #contents #main section .content-detail .section-title.ttl02 {
        background-image: url(../img/top/top_section-ttl_design_bg.png); }
      #contents #main article .content-detail .section-title.ttl03, #contents #main section .content-detail .section-title.ttl03 {
        background-image: url(../img/top/top_section-ttl_plan_bg.png); }
      #contents #main article .content-detail .section-title.ttl04, #contents #main section .content-detail .section-title.ttl04 {
        background-image: url(../img/top/top_section-ttl_access_bg.png); }
      #contents #main article .content-detail .section-title.ttl05, #contents #main section .content-detail .section-title.ttl05 {
        background-image: url(../img/top/top_section-ttl_quality_bg.png); }
      #contents #main article .content-detail .section-title-lead, #contents #main article .content-detail .section-title-sub, #contents #main section .content-detail .section-title-lead, #contents #main section .content-detail .section-title-sub {
        background-repeat: no-repeat;
        background-size: contain;
        padding: 118px 0;
        width: 336px;
        display: block;
        position: absolute;
        top: 0;
        left: 0; }
        #contents #main article .content-detail .section-title-lead > span, #contents #main article .content-detail .section-title-sub > span, #contents #main section .content-detail .section-title-lead > span, #contents #main section .content-detail .section-title-sub > span {
          display: none; }
      #contents #main article .content-detail .section-title-lead.ttl01, #contents #main section .content-detail .section-title-lead.ttl01 {
        background-image: url(../img/top/top_section-ttl_location_txt01.png); }
      #contents #main article .content-detail .section-title-lead.ttl02, #contents #main section .content-detail .section-title-lead.ttl02 {
        background-image: url(../img/top/top_section-ttl_design_txt01.png); }
      #contents #main article .content-detail .section-title-lead.ttl03, #contents #main section .content-detail .section-title-lead.ttl03 {
        background-image: url(../img/top/top_section-ttl_plan_txt01.png); }
      #contents #main article .content-detail .section-title-lead.ttl04, #contents #main section .content-detail .section-title-lead.ttl04 {
        background-image: url(../img/top/top_section-ttl_access_txt01.png); }
      #contents #main article .content-detail .section-title-lead.ttl05, #contents #main section .content-detail .section-title-lead.ttl05 {
        background-image: url(../img/top/top_section-ttl_quality_txt01.png); }
      #contents #main article .content-detail .section-title-sub.ttl01, #contents #main section .content-detail .section-title-sub.ttl01 {
        background-image: url(../img/top/top_section-ttl_location_txt02.png); }
      #contents #main article .content-detail .section-title-sub.ttl02, #contents #main section .content-detail .section-title-sub.ttl02 {
        background-image: url(../img/top/top_section-ttl_design_txt02.png); }
      #contents #main article .content-detail .section-title-sub.ttl03, #contents #main section .content-detail .section-title-sub.ttl03 {
        background-image: url(../img/top/top_section-ttl_plan_txt02.png); }
      #contents #main article .content-detail .section-title-sub.ttl04, #contents #main section .content-detail .section-title-sub.ttl04 {
        background-image: url(../img/top/top_section-ttl_access_txt02.png); }
      #contents #main article .content-detail .section-title-sub.ttl05, #contents #main section .content-detail .section-title-sub.ttl05 {
        background-image: url(../img/top/top_section-ttl_quality_txt02.png); }
    #contents #main article .content-detail .flex-box-wrap, #contents #main section .content-detail .flex-box-wrap {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #contents #main article .content-detail .flex-box-wrap.reverse, #contents #main section .content-detail .flex-box-wrap.reverse {
        flex-direction: row-reverse; }
    #contents #main article .content-detail .flex-box-inner, #contents #main section .content-detail .flex-box-inner {
      width: 50%; }
      #contents #main article .content-detail .flex-box-inner.title-box, #contents #main section .content-detail .flex-box-inner.title-box {
        display: flex;
        flex-wrap: no-wrap;
        justify-content: space-between;
        align-items: center;
        gap: 100px; }
        #contents #main article .content-detail .flex-box-inner.title-box .section-title, #contents #main section .content-detail .flex-box-inner.title-box .section-title {
          width: 336px; }
        #contents #main article .content-detail .flex-box-inner.title-box .section-text, #contents #main section .content-detail .flex-box-inner.title-box .section-text {
          width: calc(100% - 436px);
          writing-mode: vertical-rl;
          text-orientation: upright;
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 24px;
          line-height: 51px;
          letter-spacing: 0.05em;
          display: block;
          align-self: flex-start; }
        #contents #main article .content-detail .flex-box-inner.title-box.reverse, #contents #main section .content-detail .flex-box-inner.title-box.reverse {
          flex-direction: row-reverse;
          text-align: left; }
      #contents #main article .content-detail .flex-box-inner.img-box-wrap, #contents #main section .content-detail .flex-box-inner.img-box-wrap {
        width: 40%;
        max-width: 658px; }
      #contents #main article .content-detail .flex-box-inner .img-box, #contents #main section .content-detail .flex-box-inner .img-box {
        display: grid;
        margin-bottom: 10px; }
        #contents #main article .content-detail .flex-box-inner .img-box.grid1, #contents #main section .content-detail .flex-box-inner .img-box.grid1 {
          grid-template-columns: 1fr; }
        #contents #main article .content-detail .flex-box-inner .img-box.grid2, #contents #main section .content-detail .flex-box-inner .img-box.grid2 {
          grid-template-columns: 1fr 1fr;
          gap: 12px; }
    #contents #main article .content-detail .readmore-area, #contents #main section .content-detail .readmore-area {
      display: flex; }
      #contents #main article .content-detail .readmore-area.right, #contents #main section .content-detail .readmore-area.right {
        justify-content: end; }
      #contents #main article .content-detail .readmore-area.w658, #contents #main section .content-detail .readmore-area.w658 {
        width: 658px;
        margin: 0 auto; }
      #contents #main article .content-detail .readmore-area a.readmore, #contents #main section .content-detail .readmore-area a.readmore {
        display: block;
        width: 266px;
        margin-top: 70px; }
        #contents #main article .content-detail .readmore-area a.readmore:hover, #contents #main section .content-detail .readmore-area a.readmore:hover {
          opacity: .7;
          transition: 1s; }
        #contents #main article .content-detail .readmore-area a.readmore.off, #contents #main section .content-detail .readmore-area a.readmore.off {
          pointer-events: none; }
  #contents #main article#merit .en-logo, #contents #main section#merit .en-logo {
    display: block; }
  #contents #main article#merit .cv-wrap, #contents #main section#merit .cv-wrap {
    width: 100%;
    margin: 0 auto; }
    #contents #main article#merit .cv-wrap a.link_bnr, #contents #main section#merit .cv-wrap a.link_bnr {
      display: block;
      width: 90%;
      margin: 40px auto 0; }
      #contents #main article#merit .cv-wrap a.link_bnr:hover, #contents #main section#merit .cv-wrap a.link_bnr:hover {
        opacity: .7;
        transition: .5s; }
  #contents #main article#merit .cv-text-lead, #contents #main section#merit .cv-text-lead {
    font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-size: 52px;
    line-height: 65px;
    letter-spacing: 0.095em;
    text-align: center;
    color: #574435; }
  #contents #main article#merit .cv-text-sub, #contents #main section#merit .cv-text-sub {
    font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-size: 17px;
    line-height: 30px;
    letter-spacing: 0.095em;
    text-align: center;
    color: #574435;
    margin-top: 18px; }
  #contents #main article#concept .concept-ttl, #contents #main section#concept .concept-ttl {
    display: block;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url(../img/top/top_main_copy.png); }
    #contents #main article#concept .concept-ttl > span, #contents #main section#concept .concept-ttl > span {
      display: none; }
  #contents #main article#concept .concept-txt, #contents #main section#concept .concept-txt {
    font-family: "Noto Serif JP","Shippori Mincho","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    text-align: center;
    letter-spacing: 0.11em; }
  #contents #main article#location, #contents #main section#location {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    background-image: url(../img/top/top_layer01.png); }
    #contents #main article#location .location-flex-box, #contents #main section#location .location-flex-box {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 150px auto 0;
      gap: 0 40px; }
      #contents #main article#location .location-flex-box > div, #contents #main section#location .location-flex-box > div {
        width: calc(50% - 40px); }
      #contents #main article#location .location-flex-box > .location-flex-box-img, #contents #main section#location .location-flex-box > .location-flex-box-img {
        width: 40%;
        max-width: 658px;
        order: -1; }
      #contents #main article#location .location-flex-box > .location-flex-box-txt01, #contents #main section#location .location-flex-box > .location-flex-box-txt01 {
        margin-top: 80px; }
        #contents #main article#location .location-flex-box > .location-flex-box-txt01 > .ttl, #contents #main section#location .location-flex-box > .location-flex-box-txt01 > .ttl {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 20px;
          line-height: 32px;
          letter-spacing: 0.15em; }
        #contents #main article#location .location-flex-box > .location-flex-box-txt01 > .txt, #contents #main section#location .location-flex-box > .location-flex-box-txt01 > .txt {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 16px;
          line-height: 32px;
          letter-spacing: 0.15em;
          margin-top: 10px; }
        #contents #main article#location .location-flex-box > .location-flex-box-txt01 > .txt02, #contents #main section#location .location-flex-box > .location-flex-box-txt01 > .txt02 {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 16px;
          line-height: 32px;
          letter-spacing: 0.15em;
          padding: 20px 0 10px;
          border-top: dashed 2px #959595;
          border-bottom: dashed 2px #959595;
          margin-top: 70px; }
      #contents #main article#location .location-flex-box > .location-flex-box-txt02 > .txt, #contents #main section#location .location-flex-box > .location-flex-box-txt02 > .txt {
        font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
        font-size: 16px;
        line-height: 32px;
        letter-spacing: 0.15em;
        padding: 20px 0 10px;
        border-top: dashed 2px #959595;
        border-bottom: dashed 2px #959595; }
  #contents #main article#design, #contents #main section#design {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    background-image: url(../img/top/top_layer02.png);
    margin-top: 110px; }
    #contents #main article#design .design-section-text, #contents #main section#design .design-section-text {
      display: flex;
      justify-content: flex-end; }
      #contents #main article#design .design-section-text > p, #contents #main section#design .design-section-text > p {
        display: block; }
    #contents #main article#design .design-box, #contents #main section#design .design-box {
      margin-top: 75px; }
      #contents #main article#design .design-box-inner, #contents #main section#design .design-box-inner {
        margin-top: 80px; }
        #contents #main article#design .design-box-inner > .ttl, #contents #main section#design .design-box-inner > .ttl {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 20px;
          line-height: 32px;
          letter-spacing: 0.15em; }
        #contents #main article#design .design-box-inner > .txt, #contents #main section#design .design-box-inner > .txt {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 16px;
          line-height: 32px;
          letter-spacing: 0.15em;
          margin-top: 10px; }
      #contents #main article#design .design-box-tree, #contents #main section#design .design-box-tree {
        margin-top: 50px;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        gap: 0 12px; }
        #contents #main article#design .design-box-tree > .tree-caption, #contents #main section#design .design-box-tree > .tree-caption {
          font-size: 12px;
          line-height: 30px;
          letter-spacing: 0.15em; }
        #contents #main article#design .design-box-tree > .tree-caption02, #contents #main section#design .design-box-tree > .tree-caption02 {
          font-size: 12px;
          line-height: 30px;
          letter-spacing: 0.15em;
          grid-column: 4;
          text-align: right; }
      #contents #main article#design .design-box-img, #contents #main section#design .design-box-img {
        margin-top: 47px; }
  #contents #main article#plan, #contents #main section#plan {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    background-image: url(../img/top/top_layer03.png);
    margin-top: 110px; }
    #contents #main article#plan .plan-flex-box, #contents #main section#plan .plan-flex-box {
      width: 40%;
      display: flex;
      justify-content: space-between; }
      #contents #main article#plan .plan-flex-box > div, #contents #main section#plan .plan-flex-box > div {
        width: 50%;
        max-width: 658px; }
  #contents #main article#access, #contents #main section#access {
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    background-image: url(../img/top/top_layer04.png);
    margin-top: 140px; }
    #contents #main article#access .access-section-text, #contents #main section#access .access-section-text {
      display: flex;
      justify-content: flex-end; }
      #contents #main article#access .access-section-text > p, #contents #main section#access .access-section-text > p {
        display: block; }
    #contents #main article#access .access-box, #contents #main section#access .access-box {
      margin-top: 114px; }
      #contents #main article#access .access-box-inner, #contents #main section#access .access-box-inner {
        margin-top: 140px; }
        #contents #main article#access .access-box-inner > .ttl, #contents #main section#access .access-box-inner > .ttl {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 20px;
          line-height: 32px;
          letter-spacing: 0.15em; }
        #contents #main article#access .access-box-inner > .txt, #contents #main section#access .access-box-inner > .txt {
          font-family: "Shippori Mincho", "Noto Serif JP","Noto Serif JP W3", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-size: 16px;
          line-height: 32px;
          letter-spacing: 0.15em;
          margin-top: 10px; }
      #contents #main article#access .access-box-readmore, #contents #main section#access .access-box-readmore {
        display: flex;
        width: 100%;
        margin: 0 auto;
        justify-content: space-between; }
        #contents #main article#access .access-box-readmore > div, #contents #main section#access .access-box-readmore > div {
          width: 50%; }
          #contents #main article#access .access-box-readmore > div.readmore-area, #contents #main section#access .access-box-readmore > div.readmore-area {
            width: 40%;
            max-width: 658px; }
  #contents #main article#quality, #contents #main section#quality {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    background-image: url(../img/top/top_layer05.png);
    margin-top: 160px;
    padding-bottom: 90px; }
    #contents #main article#quality .quality-flex-box, #contents #main section#quality .quality-flex-box {
      width: 40%;
      display: flex;
      justify-content: space-between; }
      #contents #main article#quality .quality-flex-box > .blank, #contents #main section#quality .quality-flex-box > .blank {
        width: auto; }
      #contents #main article#quality .quality-flex-box > .readmore-area, #contents #main section#quality .quality-flex-box > .readmore-area {
        margin-top: 100px;
        width: 460px;
        flex-wrap: wrap; }
        #contents #main article#quality .quality-flex-box > .readmore-area > .readmore, #contents #main section#quality .quality-flex-box > .readmore-area > .readmore {
          width: 100%;
          margin-top: 0;
          margin-bottom: 20px; }

/*PC ONLY*/
@media screen and (min-width: 1094px) {
  .smart_on, .tab_on {
    display: none !important; }

  #contents #main article#merit .en-logo, #contents #main section#merit .en-logo {
    width: 320px;
    margin: 0 auto 22px; }
  #contents #main article#merit .cv-wrap, #contents #main section#merit .cv-wrap {
    max-width: 1000px; }
  #contents #main article#merit .cv-text, #contents #main section#merit .cv-text {
    margin: 52px auto 50px; }
  #contents #main article#concept .concept-ttl, #contents #main section#concept .concept-ttl {
    width: 100%;
    padding: 75px 0;
    margin-top: 110px; }
  #contents #main article#concept .concept-txt, #contents #main section#concept .concept-txt {
    font-size: 22px;
    line-height: 47px;
    margin: 54px auto 110px; } }
/*レイアウト崩れ調整*/
@media screen and (min-width: 1094px) and (max-width: 1320px) {
  .tab_off {
    display: none !important; }

  .design-section-text {
    margin-right: -17em; }

  #contents #main section#design .design-section-text {
    justify-content: flex-start; }

  #contents #main section#access .access-section-text {
    justify-content: flex-center; } }
/*SP ONLY*/
@media screen and (max-width: 1093px) {
  .pc_on, .tab_on {
    display: none !important; }

  #contents #main .merit-box {
    display: none; }
    #contents #main .merit-box-sp {
      display: block;
      background: #fff;
      width: 100vw;
      margin: 0 calc(50% - 50vw);
      overflow: hidden;
      padding: 0 0 0 0; }
      #contents #main .merit-box-sp-slide {
        margin: 0 auto; }
        #contents #main .merit-box-sp-slide .slick-list {
          margin: 0 -30px;
          position: relative; }
        #contents #main .merit-box-sp-slide .slick-slide {
          display: block;
          height: auto;
          margin: 0 0 0 30px; }
          #contents #main .merit-box-sp-slide .slick-slide img {
            display: block;
            margin: 0 auto;
            position: relative;
            z-index: 99; }
        #contents #main .merit-box-sp-slide .slideItem-inner {
          margin: 25px 0;
          background-size: cover;
          background-repeat: no-repeat; }
          #contents #main .merit-box-sp-slide .slideItem-inner.merit01 {
            background-image: url(../img/top/merit01_on.jpg); }
          #contents #main .merit-box-sp-slide .slideItem-inner.merit02 {
            background-image: url(../img/top/merit02_on.jpg); }
          #contents #main .merit-box-sp-slide .slideItem-inner.merit03 {
            background-image: url(../img/top/merit03_on.jpg); }
          #contents #main .merit-box-sp-slide .slideItem-inner.merit04 {
            background-image: url(../img/top/merit04_on.jpg); }
          #contents #main .merit-box-sp-slide .slideItem-inner.merit05 {
            background-image: url(../img/top/merit05_on.jpg); }
        #contents #main .merit-box-sp-slide .slide-arrow {
          display: block;
          background-size: contain;
          background-repeat: no-repeat;
          padding: 15px 0;
          width: 30px;
          position: absolute;
          top: calc(50% - 15px);
          z-index: 10; }
          #contents #main .merit-box-sp-slide .slide-arrow.prev-arrow {
            left: 10px;
            background-image: url(../img/top/top-merit-slide-allow01_sp.png); }
          #contents #main .merit-box-sp-slide .slide-arrow.next-arrow {
            right: 10px;
            background-image: url(../img/top/top-merit-slide-allow02_sp.png); }
  #contents #main article .content-detail, #contents #main section .content-detail {
    width: 100%;
    max-width: 100%;
    padding: 40px 0 80px; }
    #contents #main article .content-detail-inner, #contents #main section .content-detail-inner {
      width: 95%;
      max-width: 95%; }
    #contents #main article .content-detail .flex-box-wrap, #contents #main section .content-detail .flex-box-wrap {
      display: block; }
    #contents #main article .content-detail .flex-box-inner, #contents #main section .content-detail .flex-box-inner {
      width: 100%;
      max-width: 100%; }
      #contents #main article .content-detail .flex-box-inner.img-box-wrap, #contents #main section .content-detail .flex-box-inner.img-box-wrap {
        width: 100%;
        max-width: 100%; }
      #contents #main article .content-detail .flex-box-inner .img-box, #contents #main section .content-detail .flex-box-inner .img-box {
        width: 90%;
        margin: 0 auto; }
    #contents #main article .content-detail .readmore-area, #contents #main section .content-detail .readmore-area {
      display: flex !important; }
      #contents #main article .content-detail .readmore-area.w658, #contents #main section .content-detail .readmore-area.w658 {
        width: 100%; }
      #contents #main article .content-detail .readmore-area a.readmore, #contents #main section .content-detail .readmore-area a.readmore {
        display: block;
        width: 320px;
        margin-top: 90px; }
      #contents #main article .content-detail .readmore-area.sp-reverse, #contents #main section .content-detail .readmore-area.sp-reverse {
        flex-direction: row-reverse; }
  #contents #main article#merit .en-logo, #contents #main section#merit .en-logo {
    width: 70%;
    margin: 0 auto 22px; }
  #contents #main article#merit .cv-wrap a.link_bnr, #contents #main section#merit .cv-wrap a.link_bnr {
    margin-top: 60px; }
  #contents #main article#merit .cv-text, #contents #main section#merit .cv-text {
    margin: 55px auto 64px; }
  #contents #main article#concept .concept-ttl, #contents #main section#concept .concept-ttl {
    width: 100%;
    padding: 80px 0;
    margin-top: 30px;
    background-image: url(../img/top/top_main_copy_sp.png); }
  #contents #main article#concept .concept-txt, #contents #main section#concept .concept-txt {
    font-size: 24px;
    line-height: 47px;
    margin: 17px auto 35px; }
  #contents #main article#location, #contents #main section#location {
    background-image: url(../img/top/top_layer01_sp.png); }
    #contents #main article#location .title-box, #contents #main section#location .title-box {
      margin-bottom: 330px;
      align-items: flex-start; }
    #contents #main article#location .location-flex-box, #contents #main section#location .location-flex-box {
      display: block;
      width: 95%;
      margin: 60px auto 0; }
      #contents #main article#location .location-flex-box > div, #contents #main section#location .location-flex-box > div {
        display: block;
        width: 100%;
        margin: 0 auto; }
      #contents #main article#location .location-flex-box > .location-flex-box-img, #contents #main section#location .location-flex-box > .location-flex-box-img {
        width: 100%; }
      #contents #main article#location .location-flex-box > .location-flex-box-txt01, #contents #main section#location .location-flex-box > .location-flex-box-txt01 {
        margin-top: 60px; }
        #contents #main article#location .location-flex-box > .location-flex-box-txt01 > .ttl, #contents #main section#location .location-flex-box > .location-flex-box-txt01 > .ttl {
          font-size: 20px;
          line-height: 32px; }
        #contents #main article#location .location-flex-box > .location-flex-box-txt01 > .txt, #contents #main section#location .location-flex-box > .location-flex-box-txt01 > .txt {
          font-size: 16px;
          line-height: 32px;
          margin-top: 10px;
          margin-bottom: 30px; }
      #contents #main article#location .location-flex-box > .location-flex-box-txt02, #contents #main section#location .location-flex-box > .location-flex-box-txt02 {
        margin-top: 50px; }
  #contents #main article#design, #contents #main section#design {
    background-image: url(../img/top/top_layer02_sp.png);
    margin-top: 70px; }
    #contents #main article#design .title-box, #contents #main section#design .title-box {
      margin-bottom: 190px;
      align-items: flex-start; }
    #contents #main article#design .design-box, #contents #main section#design .design-box {
      margin: 75px auto 0;
      width: 100%; }
      #contents #main article#design .design-box-inner, #contents #main section#design .design-box-inner {
        margin-top: 80px; }
      #contents #main article#design .design-box-tree, #contents #main section#design .design-box-tree {
        margin-top: 50px; }
      #contents #main article#design .design-box-img, #contents #main section#design .design-box-img {
        margin-top: 47px; }
    #contents #main article#design .design-section-text, #contents #main section#design .design-section-text {
      justify-content: flex-start; }
  #contents #main article#plan, #contents #main section#plan {
    background-image: url(../img/top/top_layer03_sp.png);
    background-position: top;
    background-size: contain;
    margin-top: 90px; }
    #contents #main article#plan .title-box, #contents #main section#plan .title-box {
      margin-bottom: 90px;
      align-items: flex-start; }
    #contents #main article#plan .plan-flex-box, #contents #main section#plan .plan-flex-box {
      width: 95%; }
  #contents #main article#access, #contents #main section#access {
    background-image: url(../img/top/top_layer04_sp.png);
    margin-top: 110px; }
    #contents #main article#access .title-box, #contents #main section#access .title-box {
      margin-bottom: 100px;
      align-items: flex-start; }
    #contents #main article#access .access-box, #contents #main section#access .access-box {
      margin-top: 80px; }
      #contents #main article#access .access-box-wrap, #contents #main section#access .access-box-wrap {
        width: 90%;
        margin: 0 auto; }
      #contents #main article#access .access-box-inner, #contents #main section#access .access-box-inner {
        margin-top: 35px; }
      #contents #main article#access .access-box-readmore, #contents #main section#access .access-box-readmore {
        width: 90%;
        margin: 0 auto; }
        #contents #main article#access .access-box-readmore > div, #contents #main section#access .access-box-readmore > div {
          width: 90%; }
          #contents #main article#access .access-box-readmore > div.readmore-area, #contents #main section#access .access-box-readmore > div.readmore-area {
            width: 320px; }
    #contents #main article#access .access-section-text, #contents #main section#access .access-section-text {
      justify-content: center; }
  #contents #main article#quality, #contents #main section#quality {
    background-image: url(../img/top/top_layer05_sp.png);
    background-position: top;
    background-size: contain;
    margin-top: 90px;
    padding-bottom: 140px; }
    #contents #main article#quality .title-box, #contents #main section#quality .title-box {
      margin-bottom: 210px;
      align-items: flex-start; }
    #contents #main article#quality .quality-flex-box, #contents #main section#quality .quality-flex-box {
      width: 95%; }
      #contents #main article#quality .quality-flex-box > .readmore-area, #contents #main section#quality .quality-flex-box > .readmore-area {
        margin-top: 55px;
        width: 550px; } }

/*# sourceMappingURL=top.css.map */
