@charset "UTF-8";
/* --------------------------------------------------
* common styles
*/
a,
a img {
  text-decoration: none;
  -webkit-transition: opacity 500ms ease;
  transition: opacity 500ms ease;
}

a:hover,
a img:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

a.disabled,
a img.disabled {
  pointer-events: none;
  opacity: 0.4;
  filter: alpha(opacity=40);
}

a[href^="tel:"] {
  pointer-events: none;
}

.font-sans {
  font-family: 'Noto Sans JP','ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','游ゴシック',YuGothic,'メイリオ',Meiryo,sans-serif;
}

.preload * {
  -webkit-transition: none !important;
  transition: none !important;
}

/* --------------------------------------------------
* layout, common parts
*/
.pc {
  display: block;
}

.sp {
  display: none;
}

.wrap {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}

.all-wrapper {
  overflow: hidden;
}

.inner-wrapper {
  position: relative;
  width: 720px;
  margin: 0 auto;
}

.contents .js-section {
  width: 100%;
  height: 100vh;
}

.contents .section-content {
  height: 100%;
  margin: 0 auto;
}

.contents .cmn-section .title {
  position: relative;
  font-size: 68px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.06em;
  text-align: center;
}

.contents .cmn-section .title:before {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  width: 76px;
  height: 109px;
  background: url("../img/sec_ttl_frame01.png") no-repeat top center;
  background-size: cover;
}

.contents .cmn-section .title:after {
  content: "";
  position: absolute;
  bottom: -20px;
  right: 0;
  width: 76px;
  height: 109px;
  background: url("../img/sec_ttl_frame02.png") no-repeat top center;
  background-size: cover;
}

.contents .cmn-section .lead {
  font-size: 22px;
  line-height: 2.1;
  letter-spacing: 0.1em;
  text-align: center;
}

/* --------------------------------------------------
* site-header
*/
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  font-size: 0;
  z-index: 1000;
}

.site-header .wrap {
  margin: 50px auto 0;
}

.site-header .logo {
  display: inline-block;
  vertical-align: middle;
  max-width: 183px;
  margin-right: 50px;
}

.site-header .header-nav {
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
}

.site-header .header-nav li {
  display: inline-block;
  vertical-align: middle;
  max-width: 42px;
  margin-right: 14px;
}

.site-header .header-nav li:nth-of-type(4) {
  margin-right: 0;
}

.site-header .header-nav li:last-of-type {
  max-width: 107px;
  margin-right: 0;
  margin-left: 20px;
}

.site-header .header-nav li .mailgo {
  display: block;
  cursor: pointer;
}

/* --------------------------------------------------
* footer
*/
.site-footer {
  height: auto !important;
  background: #3C4045;
}

.site-footer .section-content > .wrap {
  padding: 21px 0 25px;
}

.site-footer .inner-wrapper {
  font-size: 0;
}

.site-footer .inner-wrapper .logo,
.site-footer .inner-wrapper .tel,
.site-footer .inner-wrapper .copyright {
  display: inline-block;
  vertical-align: middle;
}

.site-footer .inner-wrapper .logo {
  margin-right: 42px;
}

.site-footer .inner-wrapper .tel {
  margin-right: 46px;
  font-size: 17px;
  letter-spacing: 0.02em;
}

.site-footer .inner-wrapper .copyright {
  font-size: 17px;
}

#fp-nav {
  position: fixed;
  top: 2.1vh;
  top: 50.5vh;
  z-index: 1000;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

#fp-nav.right {
  right: 36px;
}

#fp-nav ul li {
  width: auto;
  height: auto;
  margin: auto;
}

#fp-nav ul li a {
  display: block;
  width: 18px;
  /*height: 140px;*/
  height: 13vh;
  margin-bottom: 0.9vh;
  background: #9FACBA;
}

#fp-nav ul li a span {
  display: none;
}

/* --------------------------------------------------
* side-nav
*/
.side-nav {
  /*ul {
    position: fixed;
    top: 2.1vh;
    right: 36px;
    z-index: 1000;

    li {
      a {
        display: block;
        width: 18px;
        height: 13vh;
        margin-bottom: 0.9vh;
        background: #9FACBA;
      }
    }
  }*/
}

.side-nav .bg {
  position: fixed;
  top: 0;
  right: 0;
  width: 14.03%;
  max-width: 200px;
  height: 100%;
  z-index: 800;
  mix-blend-mode: multiply;
}

/* --------------------------------------------------
* contents
*/
.contents .cmn-section,
.contents .section06,
.contents .section07,
.contents .site-footer {
  position: relative;
}

.contents .cmn-section:before,
.contents .section06:before,
.contents .section07:before,
.contents .site-footer:before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 625px);
  width: 6px;
  height: 100%;
  z-index: 10;
}

.contents .cmn-section:after,
.contents .section06:after,
.contents .section07:after,
.contents .site-footer:after {
  content: "";
  position: absolute;
  top: 0;
  right: calc(50% - 485px);
  width: 2px;
  height: 100%;
  z-index: 10;
}

.contents .main-visual {
  position: relative;
}

.contents .main-visual:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 625px);
  width: 6px;
  height: 72%;
  z-index: 10;
}

.contents .main-visual:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: calc(50% - 485px);
  width: 2px;
  height: 72px;
  z-index: 10;
}

.contents .main-visual .wrap {
  height: 100%;
}

.contents .main-visual .title {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-25%);
  transform: translateY(-25%);
}

.contents .main-visual .scroll {
  position: absolute;
  bottom: 85px;
  /*bottom: -(85 / 1080) * 100 + 0vh;*/
  right: calc(50% - 502px);
  width: 35px;
  height: 98px;
}

.contents .section01 .section-content > .wrap {
  height: 100%;
  padding: 278px 0 275px;
  padding: 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;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.contents .section01 .inner-wrapper {
  padding: 150px 0 145px;
}

.contents .section01 .inner-wrapper:before, .contents .section01 .inner-wrapper:after {
  content: "";
  position: absolute;
  width: 500%;
  height: 4px;
}

.contents .section01 .inner-wrapper:before {
  bottom: -4px;
  right: 100%;
}

.contents .section01 .inner-wrapper:after {
  top: -4px;
  left: 100%;
}

.contents .section01 .inner-wrapper .title-area .title {
  margin-bottom: 40px;
  font-size: 56px;
  line-height: 1.4;
  text-align: center;
  color: #1A1311;
}

.contents .section01 .inner-wrapper .title-area .title::before, .contents .section01 .inner-wrapper .title-area .title::after {
  display: none;
}

.contents .section01 .inner-wrapper .title-area .lead {
  font-size: 38px;
  font-weight: 700;
  line-height: 1.36;
  letter-spacing: 0.06em;
  text-align: center;
}

.contents .section02 .section-content > .wrap {
  height: 100%;
  padding: 220px 0 215px;
  padding: 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;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.contents .section02 .inner-wrapper .title {
  margin-bottom: 60px;
  letter-spacing: 0.04em;
}

.contents .section02 .inner-wrapper .title::before, .contents .section02 .inner-wrapper .title::after {
  display: none;
}

.contents .section02 .inner-wrapper .lead + .lead {
  margin-top: 50px;
}

.contents .section03 {
  background: #3C4045;
}

.contents .section03 .section-content > .wrap {
  padding: 180px 0 105px;
  height: 100%;
  padding: 100px 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;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.contents .section03 .inner-wrapper .title {
  margin-bottom: 90px;
}

.contents .section03 .inner-wrapper .detail-area li {
  margin-bottom: 60px;
}

.contents .section03 .inner-wrapper .detail-area li:last-of-type {
  margin-bottom: 0;
}

.contents .section03 .inner-wrapper .detail-area .detail-title {
  font-size: 36px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.06em;
  text-align: center;
}

.contents .section03 .inner-wrapper .detail-area .detail-title:after {
  content: "";
  display: block;
  width: 107px;
  height: 4px;
  margin: 25px auto 22px;
}

.contents .section03 .inner-wrapper .detail-area .lead {
  line-height: 1.6;
}

.contents .section05 {
  min-height: 100vh;
}

.contents .section06 {
  background: #3C4045;
}

.contents .section06 .section-content > .wrap {
  padding: 145px 0 160px;
}

.contents .section06 .inner-wrapper .title {
  margin-bottom: 60px;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}

.contents .section06 .inner-wrapper .detail-area {
  margin-bottom: 100px;
}

.contents .section06 .inner-wrapper .detail-area dl {
  padding-bottom: 7px;
  margin-bottom: 25px;
  font-size: 0;
  border-bottom: 1px solid #FFFFFF;
}

.contents .section06 .inner-wrapper .detail-area dl:nth-of-type(2) {
  border-bottom: none;
}

.contents .section06 .inner-wrapper .detail-area dl:nth-of-type(3) {
  padding-top: 26px;
  border-top: 1px solid #FFFFFF;
}

.contents .section06 .inner-wrapper .detail-area dl:last-of-type {
  margin-bottom: 0;
}

.contents .section06 .inner-wrapper .detail-area dt,
.contents .section06 .inner-wrapper .detail-area dd {
  display: inline-block;
  vertical-align: top;
  font-size: 20px;
  line-height: 1.4;
}

.contents .section06 .inner-wrapper .detail-area dt {
  width: 115px;
}

.contents .section06 .inner-wrapper .detail-area dd {
  width: 605px;
}

.contents .section06 .inner-wrapper .map {
  width: 720px;
  height: 365px;
  margin-bottom: 50px;
}

.contents .section06 .inner-wrapper .map iframe {
  width: 100%;
  height: 100%;
}

.contents .section06 .inner-wrapper .contact-area {
  font-size: 0;
  background: #FFFFFF;
}

.contents .section06 .inner-wrapper .contact-area .text-block,
.contents .section06 .inner-wrapper .contact-area .button-block {
  display: inline-block;
  vertical-align: middle;
}

.contents .section06 .inner-wrapper .contact-area .text-block {
  padding: 65px 30px 58px;
  color: #3C4045;
  border-right: 3px solid #3C4045;
}

.contents .section06 .inner-wrapper .contact-area .text-block .title {
  margin-bottom: 8px;
  font-weight: 400;
  text-align: center;
}

.contents .section06 .inner-wrapper .contact-area .text-block .title .jp {
  display: block;
  margin-bottom: 3px;
  font-size: 25px;
  letter-spacing: 0.08em;
}

.contents .section06 .inner-wrapper .contact-area .text-block .title .en {
  display: block;
  font-size: 16px;
}

.contents .section06 .inner-wrapper .contact-area .text-block .title:after {
  content: "";
  display: inline-block;
  width: 107px;
  height: 4px;
  margin: 13px auto;
}

.contents .section06 .inner-wrapper .contact-area .text-block .lead {
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.01em;
  text-align: center;
}

.contents .section06 .inner-wrapper .contact-area .button-block {
  padding: 55px 59px 58px;
}

.contents .section06 .inner-wrapper .contact-area .button-block .tel {
  margin-bottom: 50px;
  font-size: 31px;
  text-align: center;
}

.contents .section06 .inner-wrapper .contact-area .button-block .button {
  width: 280px;
  margin: 0 auto;
}

.contents .section06 .inner-wrapper .contact-area .button-block .button a {
  display: block;
  padding: 30px 55px;
  font-size: 21px;
  letter-spacing: 0.03em;
  color: #FFFFFF;
  border-radius: 9px;
}

.contents .section06 .inner-wrapper .contact-area .button-block .button a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 9px;
  width: 28px;
  height: 28px;
  background: url("../img/icn_contact.png") no-repeat top center;
  background-size: cover;
}

.contents .section06 .inner-wrapper .contact-area .button-block .button .mailgo {
  display: block;
  cursor: pointer;
}

.contents .section07 .upper .wrap {
  padding: 145px 0 130px;
}

.contents .section07 .lower .wrap {
  padding: 80px 0 100px;
}

.contents .section07 .inner-wrapper .title {
  margin-bottom: 60px;
  font-size: 40px;
  font-weight: 400;
  text-align: center;
}

.contents .section07 .inner-wrapper .detail-area dl {
  padding-bottom: 7px;
  margin-bottom: 28px;
  font-size: 0;
  border-bottom: 1px solid #FFFFFF;
}

.contents .section07 .inner-wrapper .detail-area dl:last-of-type {
  margin-bottom: 0;
}

.contents .section07 .inner-wrapper .detail-area dl dt,
.contents .section07 .inner-wrapper .detail-area dl dd {
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  letter-spacing: 0.03em;
}

.contents .section07 .inner-wrapper .detail-area dl dt {
  width: 670px;
}

.contents .section07 .inner-wrapper .detail-area dl dd {
  width: 50px;
  text-align: right;
}

.contents .section07 .inner-wrapper .button {
  max-width: 720px;
  margin: 0 auto;
}

.contents.is-short .section02 .section-content > .wrap {
  padding: 100px 0;
}

@media all and (-ms-high-contrast: none) {
  .contents .section01 .section-content > .wrap,
  .contents .section02 .section-content > .wrap,
  .contents .section03 .section-content > .wrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

@media screen and (max-width: 1920px) and (min-width: 1621px) {
  .side-nav .bg {
    max-width: 300px;
  }
}

@media screen and (max-width: 1620px) and (min-width: 1421px) {
  .side-nav .bg {
    max-width: 200px;
  }
}

@media screen and (max-width: 1420px) and (min-width: 1221px) {
  .side-nav .bg {
    max-width: 100px;
  }
}

@media screen and (max-width: 1220px) and (min-width: 1024px) {
  .wrap {
    width: 90%;
  }
  #fp-nav.right {
    right: 14px;
  }
  #fp-nav ul li a {
    width: 12px;
  }
  .side-nav {
    /*ul {
      right: 14px;

      li {
        a {
          width: 12px;
        }
      }
    }*/
  }
  .side-nav .bg {
    max-width: 40px;
  }
  .contents .cmn-section:before,
  .contents .section06:before,
  .contents .section07:before,
  .contents .site-footer:before {
    left: 25px;
  }
  .contents .cmn-section:after,
  .contents .section06:after,
  .contents .section07:after,
  .contents .site-footer:after {
    right: 70px;
  }
  .contents .main-visual:before {
    left: 25px;
  }
  .contents .main-visual:after {
    right: 70px;
  }
  .contents .main-visual .scroll {
    right: 50px;
  }
}

@media screen and (max-width: 1024px) and (min-width: 641px) {
  /* --------------------------------------------------
* layout, common parts
*/
  .wrap {
    width: 90%;
  }
  .inner-wrapper {
    width: 85%;
  }
  .contents .cmn-section:before,
  .contents .section06:before,
  .contents .section07:before,
  .contents .site-footer:before {
    left: 20px;
  }
  .contents .cmn-section:after,
  .contents .section06:after,
  .contents .section07:after,
  .contents .site-footer:after {
    right: 75px;
  }
  .contents .cmn-section .title {
    font-size: 48px;
  }
  .contents .cmn-section .title:before {
    width: 56px;
    height: 79px;
    background: url("../img/sec_ttl_frame01.png") no-repeat top center;
    background-size: 100% auto;
  }
  .contents .cmn-section .title:after {
    width: 56px;
    height: 79px;
    background: url("../img/sec_ttl_frame02.png") no-repeat top center;
    background-size: 100% auto;
  }
  .contents .cmn-section .lead {
    font-size: 16px;
  }
  #fp-nav.right {
    right: 20px;
  }
  #fp-nav ul li a {
    width: 12px;
  }
  /* --------------------------------------------------
* site-header
*/
  .site-header .wrap {
    margin: 30px auto 0;
  }
  .site-header .logo {
    max-width: 106px;
    margin-right: 24px;
  }
  .site-header .header-nav li {
    max-width: 25px;
  }
  .site-header .header-nav li:last-of-type {
    max-width: 68px;
  }
  /* --------------------------------------------------
* footer
*/
  .site-footer .inner-wrapper .copyright {
    margin-top: 5px;
  }
  /* --------------------------------------------------
* side-nav
*/
  .side-nav {
    /*ul {
    right: 20px;

    li {
      a {
        width: 12px;
      }
    }
  }*/
  }
  .side-nav .bg {
    width: 6.95%;
  }
  /* --------------------------------------------------
* contents
*/
  .contents .main-visual:before {
    left: 20px;
  }
  .contents .main-visual:after {
    right: 75px;
  }
  .contents .main-visual .scroll {
    bottom: 85px;
    right: 62px;
    width: 28px;
    height: 78px;
  }
  .contents .section01 .inner-wrapper .title-area .title {
    margin-bottom: 30px;
    font-size: 48px;
  }
  .contents .section01 .inner-wrapper .title-area .lead {
    font-size: 28px;
  }
  .contents .section02 .section-content > .wrap {
    padding: 280px 0 265px;
  }
  .contents .section02 .inner-wrapper .title {
    margin-bottom: 40px;
  }
  .contents .section02 .inner-wrapper .lead + .lead {
    margin-top: 30px;
  }
  .contents .section03 .section-content > .wrap {
    padding: 180px 0 145px;
  }
  .contents .section03 .inner-wrapper .title {
    margin-bottom: 70px;
  }
  .contents .section03 .inner-wrapper .detail-area li {
    margin-bottom: 40px;
  }
  .contents .section03 .inner-wrapper .detail-area .detail-title {
    font-size: 30px;
  }
  .contents .section06 .section-content > .wrap {
    padding: 125px 0 130px;
  }
  .contents .section06 .inner-wrapper .title {
    margin-bottom: 40px;
    font-size: 30px;
  }
  .contents .section06 .inner-wrapper .detail-area {
    margin-bottom: 70px;
  }
  .contents .section06 .inner-wrapper .detail-area dl {
    margin-bottom: 20px;
  }
  .contents .section06 .inner-wrapper .detail-area dl:nth-of-type(3) {
    padding-top: 22px;
  }
  .contents .section06 .inner-wrapper .detail-area dt,
  .contents .section06 .inner-wrapper .detail-area dd {
    font-size: 16px;
  }
  .contents .section06 .inner-wrapper .detail-area dt {
    width: 15%;
  }
  .contents .section06 .inner-wrapper .detail-area dd {
    width: 85%;
  }
  .contents .section06 .inner-wrapper .map {
    width: 100%;
    height: 315px;
    margin-bottom: 30px;
  }
  .contents .section06 .inner-wrapper .contact-area .text-block {
    width: 45%;
    padding: 45px 20px 38px;
  }
  .contents .section06 .inner-wrapper .contact-area .text-block .title .jp {
    font-size: 20px;
  }
  .contents .section06 .inner-wrapper .contact-area .text-block .title .en {
    font-size: 14px;
  }
  .contents .section06 .inner-wrapper .contact-area .text-block .lead {
    font-size: 14px;
  }
  .contents .section06 .inner-wrapper .contact-area .button-block {
    width: 55%;
    padding: 35px 42px 38px;
  }
  .contents .section06 .inner-wrapper .contact-area .button-block .tel {
    margin-bottom: 30px;
    font-size: 26px;
  }
  .contents .section06 .inner-wrapper .contact-area .button-block .button {
    width: 230px;
  }
  .contents .section06 .inner-wrapper .contact-area .button-block .button a {
    padding: 30px 35px;
    font-size: 18px;
  }
  .contents .section06 .inner-wrapper .contact-area .button-block .button a:before {
    background: url("../img/icn_contact.png") no-repeat top center;
    background-size: 100% auto;
  }
  .contents .section07 .upper .wrap {
    padding: 120px 0 60px;
  }
  .contents .section07 .lower .wrap {
    padding: 60px 0 100px;
  }
  .contents .section07 .inner-wrapper .title {
    margin-bottom: 40px;
    font-size: 30px;
  }
  .contents .section07 .inner-wrapper .detail-area dl {
    margin-bottom: 20px;
  }
  .contents .section07 .inner-wrapper .detail-area dl dt,
  .contents .section07 .inner-wrapper .detail-area dl dd {
    font-size: 16px;
  }
  .contents .section07 .inner-wrapper .detail-area dl dt {
    width: 80%;
  }
  .contents .section07 .inner-wrapper .detail-area dl dd {
    width: 20%;
  }
  .contents .section07 .inner-wrapper .button {
    max-width: 440px;
  }
}

/* --------------------------------------------------
* wacoo
*/
/* --------------------------------------------------
* wacoo
*/
#wacoo {
  /* --------------------------------------------------
  * site-header
  */
  /* --------------------------------------------------
  * footer
  */
  /* --------------------------------------------------
  * side-nav
  */
  /* --------------------------------------------------
  * contents
  */
}

#wacoo .site-header .logo {
  max-width: 199px;
}

#wacoo .site-footer {
  color: #FF0000;
}

#wacoo .site-footer .logo {
  max-width: 66px;
}

#wacoo #fp-nav ul li a.active {
  background: #C61616;
}

#wacoo .side-nav {
  /*ul {
      li {
        &.active {
          a {
            background: #C61616;
          }
        }
      }
    }*/
}

#wacoo .side-nav .bg {
  background: red;
}

@media all and (-ms-high-contrast: none) {
  #wacoo .side-nav *::-ms-backdrop, #wacoo .side-nav .bg {
    width: 12%;
    background: rgba(255, 0, 0, 0.35);
  }
}

#wacoo .contents .cmn-section:before, #wacoo .contents .cmn-section:after,
#wacoo .contents .main-visual:before,
#wacoo .contents .main-visual:after,
#wacoo .contents .section06:before,
#wacoo .contents .section06:after,
#wacoo .contents .section07:before,
#wacoo .contents .section07:after,
#wacoo .contents .site-footer:before,
#wacoo .contents .site-footer:after {
  background: #FF0000;
}

#wacoo .contents .main-visual {
  background: url("../img/wacoo/mv_bg.jpg") no-repeat top center;
  background-size: cover;
}

#wacoo .contents .main-visual .title {
  max-width: 570px;
}

#wacoo .contents .main-visual .scroll {
  color: #FF0000;
}

#wacoo .contents .section01 .inner-wrapper {
  border-top: 4px solid #FF0000;
  border-bottom: 4px solid #FF0000;
}

#wacoo .contents .section01 .inner-wrapper:before, #wacoo .contents .section01 .inner-wrapper:after {
  background: #FF0000;
}

#wacoo .contents .section01 .inner-wrapper .title-area .lead {
  color: #FF0000;
}

#wacoo .contents .section02 {
  background: url("../img/wacoo/sec02_bg.jpg") no-repeat top center;
  background-size: cover;
}

#wacoo .contents .section03 .inner-wrapper .detail-area .detail-title:after {
  background: #FF0000;
}

#wacoo .contents .section04 {
  background: url("../img/wacoo/sec04_bg.jpg") no-repeat top center;
  background-size: cover;
}

#wacoo .contents .section04 .section-content > .wrap {
  padding: 265px 0 375px;
  height: 100%;
  padding: 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;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#wacoo .contents .section04 .inner-wrapper .title {
  margin-bottom: 75px;
}

#wacoo .contents .section05 {
  position: relative;
  background: url("../img/wacoo/sec05_bg.jpg") no-repeat top center;
  background-size: cover;
}

#wacoo .contents .section05 .section-content > .wrap {
  padding: 265px 0 320px;
}

#wacoo .contents .section05 .inner-wrapper .title {
  margin-bottom: 90px;
}

#wacoo .contents .section05 .example {
  position: absolute;
  bottom: 75px;
  left: calc(50% - 121px);
}

#wacoo .contents .section05-low {
  color: #1A1311;
}

#wacoo .contents .section05-low .section-content > .wrap {
  padding: 160px 0;
}

#wacoo .contents .section05-low .inner-wrapper .item-title {
  margin-bottom: 5px;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
}

#wacoo .contents .section05-low .inner-wrapper .lead {
  margin-bottom: 60px;
  font-size: 20px;
  line-height: 1.8;
  text-align: left;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li {
  margin-bottom: 70px;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li:last-of-type {
  margin-bottom: 0;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .image-area {
  font-size: 0;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .image-area .image {
  display: inline-block;
  vertical-align: top;
  width: 334px;
  margin: 0 52px 10px 0;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .image-area .image:nth-of-type(even) {
  margin: 0 0 10px;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .detail {
  margin-bottom: 25px;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  border-bottom: 1px solid #FF0000;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .detail span {
  display: inline-block;
  vertical-align: middle;
}

#wacoo .contents .section05-low .inner-wrapper .item-area li .detail span + span {
  margin-left: 45px;
}

#wacoo .contents .section06 .inner-wrapper .contact-area .text-block .title:after {
  background: #FF0000;
}

#wacoo .contents .section06 .inner-wrapper .contact-area .button-block .tel {
  color: #FF0000;
}

#wacoo .contents .section06 .inner-wrapper .contact-area .button-block .button a {
  background: #FF0000;
}

#wacoo .contents .section07 .upper {
  background: url("../img/wacoo/sec07_bg.jpg") no-repeat top center;
  background-size: cover;
}

@media all and (-ms-high-contrast: none) {
  #wacoo .contents .section04 .section-content > .wrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

@media screen and (max-width: 1024px) and (min-width: 641px) {
  #wacoo {
    /* --------------------------------------------------
    * site-header
    */
    /* --------------------------------------------------
    * contents
    */
  }
  #wacoo .site-header .logo {
    max-width: 114px;
  }
  #wacoo .contents .main-visual .wrap .title {
    max-width: 480px;
  }
  #wacoo .contents .section04 .section-content > .wrap {
    padding: 310px 0 290px;
  }
  #wacoo .contents .section04 .inner-wrapper .title {
    margin-bottom: 55px;
  }
  #wacoo .contents .section05 .section-content > .wrap {
    padding: 325px 0 320px;
  }
  #wacoo .contents .section05-low .section-content > .wrap {
    padding: 100px 0;
  }
  #wacoo .contents .section05-low .inner-wrapper .lead {
    margin-bottom: 40px;
    font-size: 16px;
  }
  #wacoo .contents .section05-low .inner-wrapper .item-area li {
    margin-bottom: 40px;
  }
  #wacoo .contents .section05-low .inner-wrapper .item-area li .image-area .image {
    width: 270px;
    margin-right: 40px;
  }
  #wacoo .contents .section05-low .inner-wrapper .item-area li .detail {
    font-size: 18px;
  }
  #wacoo .contents .section05-low .inner-wrapper .item-area li .detail span + span {
    margin-left: 25px;
  }
}

/* --------------------------------------------------
* nissin
*/
/* --------------------------------------------------
* nissin
*/
#nissin {
  /* --------------------------------------------------
  * site-header
  */
  /* --------------------------------------------------
  * footer
  */
  /* --------------------------------------------------
  * side-nav
  */
  /* --------------------------------------------------
  * contents
  */
}

#nissin #fp-nav ul li a.active {
  background: #009DCC;
}

#nissin .site-header .logo {
  max-width: 186px;
}

#nissin .site-footer {
  color: #00C0FA;
}

#nissin .site-footer .logo {
  max-width: 58px;
}

#nissin .side-nav {
  /*ul {
      li {
        &.active {
          a {
            background: #009DCC;
          }
        }
      }
    }*/
}

#nissin .side-nav .bg {
  background: #00c0fa;
}

@media all and (-ms-high-contrast: none) {
  #nissin .side-nav *::-ms-backdrop, #nissin .side-nav .bg {
    width: 12%;
    background: rgba(0, 192, 250, 0.35);
  }
}

#nissin .contents .cmn-section:before, #nissin .contents .cmn-section:after,
#nissin .contents .main-visual:before,
#nissin .contents .main-visual:after,
#nissin .contents .section06:before,
#nissin .contents .section06:after,
#nissin .contents .section07:before,
#nissin .contents .section07:after,
#nissin .contents .site-footer:before,
#nissin .contents .site-footer:after {
  background: #00C0FA;
}

#nissin .contents .main-visual {
  background: url("../img/nissin/mv_bg.jpg") no-repeat top center;
  background-size: cover;
}

#nissin .contents .main-visual .title {
  max-width: 700px;
}

#nissin .contents .main-visual .scroll {
  color: #00C0FA;
}

#nissin .contents .section01 .inner-wrapper {
  border-top: 4px solid #00C0FA;
  border-bottom: 4px solid #00C0FA;
}

#nissin .contents .section01 .inner-wrapper:before, #nissin .contents .section01 .inner-wrapper:after {
  background: #00C0FA;
}

#nissin .contents .section01 .inner-wrapper .title-area .lead {
  color: #00C0FA;
}

#nissin .contents .section02 {
  background: url("../img/nissin/sec02_bg.jpg") no-repeat top center;
  background-size: cover;
}

#nissin .contents .section02 .inner-wrapper {
  width: 780px;
}

#nissin .contents .section03 .inner-wrapper .detail-area .detail-title:after {
  background: #00C0FA;
}

#nissin .contents .section04 {
  position: relative;
  min-height: 100vh;
  background: url("../img/nissin/sec04_bg.jpg") no-repeat top center;
  background-size: cover;
}

#nissin .contents .section04 .section-content > .wrap {
  padding: 270px 0 320px;
}

#nissin .contents .section04 .inner-wrapper .title {
  margin-bottom: 75px;
}

#nissin .contents .section04 .example {
  position: absolute;
  bottom: 75px;
  left: calc(50% - 121px);
}

#nissin .contents .section04-low,
#nissin .contents .section05-low {
  color: #1A1311;
}

#nissin .contents .section04-low .section-content > .wrap,
#nissin .contents .section05-low .section-content > .wrap {
  padding: 161px 0 145px;
}

#nissin .contents .section04-low .inner-wrapper .item-title,
#nissin .contents .section05-low .inner-wrapper .item-title {
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: center;
}

#nissin .contents .section04-low .inner-wrapper .lead,
#nissin .contents .section05-low .inner-wrapper .lead {
  margin-bottom: 35px;
  font-size: 22px;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

#nissin .contents .section04-low .inner-wrapper .lead span,
#nissin .contents .section05-low .inner-wrapper .lead span {
  font-size: 20px;
  color: #00C0FA;
}

#nissin .contents .section04-low .inner-wrapper .lower-lead,
#nissin .contents .section05-low .inner-wrapper .lower-lead {
  padding-top: 25px;
  border-top: 1px solid #707070;
}

#nissin .contents .section04-low .inner-wrapper .item-area,
#nissin .contents .section05-low .inner-wrapper .item-area {
  font-size: 0;
  text-align: center;
}

#nissin .contents .section04-low .inner-wrapper .item-area li,
#nissin .contents .section05-low .inner-wrapper .item-area li {
  display: inline-block;
  vertical-align: top;
  width: 352px;
  margin-bottom: 18px;
}

#nissin .contents .section04-low .inner-wrapper .item-area li:nth-of-type(odd),
#nissin .contents .section05-low .inner-wrapper .item-area li:nth-of-type(odd) {
  margin-right: 15px;
}

#nissin .contents .section05 {
  position: relative;
  background: url("../img/nissin/sec05_bg.jpg") no-repeat top center;
  background-size: cover;
}

#nissin .contents .section05 .section-content > .wrap {
  padding: 265px 0 320px;
}

#nissin .contents .section05 .inner-wrapper .title {
  margin-bottom: 90px;
}

#nissin .contents .section05 .inner-wrapper .title:before {
  left: -50px;
}

#nissin .contents .section05 .inner-wrapper .title:after {
  right: -50px;
}

#nissin .contents .section05 .example {
  position: absolute;
  bottom: 75px;
  left: calc(50% - 121px);
}

#nissin .contents .section06 .inner-wrapper .contact-area .text-block .title:after {
  background: #00C0FA;
}

#nissin .contents .section06 .inner-wrapper .contact-area .button-block .tel {
  color: #00C0FA;
}

#nissin .contents .section06 .inner-wrapper .contact-area .button-block .button a {
  background: #00C0FA;
}

#nissin .contents .section07 .upper {
  background: url("../img/nissin/sec07_bg.jpg") no-repeat top center;
  background-size: cover;
}

#nissin .contents .section07 .upper .wrap {
  padding: 150px 0 228px;
}

#nissin .contents .section07 .inner-wrapper .title {
  margin-bottom: 75px;
}

#nissin .contents .section07 .inner-wrapper .detail-area:first-of-type {
  margin-bottom: 60px;
}

#nissin .contents .section07 .inner-wrapper .detail-area:first-of-type dl:first-of-type {
  padding-bottom: 22px;
  margin-bottom: 0;
  border-bottom: none;
}

@media screen and (max-width: 1024px) and (min-width: 641px) {
  #nissin {
    /* --------------------------------------------------
    * site-header
    */
    /* --------------------------------------------------
    * contents
    */
  }
  #nissin .site-header .logo {
    max-width: 106px;
  }
  #nissin .contents .main-visual .wrap .title {
    max-width: 580px;
  }
  #nissin .contents .section04 .section-content > .wrap {
    padding: 310px 0 290px;
  }
  #nissin .contents .section04 .inner-wrapper .title {
    margin-bottom: 55px;
  }
  #nissin .contents .section04-low .inner-wrapper .lead,
  #nissin .contents .section05-low .inner-wrapper .lead {
    font-size: 16px;
  }
  #nissin .contents .section04-low .inner-wrapper .lead span,
  #nissin .contents .section05-low .inner-wrapper .lead span {
    font-size: 16px;
  }
  #nissin .contents .section04-low .inner-wrapper .item-area li,
  #nissin .contents .section05-low .inner-wrapper .item-area li {
    width: 286px;
  }
  #nissin .contents .section05 .section-content > .wrap {
    padding: 325px 0 320px;
  }
  #nissin .contents .section05 .inner-wrapper .title {
    margin-bottom: 70px;
  }
  #nissin .contents .section05 .inner-wrapper .title:before {
    left: -20px;
  }
  #nissin .contents .section05 .inner-wrapper .title:after {
    right: -20px;
  }
  #nissin .contents .section07 .inner-wrapper .title {
    margin-bottom: 55px;
  }
}
/*# sourceMappingURL=style.css.map */