@charset "UTF-8";
#container {
  width: auto;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  #container {
    margin: 0;
  }
}

.inner {
  width: 960px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .inner {
    width: auto;
  }
}

img {
  image-rendering: -webkit-optimize-contrast;
}

img.auto {
  width: 100%;
}

sup {
  font-size: 0.6em;
  vertical-align: super;
  position: relative;
  top: -0.1em;
}

.mincho {
  font-family: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

/* メインビジュアル */
.mainvisual {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
}
.mainvisual .photo {
  position: relative;
  width: 100%;
  height: 700px;
  overflow: hidden;
}
.mainvisual .photo img {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 700px;
}
@media screen and (max-width: 768px) {
  .mainvisual .photo {
    height: 400px;
  }
  .mainvisual .photo img {
    height: 400px;
  }
}
.mainvisual .btn_buy {
  position: absolute;
  right: 60px;
  bottom: 60px;
  display: block;
  width: 160px;
  height: 160px;
  text-align: center;
  background-color: #000;
  border-radius: 50%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#0075c2), to(#0075c2));
  background-image: linear-gradient(#0075c2, #0075c2);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100% 0%;
  z-index: 2;
  -webkit-transition: background-size 0.2s;
  transition: background-size 0.2s;
}
@media screen and (max-width: 768px) {
  .mainvisual .btn_buy {
    position: relative;
    width: 100%;
    right: 0px;
    bottom: 0px;
    border-radius: 0%;
  }
}
.mainvisual .btn_buy img {
  width: 160px;
  height: 160px;
}
.mainvisual .btn_buy:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#0075c2), to(#0075c2));
  background-image: linear-gradient(#0075c2, #0075c2);
  background-size: 100% 100%;
}

/* ミルつきミキサー */
.block1 {
  padding: 70px 20px;
}
.block1 h1 {
  font-size: 28px;
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 1px;
  padding-bottom: 20px;
}
.block1 p.date {
  padding: 0 0 20px;
}
.block1 p {
  text-align: center;
  line-height: 2.4;
  letter-spacing: 1px;
}
.block1 p span {
  display: inline-block;
}

/* クラッシュ＆カット チタンコートブレード */
.block2 {
  padding: 70px 20px;
  background-color: #d9d5c3;
}
.block2 h2 {
  font-size: 28px;
  font-weight: bold;
  text-align: left;
  line-height: 1.8;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .block2 h2 {
    font-size: 22px;
    line-height: 1.6;
  }
  .block2 h2 br {
    display: none;
  }
}
.block2 .blade_box {
  width: 960px;
  height: 300px;
  position: relative;
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .block2 .blade_box {
    margin-top: 30px;
    width: 100%;
    height: auto;
  }
}
.block2 .blade_box p:first-child {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .block2 .blade_box p:first-child {
    position: relative;
    margin-bottom: 20px;
  }
  .block2 .blade_box p:first-child br {
    display: none;
  }
}
.block2 .blade_box .text_blade {
  width: 850px;
  position: absolute;
  top: 80px;
  left: 0;
  z-index: 2;
}
.block2 .blade_box .text_blade .sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .block2 .blade_box .text_blade {
    position: relative;
    top: 0;
    width: 100%;
    position: relative;
    max-width: 320px;
    width: 100%;
    margin: 0 auto;
  }
  .block2 .blade_box .text_blade .pc {
    display: none;
  }
  .block2 .blade_box .text_blade .sp {
    display: block;
  }
}
.block2 .blade_box .photo_blade {
  width: 480px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .block2 .blade_box .photo_blade {
    position: relative;
    max-width: 320px;
    width: 100%;
    margin: -90px auto 0;
  }
}

/* 軽くて丈夫＆たっぷり作れる1Lミキサー容器 */
.block3 {
  padding: 70px 20px;
}
.block3 h2 {
  font-size: 28px;
  font-weight: bold;
  text-align: left;
  line-height: 1.8;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .block3 h2 {
    font-size: 22px;
    line-height: 1.6;
  }
}
.block3 .fb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .block3 .fb {
    display: block;
    margin-top: 30px;
  }
}
.block3 .fb div:first-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-right: 30px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .block3 .fb div:first-child {
    padding-right: 0px;
    padding-bottom: 20px;
  }
}
.block3 .fb div:last-child {
  width: 480px;
}
@media screen and (max-width: 768px) {
  .block3 .fb div:last-child {
    width: 100%;
  }
}
.block3 .fb img {
  width: 100%;
}
.block3 .fb .point {
  font-weight: bold;
  letter-spacing: 1px;
  color: #fff;
  text-align: center;
  background-color: #d9d5c3;
  margin: 15px 0 10px;
}
.block3 .fb ul {
  margin-top: 20px;
}
.block3 .fb li.comment {
  padding: 0 0 5px 0;
  font-size: 12px;
  line-height: 1.5;
  text-indent: -3em;
  padding-left: 3em;
}

/* 機能 */
.block4 {
  padding: 70px 0px 30px;
  background-color: #d9d5c3;
}
@media screen and (max-width: 768px) {
  .block4 {
    padding: 70px 20px 30px;
  }
}
.block4 h3 {
  font-size: 24px;
  font-weight: bold;
  text-align: left;
  line-height: 1.6;
  letter-spacing: 0;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .block4 h3 {
    font-size: 22px;
  }
}
.block4 .fb {
  max-width: 960px;
  margin: 0 auto;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .block4 .fb {
    display: block;
  }
}
.block4 .fb div {
  max-width: 460px;
  padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .block4 .fb div {
    padding-bottom: 60px;
    margin: 0 auto;
  }
}
.block4 .fb p {
  line-height: 1.8;
  margin-top: 1em;
}
.block4 .fb p.comment {
  font-size: 12px;
  line-height: 1.6;
  text-indent: -3em;
  padding-left: 3em;
}
.block4 .fb ul.mode {
  margin-top: 1em;
}
.block4 .fb ul.mode li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.block4 .fb ul.mode li span:first-child {
  width: 4.5em;
  text-align: right;
}
.block4 .fb ul.mode li span:last-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* Room Clip */
.block6 {
  background-color: #fff;
  padding: 80px 0px;
}
@media screen and (max-width: 768px) {
  .block6 {
    padding: 70px 20px;
  }
}
.block6 h2 {
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 1px;
  padding-bottom: 40px;
  text-align: center;
}
.block6 h2 img {
  width: 160px;
}
.block6 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.block6 ul li {
  position: relative;
  width: 25%;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .block6 ul li {
    width: 48%;
  }
}
.block6 ul li img {
  width: 100%;
  max-width: 220px;
}
@media screen and (max-width: 768px) {
  .block6 ul li img {
    max-width: 340px;
  }
}
.block6 ul li img.click {
  width: 28px;
  position: absolute;
  left: 15px;
  top: 5px;
}
@media screen and (max-width: 768px) {
  .block6 ul li img.click {
    width: 25px;
    left: 5px;
  }
}
.block6 .btn a {
  display: block;
  text-align: center;
  color: #fff;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#7f7858), to(#7f7858));
  background-image: linear-gradient(#7f7858, #7f7858);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100% 0%;
  background-color: #3f3818;
  max-width: 350px;
  margin: 30px auto 0;
  padding: 20px 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.block6 .btn a:hover {
  text-decoration: none;
  background-size: 100% 100%;
}

/* タイアップ */
.tie_up {
  border-top: solid 1px #d9d5c3;
  padding: 80px 20px;
}
.tie_up h2 {
  font-size: 28px;
  letter-spacing: 0;
  font-weight: bold;
  padding-bottom: 20px;
  text-align: center;
}
.tie_up p.banner {
  text-align: center;
}
.tie_up p.banner img {
  max-width: 960px;
}
.tie_up a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.tie_up a:hover {
  opacity: 0.8;
}

/* 詳細情報 */
.block7 {
  border-top: solid 1px #d9d5c3;
  padding: 70px 0px 100px;
}
.block7 h2 {
  text-align: center;
  font-size: 29px;
  font-weight: bold;
  letter-spacing: 0;
  padding-bottom: 60px;
}
.block7 h2 img {
  padding-bottom: 30px;
}
.block7 h2 span {
  font-size: 16px;
  line-height: 2;
}
.block7 table {
  width: 600px;
  margin: 0 auto 50px;
  border-top: solid 1px #ddd;
}
@media screen and (max-width: 768px) {
  .block7 table {
    width: 100%;
  }
}
.block7 th, .block7 td {
  font-weight: normal;
  border-bottom: solid 1px #ddd;
}
.block7 th span, .block7 td span {
  display: inline-block;
}
.block7 th {
  width: 40%;
  padding: 15px;
}
.block7 td {
  width: 60%;
  padding: 15px 0;
}
.block7 a:hover {
  opacity: 0.8;
}

/* modal */
.js-modal-open,
.js-modal-next {
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.js-modal-open:hover {
  opacity: 0.8;
}

#modal {
  display: none;
  position: fixed;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
}

.modal__bg {
  background-color: rgba(217, 213, 195, 0.9);
  width: 100%;
  height: 100vh;
  position: absolute;
  z-index: 101;
}

.modal__content {
  color: #000;
  background-color: #fff;
  -webkit-box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  position: absolute;
  left: 50%;
  top: 45%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 90%;
  max-width: 880px;
  z-index: 102;
}
@media screen and (max-width: 768px) {
  .modal__content {
    width: 340px;
    top: 100px;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}

.modal_fb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .modal_fb {
    display: block;
  }
}
.modal_fb .modal_fb_l {
  text-align: center;
  width: 340px;
  margin: 0 auto;
  padding: 20px;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_fb_l {
    width: 300px;
  }
}
.modal_fb .modal_fb_l img {
  max-width: 340px;
  width: 100%;
}
.modal_fb .modal_fb_r {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 40px 40px 80px 20px;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_fb_r {
    padding: 0px 25px 50px 25px;
  }
}
.modal_fb .modal_fb_r p {
  font-size: 15px;
  line-height: 1.6;
}
.modal_fb .modal_fb_r p + p {
  padding-top: 1em;
}
.modal_fb .modal_arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_arrow {
    background-color: rgba(0, 0, 0, 0.3);
    top: 160px;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.modal_fb .modal_arrow p {
  padding: 10px;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_arrow p {
    padding: 20px 10px;
  }
}
.modal_fb .modal_arrow img {
  width: 16px;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_arrow img {
    width: 10px;
    vertical-align: top;
  }
}
.modal_fb .modal_arrow:hover {
  opacity: 0.5;
}
.modal_fb .modal_arrow.go_left {
  left: -40px;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_arrow.go_left {
    left: -30px;
  }
}
.modal_fb .modal_arrow.go_right {
  right: -40px;
}
@media screen and (max-width: 768px) {
  .modal_fb .modal_arrow.go_right {
    right: -30px;
  }
}

.btn_close_modal {
  cursor: pointer;
  position: absolute;
  right: 20px;
  bottom: 15px;
  display: block;
  padding: 5px 8px 5px 22px;
  font-size: 14px;
  color: #666;
  background-color: #fff;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  background-image: url(../img/close.png);
  background-position: center left 8px;
  background-repeat: no-repeat;
  background-size: 9px 10px;
}
@media screen and (max-width: 768px) {
  .btn_close_modal {
    bottom: 10px;
    right: auto;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.btn_close_modal:hover {
  background-color: #eee;
}