@charset "UTF-8";
/*=======================================
                  PC   
========================================*/
/*=======================================
 	        animation
 ========================================*/
.inview {
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition: all 1500ms;
  transition: all 1500ms;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
}

.inview.active {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* ===================
	　　 General
=================== */
html {
  font-size: 62.5%;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (min-width: 768px) {
  #wrapper #breadcrumb {
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
  }
}

#mainLP_Contents {
  /* background-image: url(../img/pc.jpg);
	background-repeat: no-repeat;
	background-size: 140rem; 
	background-position-x: center; 
	background-position-y: -6.6rem; */
  overflow: hidden;
}

#breadcrumb.edit_lp .cateList {
  margin: 0 auto 30px 120px;
}

#wrapper {
  width: 140rem;
  margin: 0 auto;
  margin: 2rem auto 0;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #000;
}

#wrapper img {
  max-width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
}

#wrapper .yugothic {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  line-height: 2;
  letter-spacing: 0.03em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #000;
  font-size: 1.3rem;
}

#wrapper .Crimson_Text {
  font-family: 'Crimson Text', serif;
  letter-spacing: 0.035em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

#wrapper .noto-serif-jp {
  font-family: 'Noto Serif JP', serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 600;
}

#wrapper .shuei-mincho {
  font-family: dnp-shuei-mincho-pr6,sans-serif;
  font-style: normal;
  font-weight: 400;
  letter-spacing: .06em;
  line-height: 1;
}

#wrapper .kepler {
  font-family: kepler-std-display, serif;
  font-weight: 500;
  font-style: normal;
}

#wrapper .price {
  font-family: 'Crimson Text', serif;
  font-size: 1.3rem;
  letter-spacing: 0.015em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.3;
  margin-top: 2.9rem;
}

#wrapper .price span {
  border-bottom: 0.1rem solid #cccccc;
}

#wrapper .ml {
  margin-left: 0.9rem;
}

#wrapper .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#wrapper .row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

#wrapper h3 {
  font-size: 2.4rem;
  position: relative;
  margin-top: 3.8rem;
  margin-bottom: 4.4rem;
  letter-spacing: 0.025em !important;
}

#wrapper h3::before {
  position: absolute;
  content: "";
  width: 3.9rem;
  height: 0.1rem;
  background-color: #666666;
  top: 4.7rem;
  left: 0;
  right: 0;
  margin: auto;
}

/* ===================
	　　  common
=================== */
@media screen and (max-device-width: 767px) {
  #breadcrumb .cateList {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
}

/* ===================
	　 firstview
=================== */
#firstview {
  text-align: center;
  margin-bottom: 8.5rem;
}

#firstview .fv-img {
  width: 102rem;
  position: relative;
  margin: 0 auto 8.5rem;
}

#firstview .fv-img a {
  display: block;
}

#firstview p {
  margin-bottom: 1.9rem;
}

/* ===================
	　 section01
=================== */
.sec01 {
  text-align: center;
  margin-bottom: 11.5rem;
}

.sec01 .img01 {
  width: 44rem;
  margin: 0 auto;
}

.sec01 .description {
  margin-bottom: 5.5rem;
}

.sec01 .img02 {
  width: 63rem;
  margin: 0 auto;
}

/* ===================
	　 section02
=================== */
.sec02 {
  position: relative;
  margin-bottom: 16rem;
}

.sec02 .cont1 {
  margin-left: 30.5rem;
  margin-bottom: 4rem;
}

.sec02 .cont1 .img01 {
  width: 40rem;
  margin-left: 3.9rem;
  z-index: 2;
}

.sec02 .cont1 p {
  margin-top: 29.5rem;
}

.sec02 .cont2 {
  position: relative;
  margin-left: 30.4rem;
}

.sec02 .cont2 .img02 {
  width: 49.5rem;
}

.sec02 .cont2 p {
  width: 25.7rem;
  text-align: justify;
  margin-left: 4.1rem;
  margin-top: 5.5rem;
}

.sec02 .line01 {
  position: absolute;
  width: 40rem;
  height: 0.2rem;
  background-color: #989898;
  top: 14.9rem;
  right: 62.5rem;
}

.sec02 .line02 {
  position: absolute;
  width: 0.2rem;
  height: 84.1rem;
  background-color: #989898;
  top: 16rem;
  left: 24.3rem;
}

.sec02 .line03 {
  position: absolute;
  width: 90.2rem;
  height: 0.2rem;
  background-color: #989898;
  bottom: -3.1rem;
  right: 25.4rem;
}

.sec02 .line04 {
  position: absolute;
  width: 0.2rem;
  height: 84.1rem;
  background-color: #989898;
  top: 16rem;
  right: 25.3rem;
}

.sec02::before {
  content: "";
  position: absolute;
  background-color: #f4f5f5;
  width: 90.2rem;
  height: 87rem;
  top: 14rem;
  left: 23.4rem;
  z-index: -1;
}

.sec02::after {
  content: "Factory";
  font-family: 'Crimson Text', serif;
  font-size: 4.8rem;
  letter-spacing: 0.025em;
  position: absolute;
  top: 10.8rem;
  left: 21.4rem;
}

_:lang(x) + _:-webkit-full-screen-document, .line03 {
  bottom: -3.2rem !important;
}

/* ===================
	　 section03
=================== */
.sec03 {
  text-align: center;
}

.sec03 .img01 {
  width: 44rem;
  margin: 0 auto;
}

.sec03 p {
  margin-top: 3.4rem;
}

/* ===================
	　　  button
=================== */
.m-btn {
  width: 60rem;
  margin: 8.5rem auto 9rem;
}

.m-btn a {
  width: 60rem;
  height: 6.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 0.1rem solid #000;
  background-color: #fff;
  font-family: "Crimson Text", serif;
  font-size: 1.1rem;
  line-height: 1.54;
  letter-spacing: 0.002em;
  text-align: center;
}

#dvUserBox table {
  background-color: #fff;
}

/*=======================================
               IE
========================================*/
/*=======================================
               Responsive   
========================================*/
@media screen and (min-device-width: 768px) {
  .sp_only {
    display: none;
  }
}

/* for SP */
@media screen and (max-width: 767px) {
  /*=======================================
                    SP    
  ========================================*/
  /* ===================
	　　 animation
=================== */
  /* ===================
	　　 General
=================== */
  #breadcrumb.edit_lp .cateList {
    margin: 0 auto;
  }
  .main-inner {
    /* background-image: url("../img/sp.jpg");
        background-repeat: no-repeat;
        background-size: calc(750* (100vw / 750));
        background-position-x: center;
        background-position-y: calc(-97* (100vw / 750)); */
    overflow: hidden;
    position: relative;
  }
  .main-area .main-inner {
    width: 100%;
  }
  #wrapper {
    width: calc(750* (100vw / 750));
    margin: 0 auto;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  #wrapper .yugothic {
    font-size: calc(26* (100vw / 750));
  }
  #wrapper .flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #wrapper .row-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #wrapper .price {
    font-size: calc(23* (100vw / 750));
    letter-spacing: 0.015em;
    margin-top: calc(37* (100vw / 750));
  }
  #wrapper .ml {
    margin-left: calc(15* (100vw / 750));
  }
  #wrapper .sp_only {
    display: block !important;
  }
  #wrapper .pc_only {
    display: none;
  }
  #wrapper h3 {
    font-size: calc(40* (100vw / 750));
    margin-top: calc(56* (100vw / 750));
    margin-bottom: calc(70* (100vw / 750));
    letter-spacing: 0.025em !important;
  }
  #wrapper h3::before {
    width: calc(81* (100vw / 750));
    height: calc(2* (100vw / 750));
    top: calc(76* (100vw / 750));
  }
  /* ===================
	　 firstview
=================== */
  #firstview {
    margin-bottom: calc(111* (100vw / 750));
  }
  #firstview .fv-img {
    width: 100%;
    margin: 0 auto calc(108* (100vw / 750));
  }
  #firstview p {
    margin-bottom: calc(40* (100vw / 750));
  }
  /* ===================
	　 section01
=================== */
  .sec01 {
    margin-bottom: calc(312* (100vw / 750));
  }
  .sec01 .img01 {
    width: calc(580* (100vw / 750));
    margin: 0 auto;
  }
  .sec01 .description {
    margin-bottom: calc(79* (100vw / 750));
  }
  .sec01 .img02 {
    width: 100%;
    margin: 0 auto;
  }
  /* ===================
	　 section02
=================== */
  .sec02 {
    margin-bottom: calc(240* (100vw / 750));
  }
  .sec02 .cont1 {
    margin-left: 0;
    margin-bottom: calc(45* (100vw / 750));
  }
  .sec02 .cont1 .img01 {
    width: calc(581* (100vw / 750));
    margin-left: calc(112* (100vw / 750));
  }
  .sec02 .cont1 p {
    width: calc(580* (100vw / 750));
    text-align: justify;
    margin-top: calc(48* (100vw / 750));
    margin-left: calc(112* (100vw / 750));
  }
  .sec02 .cont2 {
    margin-left: 0;
  }
  .sec02 .cont2 .img02 {
    width: calc(580* (100vw / 750));
    margin-left: calc(112* (100vw / 750));
  }
  .sec02 .cont2 p {
    width: calc(580* (100vw / 750));
    margin-left: calc(112* (100vw / 750));
    margin-top: calc(49* (100vw / 750));
  }
  .sec02 .line01 {
    width: 63.3%;
    height: calc(2* (100vw / 750));
    top: -3.2%;
    right: 0;
  }
  .sec02 .line02 {
    width: calc(2* (100vw / 750));
    height: 104.4%;
    top: -2.5%;
    left: 7.4%;
  }
  .sec02 .line03 {
    width: 92.5%;
    height: calc(2* (100vw / 750));
    bottom: -1.9%;
    right: 0;
  }
  .sec02::before {
    width: 96%;
    height: 106.3%;
    top: -3.8%;
    left: 5.3%;
  }
  .sec02::after {
    font-size: calc(78* (100vw / 750));
    letter-spacing: 0.025em;
    top: calc(-145* (100vw / 750));
    left: calc(20* (100vw / 750));
  }
  _:lang(x) + _:-webkit-full-screen-document, .line03 {
    bottom: -1.9% !important;
  }
  /* ===================
	　 section03
=================== */
  .sec03 .img01 {
    width: calc(580* (100vw / 750));
    margin: 0 auto;
  }
  .sec03 p {
    margin-top: calc(48* (100vw / 750));
  }
  .sec03 .price {
    margin-top: calc(39* (100vw / 750)) !important;
  }
  /* ===================
  　　  button
  =================== */
  .m-btn {
    width: calc(618 *(100vw / 750));
    margin: calc(109 *(100vw / 750)) auto calc(40* (100vw / 750));
  }
  .m-btn a {
    width: calc(618 *(100vw / 750));
    height: calc(124 *(100vw / 750));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #000;
    background-color: #fff;
    font-family: "Crimson Text", serif;
    font-size: calc(22 *(100vw / 750));
    line-height: 1.54;
    letter-spacing: 0.002em;
    text-align: center;
  }
  /*=======================================
               Safari 
========================================*/
  ::-webkit-full-page-media, :future, :root .sec01 .img01-all h3 {
    right: calc(18* (100vw / 750));
  }
  ::-webkit-full-page-media, :future, :root .sec02 .img01-all h3 {
    left: calc(-97* (100vw / 750));
  }
  ::-webkit-full-page-media, :future, :root .sec03 .img01-all h3 {
    right: calc(18* (100vw / 750));
  }
  ::-webkit-full-page-media, :future, :root .sec04 .img01-all h3 {
    left: calc(-100* (100vw / 750));
  }
}

/* for Tablet */
@media screen and (min-width: 768px) and (max-width: 1400px) {
  /*=======================================
                    Tablet    
  ========================================*/
  /* ===================
	　　 General
=================== */
  html {
    font-size: calc(10* (100vw / 1400)) !important;
  }
  * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
}
/*# sourceMappingURL=style.css.map */