/* ===============================================
  ### Foundation ###
=============================================== */




/* 
.main-area {
  opacity: 0.6;
  background: url(../imgs/SP.jpg) center 0/100% no-repeat;
} 
@media only screen and (min-width: 560px) {
  .main-area {
  opacity: 0.6;
  background: url(../imgs/PC.jpg) center 0/137% no-repeat;
  background-position-y: calc(1 * (100vw / 1400))!important;
}
} */

/* base style */
.main-area,
.main_inner {
  -webkit-font-feature-settings: normal;
  color: #3e3e3e;
  font-family: "Noto Sans JP", sans-serif;
          font-feature-settings: normal;
  font-style: normal;
  font-weight: normal;
  letter-spacing: .04em;
  margin: auto;
  text-align: left;
  width: 100%;
}

.main-area *,
.main_inner * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.main-area *::before, .main-area *::after,
.main_inner *::before,
.main_inner *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.main-area img, .main-area svg,
.main_inner img,
.main_inner svg {
  height: auto;
  width: 100%;
}

.main-area a,
.main_inner a {
  overflow: visible;
}

.main-area {
  overflow-x: hidden;
}

/* toggle visibility for responsive object */
.sp-component {
  display: block;
}

.pc-component {
  display: none;
}
#main-container picture,
#main-container a{
  display: block;
}
#main-container #breadcrumb a{
  display: inline;
}

/* ====================================================================
  ### animation ###
==================================================================== */

.effect-fade{
  -webkit-transition-duration: 2s;
  -o-transition-duration: 2s;
  transition-duration: 2s;
  opacity: 0;
}
.effect-fadein{
  opacity: 1;
}
.sec02 .stairs_image--1{
  transition-delay: 1s;
}
.sec02 .stairs_image--2{
  transition-delay: 2s;
}
.sec02 .stairs_image--3{
  transition-delay: 3s;
}
.sec02 .stairs_image--4{
  transition-delay: 4.3s;
}
/* ===============================================
  ### Object ###
=============================================== */
/* breadcrumb__list */
.cateList {
  color: #000000;
  font-size: calc(10 * (100vw / 375));
  letter-spacing: 0.02em;
  line-height: calc(20 * (100vw / 375));
  margin-left: calc(20 * (100vw / 375));
  padding: calc(16 * (100vw / 375)) 0;
}

/* buy__btn */
.buy__btn {
  display: inline-block;
  height: calc(16 * (100vw / 375));
  width: calc(40 * (100vw / 375));
}
#main-container .credit__container {
  margin: auto;
  margin-top:10px;
}

/* viewall__btn */
.viewall__btn {
  display: block;
  height: calc(50 * (100vw / 375));
  width: calc(300 * (100vw / 375));
}



/* ===============================================
  ### Layout ###
=============================================== */
/* ===========================
  * Style of SP-view *
=========================== */


/* heading */
.heading {
  width: 100%;
}
.heading .heading__image-container a:hover{
  opacity: 1;
}
.heading .heading__image-container {
  background-color: #364248;
  border-top: #303543 solid calc(20 * (100vw / 375));
  padding: calc(20 * (100vw / 375)) 0;
  border-bottom: #303543 solid calc(20 * (100vw / 375));
}
.heading .heading__lead-container {
  margin: 0 calc(20 * (100vw / 375));
  margin-top: calc(36 * (100vw / 375));
}
.heading .heading__lead-container {
  font-size: calc(14 * (100vw / 375));
  line-height: 2;
  letter-spacing: 0;
}
.bg-c-white{
  width: 100%;
  background-color: #FEFEFE;
}
.heading__image-wrapper{
  display: block;
}

/* sec01 */
.sec01{
  margin-top: calc(76 * (100vw / 375));
}
.sec-description .sec_image-container {
  width: calc(330 * (100vw / 375));
}
.sec-description .sec_about-container {
  position: relative;
  margin-top: calc(29.7 * (100vw / 375));
}
.sec-description .sec_about-wrapper::before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  height: calc(334 * (100vw / 375));
  background-color: #364248;
  border-top: solid #303543 calc(12 * (100vw / 375));
  border-bottom: solid #303543 calc(12 * (100vw / 375));
}
.sec-description .description_title {
  font-size: calc(16 * (100vw / 375));
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #fff;
  padding: 0 calc(20 * (100vw / 375));
}
.sec-description .description_lead {
  font-size: calc(13 * (100vw / 375));
  line-height: 1.9;
  letter-spacing: 0.02em;
  color: #fff;
  padding: 0 calc(20 * (100vw / 375));
  padding-top: calc(16 * (100vw / 375));
  padding-bottom: calc(38 * (100vw / 375));
}


/* sec02 */
.sec02 {
  position: relative;
  max-width: calc(375 * (100vw / 375));
  width: 100%;
  height: calc(769 * (100vw / 375));
}
.sec02 .sec_image-container {
  position: absolute;
}
.sec02 .stairs_image--1 {
  top: calc(80 * (100vw / 375));
  right: calc(14.6 * (100vw / 375));
  width: calc(160 * (100vw / 375));
}
.sec02 .stairs_image--2 {
  top: calc(160 * (100vw / 375));
  left: calc(50.4 * (100vw / 375));
  width: calc(180 * (100vw / 375));
}
.sec02 .stairs_image--3 {
  top: calc(370 * (100vw / 375));
  left: calc(0 * (100vw / 375));
  width: calc(180 * (100vw / 375));
}
.sec02 .stairs_image--4 {
  bottom: calc(0 * (100vw / 375));
  right: calc(0 * (100vw / 375));
  width: calc(215 * (100vw / 375));
}
/* sec03 */
.sec03 {
  margin-top: calc(80 * (100vw / 375));
}
.sec03 .sec_image-container {
  width: calc(330 * (100vw / 375));
  margin: 0 0 0 auto;
}
.sec03 .sec_about-wrapper::before {
  height: calc(358 * (100vw / 375));
}

/* sec04 */
.sec04 {
  margin-top: calc(64 * (100vw / 375));
}
.sec04 .product-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
.sec04 .product-wapper {
  width: calc(172 * (100vw / 375));
  margin: 0 calc(5 * (100vw / 375));
}
.sec04 .product-wapper:last-of-type {
  margin-top: calc(19.7 * (100vw / 375));
}
.sec04 .product-titlec-credit{
  font-size: calc(12 * (100vw / 375));
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.sec04 .product-wapper--2 .product-titlec-credit {
  letter-spacing: 0.02em;
}
.sec04 .buy__btn {
  margin-top: calc(10 * (100vw / 375));
  margin: auto;
}

/* viewall__btn */
.viewall__btn {
  margin: auto;
  margin-top: calc(80 * (100vw / 375));
}
#breadcrumb{
  margin-top: calc(63.9 * (100vw / 375));
}
@media only screen and (min-width: 560px) {
  /* ===========================
    * Style of Tablet-view *
  =========================== */
  #main-container{
    padding: 0;
  }
  .main-area, .main_inner{
    padding: 0;
  }
  .sp-component {
    display: none;
  }
  .pc-component {
    display: block;
  }
  .cateList {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: calc(13 * (100vw / 1400));
    height: calc(50 * (100vw / 1400));
    justify-content: flex-end;
    letter-spacing: 0.02em;
    line-height: normal;
    margin: 0 auto calc(40 * (100vw / 1400));
    max-height: 50px;
    max-width: 1280px;
    padding: 0 calc(40 * (100vw / 1400)) 0 0;
    width: calc(1280 * (100vw / 1400));
  }
  .cateList a {
    -webkit-transition: 0s;
    text-decoration: none;
    transition: 0s;
  }
  .cateList span {
    padding: 0 calc(5 * (100vw / 1400));
  }
  .credit__container .buy__btn {
    height: calc(16 * (100vw / 1400));
    max-height: 16px;
    max-width: 40px;
    width: calc(40 * (100vw / 1400));
  }
  .item-content .buy__btn {
    height: calc(24 * (100vw / 1400));
    max-height: 24px;
    max-width: 60px;
    width: calc(60 * (100vw / 1400));
  }
  .viewall__btn {
    height: calc(60 * (100vw / 1400));
    max-height: 60px;
    max-width: 370px;
    width: calc(370 * (100vw / 1400));
  }



  /* heading */
  .heading {
    max-width: calc(1400 * (100vw / 1400));
    width: 100%;
    margin: auto;
    text-align: center;
  }
  .heading .heading__image-container {
    background-color: #364248;
    border-top: #303543 solid calc(20 * (100vw / 1400));
    padding: calc(40 * (100vw / 1400)) 0;
    border-bottom: #303543 solid calc(20 * (100vw / 1400));
  }
  .bg-c-white{
     width: 100%;
    background-color: #FEFEFE;
    }
  .heading__image-wrapper{
    display: block;
  }
  .heading .heading__image-container__image img{
    width: calc(1200 * (100vw / 1400));
    margin: auto;
  }
  .heading .heading__lead-container {
    margin: auto;
    margin-top: calc(68 * (100vw / 1400));
  }
  .heading .heading__lead-container {
    font-size: calc(16 * (100vw / 1400));
    line-height: 2;
    letter-spacing: 0.04em;
    color: #4D4D4D;
  }
  

/* sec01 */
  .sec01{
    margin-top: calc(120 * (100vw / 1400));
    display: flex;
    justify-content: center;
  }
  .sec-description .sec_image-container {
    width: calc(700 * (100vw / 1400));
  }
  .sec01 .bg-c-white{
    margin-left: calc(220 * (100vw / 1400));
    width: calc(480 * (100vw / 1400));
  }
  .sec-description .sec_about-container {
    width: calc(700 * (100vw / 1400));
  }
  .sec01 .sec_about-container {
    margin-top: calc(154 * (100vw / 1400));
  }
  .sec-description .sec_about-wrapper{
    position: relative;
  }
  .sec01 .sec_about-wrapper::before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    bottom: auto;
    z-index: -1;
    width: 10000px;
    height: 100%;
    background-color: #364248;
    border-top: solid #303543 calc(12 * (100vw / 1400));
    border-bottom: solid #303543 calc(12 * (100vw / 1400));
  }
  .sec01 .sec_about-wrapper::before {
    left: 50%;
    transform: translateX(-50%);
  }
  .sec01 .description_title,
  .sec01 .description_lead {
    margin-left: calc(80 * (100vw / 1400));
  }
  .sec-description .description_title {
    font-size: calc(20 * (100vw / 1400));
    line-height: 1.5;
    letter-spacing: 0.04em;
    color: #fff;
    padding: 0;
    padding-top: calc(67 * (100vw / 1400));
  }
  .sec-description .description_lead {
    width: calc(400 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2;
    letter-spacing: 0.04em;
    color: #fff;
    padding: 0;
    margin-top: calc(29 * (100vw / 1400));
    padding-bottom: calc(68.9 * (100vw / 1400));
  }


  /* sec02 */
  .sec02 {
    position: relative;
    max-width: calc(1400 * (100vw / 1400));
    width: 100%;
    height: calc(1026 * (100vw / 1400));
    z-index: 2;
  }
  .sec02 .sec_image-container {
    position: absolute;
  }
  .sec02 .stairs_image--1 {
    top: calc(-40.2 * (100vw / 1400));
    right: calc(191 * (100vw / 1400));
    width: calc(280 * (100vw / 1400));
  }
  .sec02 .stairs_image--2 {
    top: calc(108.6 * (100vw / 1400));
    left: calc(659 * (100vw / 1400));
    width: calc(320 * (100vw / 1400));
  }
  .sec02 .stairs_image--3 {
    top: calc(232.6 * (100vw / 1400));
    left: calc(100 * (100vw / 1400));
    width: calc(320 * (100vw / 1400));
  }
  .sec02 .stairs_image--4 {
    bottom: auto;
    top: calc(401.6 * (100vw / 1400));
    right: calc(651 * (100vw / 1400));
    width: calc(360 * (100vw / 1400));
  }

  /* sec03 */
  .sec03 {
    position: relative;
    margin-top: calc(0 * (100vw / 1400));
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
    z-index: 3;
  }
  .sec03 .sec_image-container,
  .sec03 .sec_about-container {
    width: calc(700 * (100vw / 1400));
  }
  .sec03 .bg-c-white{
    width: calc(480 * (100vw / 1400));
    margin-left: calc(120 * (100vw / 1400));
    margin-top: calc(-216 * (100vw / 1400));
  }
  .sec03 .sec_about-container {
    margin-top: 0;
  }
  .sec03 .sec_about-wrapper::before {
    display: block;
    position: absolute;
    content: "";
    left: 50%;
    transform: translateX(-50%);
    bottom: auto;
    z-index: -1;
    width: 10000px;
    height: 100%;
    background-color: #364248;
    border-top: solid #303543 calc(12 * (100vw / 1400));
    border-bottom: solid #303543 calc(12 * (100vw / 1400));
  }
  .sec03 .sec_about-wrapper {
    padding-left: calc(340 * (100vw / 1400));
  }
  /* sec04 */
  .sec04 {
    margin-top: calc(80 * (100vw / 1400));
  }
  .sec04 .product-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }
  .sec04 .product-wapper {
    width: calc(250 * (100vw / 1400));
    margin: 0 calc(15 * (100vw / 1400));
  }
  .sec04 .product-wapper:last-of-type {
    margin-top: auto;
  }
  .sec04 .product-titlec-credit{
    font-size: calc(12 * (100vw / 1400));
    line-height: 1.6;
    letter-spacing: 0.02em;
    margin-top: calc(4 * (100vw / 1400));
  }
  .sec04 .buy__btn {
    margin-top: calc(10 * (100vw / 1400));
    margin-left: auto;
  }
  #main-container .item-content{
    margin: auto;
  }

  /* viewall__btn */
  .viewall__btn {
    margin: auto;
    margin-top: calc(120.3 * (100vw / 1400));
  }
  #breadcrumb{
    margin-top: calc(105 * (100vw / 1400));
  }
 
}

@media only screen and (min-width: 1400px) {
  /* ===========================
    * Style of Tablet-view *
  =========================== */
  #main-container{
    padding: 0;
  }
  .main-area, .main_inner{
    padding: 0;
  }
  .sp-component {
    display: none;
  }
  .pc-component {
    display: block;
  }
  .cateList {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.3rem;
    height: 50px;
    justify-content: flex-end;
    letter-spacing: 0.02em;
    line-height: normal;
    margin: 0 auto 40px;
    max-height: 50px;
    max-width: 1280px;
    padding: 0 40px 0 0;
    width: 1280px;
  }
  .cateList span {
    padding: 0 5px;
  }
  .credit__container .buy__btn {
    height: 16px;
    max-height: 16px;
    max-width: 40px;
    width: 40px;
  }
  .item-content .buy__btn {
    height: 24px;
    max-height: 24px;
    max-width: 60px;
    width: 60px;
  }
  .viewall__btn {
    height: 60px;
    max-height: 60px;
    max-width: 370px;
    width: 370px;
  }



  /* heading */
  .heading {
    max-width: 100vw;
    width: 100%;
    margin: auto;
    text-align: center;
  }
  .heading .heading__image-container {
    background-color: #364248;
    border-top: #303543 solid 20px;
    padding: 40px 0;
    border-bottom: #303543 solid 20px;
  }
  .bg-c-white{
     width: 100%;
    background-color: #FEFEFE;
    }
  .heading__image-wrapper{
    display: block;
  }
  .heading .heading__image-container__image img{
    max-width: 1200px;
    width: 100%;
    margin: auto;
  }
  .heading .heading__lead-container {
    margin: auto;
    margin-top: 68px;
  }
  .heading .heading__lead-container {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.04em;
    color: #4D4D4D;
  }
  

/* sec01 */
  .sec01{
    margin-top: 120px;
  }
  .sec-description .sec_image-container {
    width: 700px;
  }
  .sec01 .bg-c-white{
    margin-left: 220px;
    width: 480px;
  }
  .sec-description .sec_about-container {
    width: 700px;
  }
  .sec01 .sec_about-container {
    margin-top: 154px;
  }
  .sec01 .sec_about-wrapper::before {
    border-top: solid #303543 12px;
    border-bottom: solid #303543 12px;
  }
  .sec01 .description_title,
  .sec01 .description_lead {
    margin-left: 80px;
  }
  .sec-description .description_title {
    font-size: 20px;
    padding-top: 67px;
  }
  .sec-description .description_lead {
    width: 400px;
    font-size: 14px;
    margin-top: 29px;
    padding-bottom:68.9px;
  }


  /* sec02 */
  .sec02 {
    position: relative;
    max-width: 1400px;
    width: 100%;
    height: 1026px;
    margin: auto;
    z-index: 2;
  }
  .sec02 .sec_image-container {
    position: absolute;
  }
  .sec02 .stairs_image--1 {
    top: -40.2px;
    right: 191px;
    width: 280px;
  }
  .sec02 .stairs_image--2 {
    top: 108.6px;
    left: 659px;
    width: 320px;
  }
  .sec02 .stairs_image--3 {
    top: 232.6px;
    left: 100px;
    width: 320px;
  }
  .sec02 .stairs_image--4 {
    bottom: auto;
    top: 401.6px;
    right: 651px;
    width: 360px;
  }

  /* sec03 */
  .sec03 {
    max-width: 1400px;
    margin: auto;
    margin-top: 0px;
  }
  .sec03 .sec_image-container,
  .sec03 .sec_about-container {
    width: 700px;
  }
  .sec03 .bg-c-white{
    width: 480px;
    margin-left: 120px;
    margin-top: -216px;
  }
  .sec03 .sec_about-wrapper::before {
    border-top: solid #303543 12px;
    border-bottom: solid #303543 12px;
  }
  .sec03 .sec_about-wrapper {
    padding-left: 340px;
  }
  /* sec04 */
  .sec04 {
    margin-top: 80px;
  }
  .sec04 .product-wapper {
    width: 250px;
    margin: 0 15px;
  }
  .sec04 .product-titlec-credit{
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.02em;
    margin-top: 4px;
  }
  .sec04 .buy__btn {
    margin-top: 10px;
    margin-left: auto;
  }
  #main-container .item-content{
    margin: auto;
  }

  /* viewall__btn */
  .viewall__btn {
    margin: auto;
    margin-top: 120.3px;
  }
  #breadcrumb{
    margin-top: 105px;
  }
 
  
  .cateList {
    font-size: 12px;
    margin-bottom: 40px;
    padding-right: 40px;
  }
  .cateList span {
    padding: 0 5px;
  }
  /**
  * Style of heading
  */
  
  /**
  * viewall__btn
  */
  .viewall__btn {
    margin-bottom: 86px;
    margin-top: 118px;
  }
  
}
