@charset "UTF-8";
img,
.index-page .photo {
  max-width: 100%; }

/* =========================================================
メインビジュアル
========================================================= */
.arcline .photo {
  background: url(/project/img/arcline/mainv_arcline.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

@media screen and (max-width: 420px) {
  .arcline .photo {
    background: url(/project/img/arcline/mainv_arcline.jpg) center center no-repeat;
    background-size: cover; } }

.intelligent .photo {
  background: url(/project/img/intelligent/mainv_intelligent.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

.end_limit {
  font-size: 32px;
  letter-spacing: 0.1em;
  margin: 30px auto 0;
  text-align: center; }
  .end_limit a {
    text-decoration: underline;
    font-weight: 500; }
  @media screen and (max-width: 765px) {
    .end_limit {
      font-size: 25px;
      width: 90%; } }

@media screen and (max-width: 420px) {
  .intelligent .photo {
    background: url(/project/img/intelligent/mainv_intelligent.jpg) center center no-repeat;
    background-size: cover; } }

.marketing .photo {
  background: url(/project/img/marketing/mainv_pc.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

@media screen and (max-width: 420px) {
  .marketing .photo {
    background: url(/project/img/marketing/mainv_sp.jpg) center center no-repeat;
    background-size: cover; } }

.motogp .photo {
  background: url(/project/img/motogp/mainv_pc.jpg) center center no-repeat;
  background-size: cover; }

@media screen and (max-width: 420px) {
  .motogp .photo {
    background: url(/project/img/motogp/mainv_sp.jpg) center center no-repeat;
    background-size: cover; } }

.philosophy .photo {
  background: url(/project/img/philosophy/mainv_pc.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

@media screen and (max-width: 420px) {
  .philosophy .photo {
    background: url(/project/img/philosophy/mainv_sp.jpg) center center no-repeat;
    background-size: cover; } }

.nsx .photo {
  background: url(/project/nsx/img/mainv_pc.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

@media screen and (max-width: 420px) {
  .nsx .photo {
    background: url(/project/nsx/img/mainv_sp.jpg) center center no-repeat;
    background-size: cover; } }

.inomata_mainv .nsx .photo {
  background: url(/project/nsx/img/mainv_inomata.jpg) center center no-repeat;
  background-size: cover;
  /*
			.photo-bg{
				background:none;
			}
*/ }

@media screen and (max-width: 420px) {
  .inomata_mainv .nsx .photo {
    background: url(/project/nsx/img/mainv_inomata.jpg) center center no-repeat;
    background-size: cover; } }

.mainv_intelligent .photo {
  background: url(/project/nsx/img/mainv_intelligent.jpg) center center no-repeat;
  background-size: cover; }

.tsukamotomainv .nsx .photo {
  background: url(/project/nsx/img/mainv_tsukamoto.jpg) center center no-repeat;
  background-size: cover; }

.michisitamainv .nsx .photo {
  background: url(/project/nsx/img/mainv_michishita.jpg) center center no-repeat;
  background-size: cover; }

.nsx .photo {
  background: url(/project/nsx/img/mainv_pc.jpg) center center no-repeat;
  background-size: cover; }

@media screen and (max-width: 420px) {
  .nsx .photo {
    background: url(/project/nsx/img/mainv_sp.jpg) center center no-repeat;
    background-size: cover; } }

.electric .photo {
  background: url(/project/img/electric/mainv_pc.jpg) center center no-repeat;
  background-size: cover;
  /*
		.photo-bg{
			background:none;
		}
*/ }

@media screen and (max-width: 420px) {
  .electric .photo {
    background: url(/project/img/electric/mainv_pc.jpg) center center no-repeat;
    background-size: cover; } }

.challenge .photo {
  background: url(/project/img/challenge/mainv_pc.jpg) center center no-repeat;
  background-size: cover; }

@media screen and (max-width: 420px) {
  .challenge .photo {
    background: url(/project/img/challenge/mainv_pc.jpg) center center no-repeat;
    background-size: cover; } }

.nsx .photo .photo-bg {
  background: url(/cmn/img/base/bg_dot_gray.png) repeat; }

.index-page .photo {
  background: url(/project/img/index/mainv_pc.jpg) center center no-repeat;
  background-size: cover; }
  .index-page .photo .photo-bg {
    background: url(/cmn/img/base/bg_dot_gray.png) repeat; }

@media screen and (max-width: 420px) {
  .index-page .photo {
    background: url(/project/img/index/mainv_pc.jpg) center center no-repeat;
    background-size: cover; } }

/* =========================================================
コンテンツ
========================================================= */
.project .mainv .project-title {
  position: absolute;
  width: 100%;
  line-height: 1.1;
  color: #fff;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .project .mainv .project-title .title {
    font-size: 4.625em;
    /*
    				&:after {
    					content: " ";
    					display: block;
    					width: 10px;
    					height: 2px;
    					background: #fff;
    					margin: 14px auto 24px;
    				}
    */ }
    .project .mainv .project-title .title:before {
      content: " ";
      display: block;
      width: 10px;
      height: 2px;
      background: #fff;
      margin: 0 auto 10px; }
  .project .mainv .project-title p {
    font-family: "Josefin Sans", "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",           "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",           sans-serif;
    font-size: 0.95em;
    margin-bottom: 0.6em;
    font-weight: 300; }
    .project .mainv .project-title p:last-child {
      font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",             "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",             sans-serif; }
    .project .mainv .project-title p strong {
      font-size: 2.2em;
      font-family: "Josefin Sans", "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",             "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",             sans-serif; }
    .project .mainv .project-title p:last-child:after {
      content: " ";
      display: block;
      width: 10px;
      height: 2px;
      background: #fff;
      margin: 23px auto 24px; }

.project .mainv .inner {
  max-width: 1200px;
  padding: 70px 0;
  margin: 0 auto;
  overflow: hidden;
  text-align: center; }
  .project .mainv .inner p {
    font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",           "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",           sans-serif; }
  .project .mainv .inner strong {
    font-size: 3.1em;
    font-weight: bold;
    line-height: 1.32; }

.project .sec-list {
  border-top: 2px solid #000;
  width: 100%;
  display: block;
  transition: 0.7s; }
  .project .sec-list .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 70px 5% 45px; }
    .project .sec-list .inner .sp-br {
      display: none; }
  .project .sec-list .row {
    overflow: hidden; }
    .project .sec-list .row .col-title {
      width: 30%;
      float: left;
      padding-right: 50px;
      box-sizing: border-box; }
      .project .sec-list .row .col-title h2 {
        line-height: 1.3;
        font-weight: 500;
        font-size: 3.125em;
        font-weight: 600; }
    .project .sec-list .row .col-txt {
      width: 70%;
      float: left;
      font-size: 0.95em;
      line-height: 1.78;
      box-sizing: border-box; }
      .project .sec-list .row .col-txt .name {
        margin: 3em 0;
        line-height: 1.2; }
        .project .sec-list .row .col-txt .name:after {
          content: " ";
          display: inline-block;
          width: 10px;
          height: 2px;
          background: #000;
          margin: 0px auto; }
        .project .sec-list .row .col-txt .name h3 {
          font-size: 36px;
          font-weight: bold; }
        .project .sec-list .row .col-txt .name p {
          font-size: 0.85em;
          margin-bottom: 0.5em;
          font-family: "Josefin Sans", "NotoSansCJKjp-Jxck",               "Noto Sans CJK JP", "Noto Sans", "Noto Sans Japanese",               "Helvetica Neue", "YuGothic", "游ゴシック", sans-serif; }
      .project .sec-list .row .col-txt p {
        margin-bottom: 1.5em;
        line-height: 1.6;
        font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP", "Noto Sans",             "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",             sans-serif; }
      .project .sec-list .row .col-txt strong {
        font-size: 1.875em;
        font-weight: bold;
        line-height: 1.6; }
      .project .sec-list .row .col-txt .col-box {
        margin-bottom: 70px; }
        .project .sec-list .row .col-txt .col-box h3 {
          font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",               "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",               sans-serif;
          line-height: 1.2;
          font-size: 30px;
          font-weight: 700;
          margin-bottom: 0; }
          .project .sec-list .row .col-txt .col-box h3 .br-sp {
            display: block; }
        .project .sec-list .row .col-txt .col-box .scene {
          font-size: 0.875em;
          margin: 4px 0 3em;
          line-height: 1.2;
          font-weight: 400;
          font-family: "Josefin Sans", "NotoSansCJKjp-Jxck",               "Noto Sans CJK JP", "Noto Sans", "Noto Sans Japanese",               "Helvetica Neue", "YuGothic", "游ゴシック", sans-serif; }
  .project .sec-list .another-link .col-txt ul {
    margin: 0 -15px; }
    .project .sec-list .another-link .col-txt ul li {
      box-sizing: border-box;
      float: left;
      width: 33.33333%;
      padding: 0 15px 15px; }
      .project .sec-list .another-link .col-txt ul li p {
        font-family: "Josefin Sans", "NotoSansCJKjp-Jxck",               "Noto Sans CJK JP", "Noto Sans Japanese", "Helvetica Neue",               "YuGothic", "游ゴシック", sans-serif;
        font-weight: 600;
        font-size: 1.45em !important;
        margin-bottom: 0 !important; }
  .project .sec-list .another-link .col-txt .btn-ac {
    background: #fff url(/cmn/img/base/arrow-down-b.svg) center bottom 15px no-repeat;
    background-size: 27px 14px;
    display: block;
    border: 1px solid #000;
    text-align: center;
    padding: 20px 0 40px; }
    .project .sec-list .another-link .col-txt .btn-ac .icon-arrow {
      display: block; }
      .project .sec-list .another-link .col-txt .btn-ac .icon-arrow:before {
        width: 90% !important; }
    .project .sec-list .another-link .col-txt .btn-ac.active {
      background: #fff url(/cmn/img/base/arrow-up-b.svg) center bottom 15px no-repeat;
      background-size: 27px 14px; }

@media screen and (max-width: 420px) {
  .project .mainv .project-title .title.glotxtsml {
    font-size: 2.25em; } }

@media screen and (max-width: 420px) {
  .project .mainv .project-title .title {
    font-size: 6vw; } }

@media screen and (max-width: 420px) {
  .project .mainv .project-title .title {
    font-size: 2.625em; } }

@media screen and (max-width: 420px) {
  .project .mainv .project-title p {
    font-size: 12px; } }

@media screen and (max-width: 960px) {
  .project .mainv .inner {
    width: 90%;
    padding: 7% 0; } }

@media screen and (max-width: 1200px) {
  .project .mainv .inner strong {
    font-size: 2.8em; } }

@media screen and (max-width: 960px) {
  .project .mainv .inner strong {
    font-size: 2.5em; } }

@media screen and (max-width: 420px) {
  .project .mainv .inner strong {
    font-size: 1.4em; } }

@media screen and (min-width: 961px) {
  .project .mainv .inner strong .sp-br {
    display: none; } }

@media screen and (max-width: 420px) {
  .project .sec-list .inner p {
    text-align: left; }
  .project .sec-list .inner br {
    display: none; }
  .project .sec-list .inner .sp-br {
    display: block; } }

@media screen and (max-width: 420px) {
  .project .sec-list .inner {
    width: 90%;
    padding: 7% 0; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-title {
    padding-right: 0px;
    margin-bottom: 5%; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-title h2 {
    font-size: 1.6em;
    margin-bottom: 0.3em; } }

@media screen and (min-width: 961px) {
  .project .sec-list .row .col-title h2:after {
    content: " ";
    display: block;
    width: 10px;
    height: 2px;
    background: #000;
    margin: 20px 0 30px; } }

@media screen and (max-width: 960px) {
  .project .sec-list .row .col-title {
    width: 100%;
    float: none;
    text-align: center; }
    .project .sec-list .row .col-title p {
      word-break: keep-all; }
      .project .sec-list .row .col-title p br {
        display: none; }
    .project .sec-list .row .col-title:after {
      content: " ";
      display: block;
      width: 10px;
      height: 2px;
      background: #000;
      margin: 20px auto; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt .name {
    text-align: center; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt .name p {
    text-align: center; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt strong {
    font-size: 1.4em;
    line-height: 1.32; } }

@media screen and (max-width: 960px) {
  .project .sec-list .row .col-txt {
    width: 100%;
    float: none; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt .col-box h3 {
    font-size: 1.4em;
    line-height: 1.32; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt .col-box h3 {
    text-align: center; } }

@media screen and (max-width: 420px) {
  .project .sec-list .row .col-txt .col-box .scene {
    text-align: center; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-title h2 br {
    display: none; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-title {
    margin-bottom: 20px; }
    .project .sec-list .another-link .col-title:after {
      display: none; } }

@media screen and (max-width: 420px) {
  .project .sec-list .another-link .col-txt ul {
    margin: 0 -2.5%; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-txt ul li {
    width: 50%;
    padding: 0 2.5% 5%; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-txt ul li {
    width: 100%;
    padding: 0 2.5% 5%;
    height: auto !important;
    text-align: center; }
    .project .sec-list .another-link .col-txt ul li img {
      width: 100%;
      height: auto; } }

@media screen and (max-width: 1300px) {
  .project .sec-list .another-link .col-txt ul li p {
    font-size: 1.5vw !important; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-txt ul li p {
    font-size: 3vw !important; } }

@media screen and (max-width: 960px) {
  .project .sec-list .another-link .col-txt ul li p {
    font-size: 4vw !important;
    margin-top: 5px; } }

@media screen and (max-width: 420px) {
  .project .sec-list .another-link .col-txt ul li p {
    font-size: 1.35em !important; } }

@media screen and (min-width: 421px) {
  .project .sec-list .another-link .col-txt .btn-ac {
    display: none; } }

@media screen and (max-width: 420px) {
  .project .sec-list .another-link .col-txt .inner-ac {
    display: none;
    padding-top: 20px; } }

@media screen and (max-width: 420px) {
  .project .sec-title p {
    text-align: center !important; } }

/* プロジェクトストーリー 一覧ページ
--------------------------------------------------------- */
.index-page .mainv .mainv-title {
  top: 50%; }
  .index-page .mainv .mainv-title h2 {
    font-size: 4.125em; }
    .index-page .mainv .mainv-title h2:after {
      margin: 10px auto 0; }

.index-page .mainv .inner > img {
  width: 458px;
  height: auto; }

@media screen and (max-width: 720px) {
  .index-page .mainv .mainv-title h2 {
    font-size: 2em; } }

@media screen and (max-width: 420px) {
  .index-page .mainv .mainv-title h2 {
    font-size: 1.8em; } }

.link-btn.icon-arrow {
  border: 1px solid #fff;
  width: 180px;
  height: 30px;
  margin: 22px auto 0;
  display: block;
  box-sizing: border-box;
  vertical-align: middle;
  position: relative; }

.link-btn.icon-arrow-new {
  border: 1px solid #fff;
  width: 180px;
  height: 30px;
  margin: 22px auto 0;
  display: block;
  box-sizing: border-box;
  vertical-align: middle;
  position: relative;
  line-height: 2em; }

.link-btn.icon-arrow:before {
  position: absolute;
  font-size: 0.5em;
  margin-right: 0;
  margin-left: 0;
  margin: 0 auto;
  top: 50%;
  left: 50%;
  display: block;
  transform: translateX(-25%) translateY(-80%) rotate(90deg) scale(0.6); }

.link-btn.icon-arrow-new:before {
  position: absolute;
  font-size: 0.5em;
  margin-right: 0;
  margin-left: 0;
  margin: 0 auto;
  top: 50%;
  left: 70%;
  display: block;
  transform: translateX(-25%) translateY(-80%) rotate(90deg) scale(0.6); }

@media screen and (max-width: 640px) {
  .link-btn.icon-arrow {
    width: 140px;
    margin: 20px auto 0; }
  .link-btn.icon-arrow-new {
    width: 140px;
    margin: 20px auto 0;
    line-height: 2em; } }

@media screen and (max-width: 640px) {
  .link-btn.icon-arrow:before {
    transform: translateX(-25%) translateY(-80%) rotate(90deg) scale(0.6); } }

@media screen and (max-width: 640px) {
  .link-btn.icon-arrow-new:before {
    transform: translateX(-25%) translateY(-80%) rotate(90deg) scale(0.6); } }

.index-page .top-sec-list ul {
  width: 100%;
  overflow: hidden;
  /*
		.sec-recruiting {
			background: url(/cmn/img/top/main-recruiting.jpg) center center no-repeat #000;
			background-size: cover;
			@media screen and (max-width: 640px) {
				background: url(/cmn/img/top/main-recruitingsp.jpg) center center no-repeat #000;
				background-size: cover;
			}
		}
*/ }
  .index-page .top-sec-list ul li {
    width: 50%;
    height: 630px;
    display: block;
    float: left;
    overflow: hidden;
    margin: 0;
    box-sizing: border-box; }
    .index-page .top-sec-list ul li a {
      display: block;
      background: transparent;
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      padding: 90px 30px 30px 30px;
      line-height: 1.8;
      vertical-align: middle;
      text-align: center;
      color: #fff; }
      .index-page .top-sec-list ul li a .sec-txt h3 {
        font-size: 4vw;
        font-weight: normal;
        font-weight: 400;
        line-height: 1.2;
        letter-spacing: 0.075em;
        margin: -1px auto 0; }
      .index-page .top-sec-list ul li a .sec-txt p {
        font-size: 0.85em;
        font-weight: normal;
        letter-spacing: 0.08em;
        font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",               "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",               sans-serif; }
        .index-page .top-sec-list ul li a .sec-txt p:after {
          content: " ";
          display: block;
          width: 12px;
          height: 2px;
          background: #fff;
          margin: 15px auto 2px;
          text-align: center; }
        .index-page .top-sec-list ul li a .sec-txt p:first-child {
          font-size: 0.938em;
          font-weight: 300; }
          .index-page .top-sec-list ul li a .sec-txt p:first-child:after {
            content: " ";
            display: block;
            width: 12px;
            height: 2px;
            background: #fff;
            margin: 15px auto 14px;
            text-align: center; }
  .index-page .top-sec-list ul .sec-story01 {
    background: url(/project/img/index/sec-motogp.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story02 {
    background: url(/project/img/index/sec-nsx.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story03 {
    background: url(/project/img/index/sec-ai.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story04 {
    background: url(/project/img/index/sec-globalsales.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story05 {
    background: url(/project/img/index/sec-philosophy.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story06 {
    background: url(/project/img/index/sec-arc.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story06_l {
    background: url(/project/img/index/sec-arc_l.jpg) center bottom no-repeat #000;
    background-size: auto 100%;
    width: 100%; }
  .index-page .top-sec-list ul .sec-story07 {
    background: url(/project/img/index/sec-ele.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story07_l {
    background: url(/project/img/index/sec-ele_l.jpg) center bottom no-repeat #000;
    background-size: auto 100%;
    width: 100%; }
  .index-page .top-sec-list ul .sec-story08 {
    background: url(/project/img/index/sec-challenge.jpg) center bottom no-repeat #000;
    background-size: 100% auto; }
  .index-page .top-sec-list ul .sec-story08_l {
    background: url(/project/img/index/sec-challenge_l.jpg) center bottom no-repeat #000;
    background-size: auto 100%;
    width: 100%; }

.index-page footer {
  border-top: none; }

@media screen and (max-width: 960px) {
  .index-page .top-sec-list ul li {
    height: 480px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li {
    width: 100%;
    float: none;
    margin: 2% 0 0 0;
    height: 460px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a {
    padding: 16% 15px 0; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a .sec-txt h3 {
    font-size: 2em;
    margin: 0px auto 5px; } }

@media screen and (max-width: 420px) {
  .index-page .top-sec-list ul li a .sec-txt h3 {
    font-size: 1.8em; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a .sec-txt p {
    font-size: 12px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a .sec-txt p:after {
    margin: 15px auto 19px;
    width: 10px;
    height: 1px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a .sec-txt p:first-child {
    font-size: 12px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li a .sec-txt p:first-child:after {
    margin: 13px auto 16px;
    width: 10px;
    height: 1px; } }

@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul li:nth-child(even) {
    margin: 10px 0 0 0; } }

/* sec-story-l SP用 */
@media screen and (max-width: 640px) {
  .index-page .top-sec-list ul .sec-story07_l {
    background: url(/project/img/index/sec-ele.jpg) center bottom no-repeat #000;
    background-size: auto 100%;
    width: 100%; }
  .index-page .top-sec-list ul .sec-story08_l {
    background: url(/project/img/index/sec-challenge.jpg) center bottom no-repeat #000;
    background-size: auto 100%;
    width: 100%; } }

@media screen and (max-width: 640px) {
  .index-page footer {
    padding-top: 0; } }

/* NSX 一覧ページ
--------------------------------------------------------- */
.nsx .mainv .project-title {
  transform: translate(-50%, -120%); }
  .nsx .mainv .project-title h2 {
    font-size: 4.125em; }
    .nsx .mainv .project-title h2:after {
      margin: 10px auto 0; }

.nsx .mainv .inner {
  padding: 70px 0 60px; }
  .nsx .mainv .inner p {
    font-family: "NotoSansCJKjp-Jxck", "Noto Sans CJK JP",           "Noto Sans Japanese", "Helvetica Neue", "YuGothic", "游ゴシック",           sans-serif; }
  .nsx .mainv .inner > img {
    width: 458px;
    height: auto;
    margin-top: 34px; }

.nsx .sec-list {
  width: 100%;
  margin: 0 auto 120px;
  display: block; }
  .nsx .sec-list .title {
    text-align: center;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    padding: 35px 0;
    line-height: 1.1; }
    .nsx .sec-list .title h3 {
      font-size: 3.125em;
      font-weight: 500; }
    .nsx .sec-list .title p {
      font-size: 1em;
      margin-top: 10px; }
  .nsx .sec-list ul {
    width: 100%;
    max-width: 1200px;
    margin: 70px auto 0;
    overflow: hidden; }
    .nsx .sec-list ul li {
      display: block;
      float: left;
      width: 32%;
      margin: 0 0 0 2%;
      text-align: center; }
      .nsx .sec-list ul li a {
        width: 90%;
        height: 100%;
        display: block;
        margin: 0 auto; }
        .nsx .sec-list ul li a img {
          width: 100%;
          height: auto; }
        .nsx .sec-list ul li a .sec-txt {
          line-height: 1.1;
          margin-top: 30px;
          font-size: 1em;
          font-weight: 500; }
          .nsx .sec-list ul li a .sec-txt h4 {
            font-size: 1.625em;
            line-height: 1.35;
            font-weight: 600; }
          .nsx .sec-list ul li a .sec-txt p {
            font-size: 0.875em;
            margin-top: 10px; }
          .nsx .sec-list ul li a .sec-txt:before {
            content: " ";
            display: block;
            width: 10px;
            height: 2px;
            background: #000;
            margin: 0 auto 20px; }
          .nsx .sec-list ul li a .sec-txt:after {
            content: " ";
            display: block;
            width: 10px;
            height: 2px;
            background: #000;
            margin: 20px auto 0; }
      .nsx .sec-list ul li:first-child {
        margin: 0; }

@media screen and (max-width: 640px) {
  .nsx .mainv .project-title {
    transform: translate(-50%, -70%); } }

@media screen and (max-width: 640px) {
  .nsx .mainv .project-title h2 {
    font-size: 2.625em; } }

@media screen and (max-width: 640px) {
  .nsx .mainv .inner p {
    text-align: left; } }

@media screen and (max-width: 640px) {
  .nsx .mainv .inner p br {
    display: none; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list {
    margin-bottom: 0; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list .title {
    border-top: 6px solid #000;
    border-bottom: 6px solid #000; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list .title h3 {
    font-size: 2em; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list ul {
    margin: 10% auto 0; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list ul li {
    width: 100%;
    float: none;
    padding: 0;
    margin: 70px 0 0 0; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list ul li li:first-child {
    width: 100%;
    float: none;
    padding: 0 5%;
    margin: 0 0 0 0; } }

@media screen and (max-width: 960px) {
  .nsx .sec-list ul li a .sec-txt h4 {
    font-size: 3vw; } }

@media screen and (max-width: 640px) {
  .nsx .sec-list ul li a .sec-txt h4 {
    font-size: 1.7em; } }

@media screen and (max-width: 420px) {
  #project-lonav .another-link .col-title h2 {
    display: none; } }

.project_touji {
  font-size: 12px; }

/*# sourceMappingURL=project.map */