main {
    overflow-x: hidden
  }
  
  .videoWrapper {
    position: absolute;
    left: 50%
  }
  
  @media screen and (min-width:768px) {
    .videoWrapper {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      position: relative;
      top: 0;
      left: 0
    }
  }
  
  .videoWrapperTop {
    background-color: #fff;
    top: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(30%, hsla(0, 0%, 100%, .937434)), to(hsla(0, 0%, 100%, 0)));
    background: linear-gradient(180deg, #fff, hsla(0, 0%, 100%, .937434) 30%, hsla(0, 0%, 100%, 0))
  }
  
  .videoWrapperBottom, .videoWrapperTop {
    position: absolute;
    left: 0;
    width: 100%;
    height: 150px
  }
  
  .videoWrapperBottom {
    background-color: #fff;
    bottom: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(#fff), color-stop(30%, hsla(0, 0%, 100%, .937434)), to(hsla(0, 0%, 100%, 0)));
    background: linear-gradient(0deg, #fff, hsla(0, 0%, 100%, .937434) 30%, hsla(0, 0%, 100%, 0))
  }
  
  .videoWrapperLeft {
    background-color: #fff;
    left: 0;
    background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(30%, hsla(0, 0%, 100%, .937434)), to(hsla(0, 0%, 100%, 0)));
    background: linear-gradient(90deg, #fff, hsla(0, 0%, 100%, .937434) 30%, hsla(0, 0%, 100%, 0))
  }
  
  .videoWrapperLeft, .videoWrapperRight {
    position: absolute;
    top: 0;
    width: 350px;
    height: 100%
  }
  
  .videoWrapperRight {
    background-color: #fff;
    right: 0;
    background: -webkit-gradient(linear, right top, left top, from(#fff), color-stop(30%, hsla(0, 0%, 100%, .937434)), to(hsla(0, 0%, 100%, 0)));
    background: linear-gradient(-90deg, #fff, hsla(0, 0%, 100%, .937434) 30%, hsla(0, 0%, 100%, 0))
  }
  
  .mainVisual {
    position: relative;
    overflow: hidden
  }
  
  .mainVisual .mainVisualGif {
    background-color: #f7f8f8;
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100vh - 97px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 100px
  }
  
  .mainVisual .mainVisualGif img {
    height: 110%;
    width: auto;
    max-width: none;
    position: absolute;
    bottom: 0
  }
  
  .mainVisual .mainVisualGif img.img-sp {
    display: none
  }
  
  @media screen and (max-width:767px) {
    .mainVisual .mainVisualGif img.img-pc {
      display: none
    }
    .mainVisual .mainVisualGif img.img-sp {
      display: block;
      top: 8%;
      height: 69%;
      left: 0;
      width: auto
    }
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualGif {
      padding-top: 0;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center
    }
  }
  
  .mainVisual .mainVisualGif video {
    width: 1920px;
    height: 1080px
  }
  
  .mainVisual .mainVisualTitle {
    text-align: center;
    width: 100%;
    height: calc(100vh - 180px)
  }
  
  @media screen and (max-width:767px) {
    .mainVisual .mainVisualTitle {
      height: calc(100vw + 204px)!important;
      max-height: 500px
    }
  }
  
  .mainVisual .mainVisualTitleInner {
    padding-top: 345px;
    display: block
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualTitleInner {
      padding-top: 400px
    }
  }
  
  @media screen and (max-width:767px) {
    .mainVisual .mainVisualTitleInner {
      display: block;
      position: absolute;
      text-align: center;
      width: 100%;
      bottom: 20px;
      margin-top: 0;
      padding-top: 0
    }
  }
  
  .mainVisual .mainVisualTitle .new {
    font-size: 14px;
    margin-bottom: 9px
  }
  
  .mainVisual .mainVisualTitle .productName {
    font-size: 30px;
    margin-bottom: 4px
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualTitle .productName {
      font-size: 36px;
      margin-bottom: 20px
    }
  }
  
  .mainVisual .mainVisualTitle .bold {
    font-weight: 700
  }
  
  .mainVisual .mainVisualTitle .copy {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: .4rem;
    margin-bottom: 22px
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualTitle .copy {
      font-size: 28px;
      margin-bottom: 35px
    }
  }
  
  .mainVisual .mainVisualTitle .copy.summary {
    font-size: 12px;
    color: #676767;
    letter-spacing: 0
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualTitle .copy.summary {
      font-size: 15px
    }
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualTitle {
      height: calc(100vh - 174px)
    }
  }
  
  .inductionArea {
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  
  @media screen and (min-width:768px) {
    .inductionArea {
      display: block
    }
  }
  
  .sup {
    vertical-align: super
  }
  
  .smaller, .sup {
    font-size: smaller
  }
  
  .inductionArea {
    padding: 0 25px
  }
  
  .inductionAreaWrapper {
    padding: 100px 0 0;
    width: 325px;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaWrapper {
      padding: 110px 0 0;
      width: 100%;
      max-width: 550px;
      display: block
    }
    .inductionAreaWrapper .informationContainer {
      width: 340px
    }
    .inductionAreaWrapper .conversionMeritBtnArea, .inductionAreaWrapper .conversionTitlePriceArea {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1
    }
  }
  
  .inductionAreaWrapper .notice {
    font-size: 12px;
    color: #525252;
    margin-top: 12px
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaWrapper .notice {
      font-size: 14px;
      text-align: center
    }
  }
  
  .inductionAreaWrapper .conversionTitlePriceArea {
    margin-bottom: 30px
  }
  
  @media screen and (min-width:1024px) {
    .inductionAreaWrapper .conversionTitlePriceArea {
      margin-bottom: 0
    }
  }
  
  .informationContainer {
    margin-bottom: 25px
  }
  
  @media screen and (min-width:1024px) {
    .informationContainer {
      margin-bottom: 0
    }
  }
  
  .inductionAreaInner {
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #525252
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaInner {
      display: block;
      text-align: center
    }
  }
  
  .inductionAreaInner .icon {
    margin-right: 23px;
    text-align: center
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaInner .icon {
      margin-right: 0;
      margin-bottom: 30px
    }
    .inductionAreaInner .icon img {
      width: 129px
    }
  }
  
  @media screen and (max-width:767px) {
    .inductionAreaInner .icon img {
      width: 92px
    }
  }
  
  .inductionAreaInner .icon .text {
    margin-top: 10px
  }
  
  .inductionAreaInner .release {
    margin-top: 0;
    padding: 1px 3px;
    display: inline-block;
    margin-bottom: 11px;
    font-size: 24px;
    color: #000
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaInner .release {
      font-size: 30px;
      padding: 0;
      margin-bottom: 30px
    }
  }
  
  .inductionAreaInner .introductionText {
    margin-bottom: 16px;
    font-size: 16px
  }
  
  @media screen and (min-width:768px) {
    .inductionAreaInner .introductionText {
      font-size: 21px
    }
  }
  
  .inductionAreaInner .lineLink {
    text-decoration: underline;
    color: #3c8d18;
    display: inline-block;
    padding-right: 10px;
    background: url(/assets/img/product/deep/icon-arrow-green.svg) no-repeat 100%
  }
  
  .inductionAreaInner .lineLink:hover {
    text-decoration: none
  }
  
  .inductionAreaInner .info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  
  @media screen and (min-width:1024px) {
    .inductionAreaInner .icon img {
      width: 129px
    }
  }
  
  .conversion {
    background-color: #fff;
    padding-top: 60px;
    padding-bottom: 60px
  }
  
  .conversionInner {
    grid-template-columns: 308px 1fr;
    text-align: center;
    grid-template-rows: -webkit-max-content 1fr -webkit-max-content auto;
    grid-template-rows: max-content 1fr max-content auto;
    width: 635px;
    margin: 0 auto;
    color: #5a5a5a
  }
  
  @media screen and (max-width:767px) {
    .conversionInner {
      grid-template-columns: 100px 1fr;
      width: 325px
    }
  }
  
  .conversionInner .conversionProduct img {
    width: 70px
  }
  
  @media screen and (max-width:767px) {
    .conversionInner .conversionProduct img {
      width: 58px
    }
  }
  
  .conversionSubTitle {
    font-size: 14px;
    margin-bottom: 9px;
    line-height: 1.7
  }
  
  .conversionTitle {
    font-size: 30px;
    color: #000;
    letter-spacing: .05em;
    margin-bottom: 22px
  }
  
  .conversionTitle .bold {
    font-weight: 700
  }
  
  @media screen and (max-width:767px) {
    .conversionTitle {
      font-size: 24px;
      margin: 20px 0 34px
    }
  }
  
  .conversionPrice {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    margin-bottom: 16px;
    line-height: 1;
    margin-top: 10px
  }
  
  .conversionPrice .txt {
    font-size: 16px
  }
  
  .conversionPrice .price {
    font-size: 39px;
    margin-left: 5px;
    color: #000
  }
  
  .conversionPrice .tax {
    font-size: 15px;
    margin-left: 10px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
  }
  
  @media screen and (max-width:767px) {
    .conversionPrice {
      margin-top: -10px;
      margin-bottom: 26px
    }
    .conversionPrice .txt {
      font-size: 14px
    }
    .conversionPrice .price {
      margin-top: 0;
      font-size: 39px;
      margin-left: 3px
    }
    .conversionPrice .tax {
      font-size: 14px
    }
  }
  
  .conversionBtn {
    width: 336px;
    margin: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
  
  .conversionBtn, .conversionBtn .conversion2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 13px
  }
  
  @media screen and (max-width:767px) {
    .conversionBtn .conversion2 {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      flex-direction: column-reverse
    }
  }
  
  @media screen and (max-width:767px) {
    .conversionBtn {
      width: auto
    }
  }
  
  .conversionBtn a.btnBase {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: all .1s linear;
    transition: all .1s linear;
    border-radius: 25px;
    margin-bottom: 0
  }
  
  .conversionBtn a.btnBase:hover {
    -webkit-filter: brightness(1.1);
    filter: brightness(1.1)
  }
  
  .conversionBtn .outline {
    color: #2f2f2f;
    border: 1px solid #000;
    background-color: #fff
  }
  
  .conversionBtn .primery {
    background: #000;
    color: #fff
  }
  
  @media screen and (max-width:767px) {
    .conversionBtn {
      grid-column: 1/3;
      margin-top: 10px
    }
  }
  
  .conversionBtn.introductionBtn {
    margin-top: 24px;
    margin-bottom: 0
  }
  
  @media screen and (max-width:767px) {
    .conversionBtn.introductionBtn {
      margin-top: 20px
    }
  }
  
  .conversionDetails {
    padding: 42px 20px;
    display: block;
    background: #f2f2f2;
    border-bottom: 1px solid #d1d1d1;
    font-family: Montserrat, Noto Sans HK, Hiragino Sans, Noto Sans CJK JP, Noto Sans JP, sans-serif
  }
  
  .conversionDetailsContent {
    width: 665px;
    margin: auto
  }
  
  @media screen and (max-width:767px) {
    .conversionDetailsContent {
      width: auto
    }
  }
  
  .bigConversionDetails {
    padding-top: 40px;
    padding-bottom: 40px;
    display: block;
    background: #f2f2f2;
    border-bottom: 1px solid #d1d1d1;
    font-family: Montserrat, Noto Sans HK, Hiragino Sans, Noto Sans CJK JP, Noto Sans JP, sans-serif
  }
  
  .bigConversionDetails .bigConversionDetailsContent {
    width: 430px;
    margin: auto
  }
  
  @media screen and (max-width:767px) {
    .bigConversionDetails .bigConversionDetailsContent {
      width: auto
    }
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritText {
    font-size: 22px;
    margin-bottom: 10px
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-left: 20px;
    padding-right: 20px;
    max-width: 768px;
    margin: auto auto 24px
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritRow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  
  @media screen and (min-width:768px) {
    .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer {
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap
    }
  }
  
  @media screen and (max-width:767px) {
    .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritRow {
      width: 100%
    }
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem {
    width: 100%;
    height: 170px;
    padding: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    margin: 16px
  }
  
  @media screen and (min-width:768px) {
    .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem {
      margin-left: 32px;
      width: 156px;
      height: 145px
    }
  }
  
  @media screen and (max-width:767px) {
    .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem {
      font-size: 14px;
      height: 146px;
      margin: 7px
    }
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem:hover {
    background-color: #e0e0e0
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem svg {
    height: 50px;
    margin-bottom: 10px;
    background-image: url(path/to/icon.png);
    background-repeat: no-repeat;
    background-position: 50%
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem .text {
    font-size: 14px;
    font-weight: 700;
    color: #333;
    text-align: center
  }
  
  .bigConversionDetails .bigConversionDetailsContent .meritBoxContainer .meritBoxItem .big-font {
    font-size: 21px
  }
  
  .conversionMerit .meritTxtContainer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  
  @media screen and (max-width:767px) {
    .conversionMerit .meritTxtContainer {
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      padding-left: 27px;
      padding-right: 27px;
      margin-top: 23px
    }
  }
  
  .meritText {
    font-size: 16px;
    margin-bottom: 10px
  }
  
  @media screen and (min-width:768px) {
    .meritText .meritNotice {
      width: 780px
    }
  }
  
  .meritNotice {
    font-size: 12px;
    display: table;
    margin-left: 10px
  }
  
  .meritBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 6px;
    margin-bottom: 10px
  }
  
  @media screen and (max-width:767px) {
    .meritBox {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      position: relative;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center
    }
  }
  
  .meritBox .meritBoxItem {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    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;
    font-size: 12px;
    padding: 9px 0;
    background: #d6d6d6;
    cursor: pointer
  }
  
  @media screen and (max-width:767px) {
    .meritBox .meritBoxItem {
      font-size: 12px;
      -webkit-box-flex: inherit;
      -ms-flex: inherit;
      flex: inherit;
      text-align: center;
      width: calc(50% - 6px);
      padding: 4px 0
    }
  }
  
  .meritBox .meritBoxItem:hover {
    background-color: #e0e0e0
  }
  
  .modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%!important;
    height: 100%!important;
    overflow: auto;
    background-color: rgba(0, 0, 0, .4);
    z-index: 9999
  }
  
  .modal .modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    width: 100%;
    max-width: 853px;
    background-color: #fff;
    border-radius: 10px;
    padding: 55px 105px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #5a5a5a;
    max-height: 80%;
    overflow-x: auto
  }
  
  @media screen and (max-width:767px) {
    .modal .modal-content {
      min-height: 70%;
      width: 90%;
      padding: 55px 35px;
      font-size: 14px!important
    }
    .modal .modal-content .modal-title {
      font-size: 18px!important
    }
  }
  
  .modal .modal-content .modal-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  
  .modal .modal-content .modal-image img {
    display: block;
    padding-top: 20px
  }
  
  .modal .modal-content p {
    margin-top: 20px
  }
  
  .modal .modal-content .modal-title {
    font-weight: 400;
    font-family: Hiragino Kaku Gothic ProN;
    font-size: 25px;
    margin-bottom: 10px;
    text-align: center;
    color: #000;
    margin-top: 60px
  }
  
  .modal .modal-content .modal-title:first-of-type {
    margin-top: 0
  }
  
  .modal .modal-content .close {
    position: absolute;
    top: 30px;
    right: 30px;
    display: inline-block;
    padding: 10px
  }
  
  .modal .modal-content .close:focus, .modal .modal-content .close:hover {
    color: #000;
    text-decoration: none;
    cursor: pointer
  }
  
  .modal .modal-content a {
    color: #000;
    text-decoration: underline
  }
  
  .modal .modal-content a:hover {
    text-decoration: none
  }
  
  .normalLink {
    font-size: 14px;
    color: inherit;
    text-decoration: underline;
    display: inline-block;
    padding-right: 15px;
    background: url(/assets/img/allow-right-b.svg) no-repeat 100%;
    background-size: 6px auto;
    line-height: 2
  }
  
  .normalLink:hover {
    text-decoration: none
  }
  
  .technology {
    background-color: #fff
  }
  
  .technologyInner {
    text-align: center;
    padding: 120px 0 80px;
    z-index: 1;
    position: relative
  }
  
  @media screen and (min-width:768px) {
    .technologyInner {
      padding: 200px 0
    }
  }
  
  .technologyTitle {
    font-size: 24px;
    line-height: 1.8;
    margin-bottom: 64px;
    text-align: left;
    width: 325px;
    margin-left: auto;
    margin-right: auto;
    padding: 0
  }
  
  @media screen and (min-width:768px) {
    .technologyTitle {
      font-size: 40px;
      line-height: 2;
      margin-bottom: 100px;
      text-align: center;
      width: 100%
    }
  }
  
  .technologyItem {
    text-align: left;
    font-size: 16px;
    line-height: 1.6;
    width: 100%
  }
  
  @media screen and (min-width:768px) {
    .technologyItem {
      font-size: 21px;
      border: none
    }
  }
  
  @media screen and (min-width:768px) {
    .technologyItem .imgWrap {
      height: 80px;
      margin-bottom: 0
    }
  }
  
  .technologyItem .imgWrap img {
    width: 45px;
    display: block;
    margin-bottom: 20px
  }
  
  @media screen and (min-width:768px) {
    .technologyItem .imgWrap img {
      width: 40px;
      margin-bottom: 0
    }
  }
  
  .technologyList {
    margin: 0 auto;
    width: 325px
  }
  
  @media screen and (min-width:768px) {
    .technologyList {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 722px
    }
    .technologyList .left {
      width: calc(50% - 30px);
      margin-right: 60px;
      display: inline-block
    }
    .technologyList .right {
      width: 50%;
      display: inline-block
    }
  }
  
  @media screen and (min-width:768px) {
    .technologyList .left .technologyItem:first-of-type .imgWrap {
      padding-top: 10px
    }
    .technologyList .left .technologyItem:first-of-type .imgWrap img {
      width: 43px
    }
  }
  
  .technologyRect {
    width: 8px;
    height: 8px;
    border: 1px solid #707070;
    margin-top: 25px
  }
  
  @media screen and (min-width:768px) {
    .technologyRect {
      width: 18px;
      height: 18px
    }
  }
  
  .technologyItemDetail {
    color: #5a5a5a;
    margin-bottom: 70px;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  
  @media screen and (min-width:768px) {
    .technologyItemDetail {
      font-size: 16px
    }
  }
  
  .borderNone {
    border: none!important
  }
  
  .technologyImage {
    z-index: 0;
    background: url(/assets/img/product/deep/bg-right.png) repeat-x 0 0;
    background-size: 1px 100%;
    position: relative;
    height: 300px;
    margin-top: -10px
  }
  
  @media screen and (min-width:768px) {
    .technologyImage {
      height: 540px
    }
  }
  
  .technologyImage img {
    position: absolute;
    right: 0;
    height: 100%;
    width: auto;
    max-width: none;
    right: -155px
  }
  
  @media screen and (min-width:768px) {
    .technologyImage img {
      height: 540px;
      right: 0
    }
  }
  
  .technologyImage:before {
    background: #000;
    position: absolute;
    content: "";
    display: block;
    width: 50%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: 1px 100%
  }
  
  .treatment {
    background-color: #000;
    color: #fff;
    padding-top: 60px
  }
  
  @media screen and (min-width:768px) {
    .treatment {
      padding-top: 110px
    }
  }
  
  .treatmentUi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 23px;
    font-size: 14px;
    margin-bottom: 80px
  }
  
  .treatmentUi a {
    color: #fff
  }
  
  @media screen and (min-width:768px) {
    .treatmentUi {
      font-size: 18px;
      gap: 60px;
      margin-bottom: 144px
    }
  }
  
  .treatmentUiItemLink {
    display: inline-block;
    padding: 5px 0
  }
  
  .treatmentUiItemLink:after {
    content: "";
    display: inline-block;
    margin-left: 8px;
    width: 0;
    height: 0;
    border-color: #fff transparent transparent;
    border-style: solid;
    border-width: 7px 4.5px 0;
    position: relative;
    top: -3px
  }
  
  .treatmentIntroduction {
    max-width: 1050px;
    margin: 0 auto 120px;
    padding: 40px 25px 0
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroduction {
      margin-bottom: 200px
    }
  }
  
  .treatmentIntroductionTitle {
    position: relative
  }
  
  .treatmentIntroductionTitleCategory {
    font-size: 14px;
    margin-bottom: 12px
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroductionTitleCategory {
      font-size: 16px;
      margin-bottom: 23px;
      text-align: center
    }
  }
  
  .treatmentIntroductionTitleCopy {
    font-size: 24px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroductionTitleCopy {
      font-size: 40px;
      line-height: 2;
      text-align: center
    }
  }
  
  @media screen and (max-width:767px) {
    .treatmentIntroductionImage {
      margin-left: -87px
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroductionImage {
      text-align: center;
      margin-top: -120px;
      margin-left: -104px
    }
  }
  
  .treatmentIntroductionImage img {
    width: 765px;
    max-width: none
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroductionImage img {
      width: 1556px;
      max-width: none
    }
  }
  
  .treatmentIntroductionDescription {
    font-size: 14px;
    line-height: 1.8;
    margin-top: -92px;
    color: #e5e5e5
  }
  
  @media screen and (min-width:768px) {
    .treatmentIntroductionDescription {
      font-size: 18px;
      margin-top: -210px;
      width: 529px;
      margin-left: 58px
    }
  }
  
  .treatmentTechnology {
    padding: 0 25px;
    max-width: 1050px;
    margin: 0 auto 120px;
    font-size: 14px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnology {
      font-size: 18px;
      margin-bottom: 200px
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyInner {
      padding-left: 58px
    }
  }
  
  .treatmentBlocktitle {
    position: relative
  }
  
  .treatmentBlocktitleCategory {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 13px
  }
  
  @media screen and (min-width:768px) {
    .treatmentBlocktitleCategory {
      margin-bottom: 20px
    }
  }
  
  .treatmentBlocktitleIcon {
    margin-right: 20px
  }
  
  @media screen and (min-width:768px) {
    .treatmentBlocktitleIcon {
      margin-right: 26px
    }
  }
  
  .treatmentBlocktitleIcon img {
    width: 38px
  }
  
  .treatmentBlocktitleText {
    font-size: 12px
  }
  
  @media screen and (min-width:768px) {
    .treatmentBlocktitleText {
      font-size: 14px
    }
  }
  
  .treatmentBlocktitleCopy {
    font-size: 16px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .treatmentBlocktitleCopy {
      font-size: 26px
    }
  }
  
  @media screen and (max-width:767px) {
    .treatmentTechnologyImage {
      margin-top: -74px;
      margin-left: -14px;
      margin-bottom: -93px
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyImage {
      margin-top: -374px;
      margin-left: 416px;
      margin-bottom: -383px
    }
  }
  
  .treatmentTechnologyImage img {
    width: 529px;
    max-width: none
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyImage img {
      width: 1336px
    }
  }
  
  .treatmentTechnologyDescription {
    margin-bottom: 80px;
    color: #e5e5e5
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyDescription {
      width: 309px;
      margin-bottom: 120px
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentCompareMovieContainer {
      max-width: 890px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentCompareVideo {
      width: 50%
    }
  }
  
  .treatmentCompareVideo video {
    width: 100%
  }
  
  @media screen and (min-width:768px) {
    .treatmentCompareVideo video {
      border: 1px solid #707070
    }
  }
  
  @media screen and (max-width:767px) {
    .treatmentCompareVideo {
      margin-bottom: 10px
    }
  }
  
  .treatmentCompareVideoTitle {
    margin-bottom: 10px
  }
  
  @media screen and (min-width:768px) {
    .treatmentCompareVideoTitle {
      margin-bottom: 20px
    }
  }
  
  .treatmentCompareDescription {
    margin-top: 40px;
    color: #e5e5e5
  }
  
  @media screen and (min-width:768px) {
    .treatmentCompareDescription {
      margin-top: 50px;
      width: 530px
    }
  }
  
  .treatmentTechnologyImage2 {
    text-align: center
  }
  
  @media screen and (max-width:767px) {
    .treatmentTechnologyImage2 {
      margin-left: -160px
    }
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyImage2 {
      margin-top: -73px;
      margin-left: 170px
    }
  }
  
  .treatmentTechnologyImage2 img {
    width: 706px;
    max-width: none
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyImage2 img {
      width: 1160px
    }
  }
  
  .treatmentTechnologyDescription2 {
    color: #e5e5e5
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyDescription2 {
      width: 415px;
      margin-top: -300px
    }
  }
  
  .treatmentTechnologyNotice {
    margin-top: 80px;
    font-size:12px;
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnologyNotice {
      width: 415px;
      margin-top: 150px;
      font-size:14px;
    }
  }
  
  .treatmentTechnology2 {
    padding-bottom: 50px;
    margin-bottom: 0
  }
  
  @media screen and (min-width:768px) {
    .treatmentTechnology2 {
      padding-bottom: 40px
    }
  }
  
  .usability {
    background-color: #fff;
    padding-top: 161px;
    border-bottom: 1px solid #d1d1d1
  }
  
  @media screen and (min-width:768px) {
    .usability {
      padding-top: 200px
    }
  }
  
  .usabilityBlock1 {
    padding: 0 25px;
    max-width: 1050px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.8
  }
  
  @media screen and (max-width:767px) {
    .usabilityBlock1 {
      padding-bottom: 80px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityBlock1 {
      font-size: 18px;
      padding-bottom: 150px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityBlockInner {
      padding-left: 58px;
      padding-right: 58px
    }
  }
  
  .usabilityTitle {
    position: relative;
    z-index: 1
  }
  
  @media screen and (min-width:768px) {
    .usabilityTitle {
      text-align: center
    }
  }
  
  .usabilityTitleCategory {
    font-size: 14px;
    margin-bottom: 12px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .usabilityTitleCategory {
      margin-bottom: 24px;
      line-height: 2
    }
  }
  
  .usabilityTitleCopy {
    font-size: 24px;
    margin-bottom: 12px
  }
  
  @media screen and (min-width:768px) {
    .usabilityTitleCopy {
      font-size: 40px;
      margin-bottom: 40px
    }
  }
  
  .usabilityImage1 {
    text-align: center;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-left: -10px;
    margin-top: -30px
  }
  
  @media screen and (min-width:768px) {
    .usabilityImage1 {
      margin-top: -90px;
      margin-left: 140px
    }
  }
  
  .usabilityImage1 img {
    width: 413px;
    max-width: none
  }
  
  @media screen and (max-width:767px) {
    .usabilityImage1 img {
      -webkit-transform: rotate(3deg);
      transform: rotate(3deg)
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityImage1 img {
      width: 781px
    }
  }
  
  .usabilityFeature {
    position: relative
  }
  
  @media screen and (max-width:767px) {
    .usabilityFeature {
      margin-top: 440px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeature {
      margin-top: 800px
    }
  }
  
  @media screen and (max-width:767px) {
    .usabilityFeatureBlockTitleIcon img {
      height: 29px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockTitleIcon img {
      height: 39px
    }
  }
  
  @media screen and (max-width:767px) {
    .usabilityFeatureBlockTitleIcon {
      margin-bottom: 5px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockTitleIcon {
      margin-bottom: 31px
    }
  }
  
  .usabilityFeatureBlockTitle {
    font-size: 16px;
    margin-bottom: 5px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockTitle {
      font-size: 26px;
      margin-bottom: 26px
    }
  }
  
  @media screen and (max-width:767px) {
    .usabilityFeatureBlock {
      margin-bottom: 80px
    }
  }
  
  .usabilityFeatureBlockDescription {
    color: #5a5a5a
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockSmallWrap .usabilityFeatureBlockDescription {
      width: auto
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockWrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-top: 80px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 70px
    }
  }
  
  @media screen and (min-width:1024px) {
    .usabilityFeatureBlockWrap {
      gap: 20px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      margin-top: 180px;
      margin-bottom: 100px;
      gap: 115px;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row
    }
    .usabilityFeatureBlockWrap .usabilityFeatureBlock1 {
      width: 360px
    }
    .usabilityFeatureBlockWrap .usabilityFeatureBlock2 {
      width: 415px
    }
  }
  
  @media screen and (min-width:1024px) and (min-width:768px) {
    .usabilityFeatureBlockWrap .usabilityFeatureBlock2 .usabilityFeatureBlockTitle {
      margin-right: -30px
    }
  }
  
  .usabilityFeatureBlockSmallWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 23px
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockSmallWrap {
      margin-top: 80px;
      gap: 115px
    }
  }
  
  @media screen and (min-width:1024px) {
    .usabilityFeatureBlockSmallWrap {
      margin-top: 0
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockSmall1 {
      width: 360px
    }
  }
  
  @media screen and (min-width:768px) {
    .usabilityFeatureBlockSmall2 {
      width: 415px
    }
  }
  
  .howto {
    background-color: #fff;
    padding: 40px 25px 40px
  }
  
  @media screen and (min-width:768px) {
    .howto {
      padding-top: 50px;
      padding-bottom: 35px
    }
  }
  
  .howtoTitle {
    text-align: center;
    font-size: 18px;
    margin-bottom: 12px
  }
  
  @media screen and (min-width:768px) {
    .howtoTitle {
      font-size: 36px;
      margin-bottom: 20px
    }
  }
  
  .howtoCopy {
    color: #5a5a5a;
    text-align: center;
    font-size: 14px;
    margin-bottom: 40px
  }
  
  @media screen and (min-width:768px) {
    .howtoCopy {
      font-size: 18px;
      margin-bottom: 100px
    }
  }
  
  .howtoVideo {
    text-align: center;
    position: relative;
    margin-bottom: 62px
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideo {
      margin-bottom: 180px;
      height: 409px;
      position: relative
    }
  }
  
  .howtoVideo:hover .howtoVideoThumb {
    -webkit-filter: brightness(.5);
    filter: brightness(.5)
  }
  
  .howtoVideo .howtoVideoThumb {
    cursor: pointer;
    -webkit-transition: .3s;
    transition: .3s;
    height: 100%;
    position: relative
  }
  
  .howtoVideo .howtoVideoThumb img {
    max-width: none;
    width: 100%
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideo .howtoVideoThumb img {
      position: absolute;
      height: 100%;
      width: auto;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%)
    }
  }
  
  .howtoVideo .sp {
    display: block
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideo .sp {
      display: none
    }
  }
  
  .howtoVideo .pc {
    display: none
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideo .pc {
      display: block
    }
  }
  
  .howtoVideoPlay {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -42%);
    transform: translate(-50%, -42%);
    cursor: pointer;
    color: #fff
  }
  
  .howtoVideoPlay img {
    width: 77px;
    height: 77px
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideoPlay img {
      width: 142px;
      height: 142px
    }
  }
  
  .howtoVideoPlay .howtoVideoPlayText {
    margin-top: 16px;
    font-size: 16px
  }
  
  @media screen and (min-width:1024px) {
    .howtoVideoPlay .howtoVideoPlayText {
      margin-top: 20px;
      font-size: 20px
    }
  }
  
  .howtoUse {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
  }
  
  @media screen and (min-width:768px) {
    .howtoUse {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      gap: 26px;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap
    }
  }
  
  @media screen and (min-width:1024px) {
    .howtoUse {
      -ms-flex-wrap: initial;
      flex-wrap: nowrap;
      max-width: 1000px;
      margin: 0 auto;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      gap: 46px
    }
  }
  
  .howtoUseBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
  
  @media screen and (min-width:768px) {
    .howtoUseBlock {
      width: calc(50% - 26px);
      margin-bottom: 20px
    }
  }
  
  @media screen and (min-width:1024px) {
    .howtoUseBlock {
      width: auto;
      margin-bottom: 0
    }
  }
  
  .howtoUseBlockTitle {
    font-size: 16px;
    margin-bottom: 13px
  }
  
  @media screen and (min-width:768px) {
    .howtoUseBlockTitle {
      font-size: 21px;
      margin-bottom: 26px
    }
  }
  
  .howtoUseBlockDescription {
    margin-bottom: 18px;
    color: #5a5a5a
  }
  
  @media screen and (min-width:768px) {
    .howtoUseBlockDescription {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      margin-bottom: 43px
    }
  }
  
  .howtoUseIllustration {
    text-align: center
  }
  .howtoNotice {
    margin-top: 100px;
    color: #5A5A5A;
    font-size: 12px;
  }
  @media screen and (min-width:768px) {
    .howtoNotice {
      max-width: 1000px;
      font-size: 14px;
      margin: 165px auto 0;
    }
  }
  .design, .designTop {
    background-color: #fff
  }
  
  .designTopInner {
    position: relative
  }
  
  @media screen and (min-width:768px) {
    .designTopInner {
      position: relative;
      height: 774px
    }
  }
  
  .designMainVisual {
    position: relative
  }
  
  @media screen and (min-width:768px) {
    .designMainVisual {
      height: 100%
    }
  }
  
  .designMainVisual img {
    max-width: none
  }
  
  @media screen and (max-width:767px) {
    .designMainVisual img {
      width: 100%;
      height: auto
    }
    .designMainVisual img.sp {
      display: inline-block
    }
    .designMainVisual img.pc {
      display: none
    }
  }
  
  @media screen and (min-width:768px) {
    .designMainVisual img {
      position: absolute;
      left: 50%;
      height: 100%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      margin-left: -100px
    }
    .designMainVisual img.sp {
      display: none
    }
    .designMainVisual img.pc {
      display: inline-block
    }
  }
  
  @media screen and (min-width:1024px) {
    .designMainVisual img {
      margin-left: 0
    }
  }
  
  @media screen and (min-width:768px) {
    .designMainVisual {
      text-align: center
    }
  }
  
  .designTitle {
    color: #fff;
    position: absolute;
    top: 80px;
    left: 25px
  }
  
  @media screen and (min-width:1024px) {
    .designTitle {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      text-align: center;
      padding-top: 65px;
      top: 0
    }
  }
  
  .designTitleCategory {
    font-size: 14px;
    margin-bottom: 12px
  }
  
  @media screen and (min-width:1024px) {
    .designTitleCategory {
      margin-bottom: 24px
    }
  }
  
  .designTitleCopy {
    font-size: 24px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .designTitleCopy {
      font-size: 40px
    }
  }
  
  @media screen and (min-width:1024px) {
    .designTitleCopy {
      line-height: 2
    }
  }
  
  .designConcept {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  
  @media screen and (max-width:767px) {
    .designConcept {
      padding: 0 25px;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      gap: 80px;
      margin-top: 120px
    }
  }
  
  @media screen and (min-width:768px) {
    .designConcept {
      padding: 0 25px;
      max-width: 1024px;
      margin: 160px auto 0;
      gap: 25px
    }
  }
  
  @media screen and (min-width:1024px) {
    .designConcept {
      padding: 0
    }
  }
  
  .designConceptBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  
  .designConceptBlockTitle {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 20px;
    margin-top: 30px
  }
  
  @media screen and (min-width:768px) {
    .designConceptBlockTitle {
      font-size: 21px;
      margin-bottom: 36px;
      margin-top: 40px
    }
  }
  
  .designConceptBlockTitleCopy {
    color: #5a5a5a;
    font-size: 14px;
    line-height: 1.8
  }
  
  @media screen and (min-width:768px) {
    .designConceptBlockTitleCopy {
      font-size: 18px
    }
  }
  
  .designConceptBlockDescriptionImage img {
    width: 100%;
    max-width: none
  }
  
  @media screen and (max-width:767px) {
    .designConcept.sub {
      margin-top: 80px;
      gap: 0
    }
  }
  
  @media screen and (min-width:768px) {
    .designConcept.sub {
      margin-top: 80px
    }
  }
  
  @media screen and (max-width:767px) {
    .designConceptBlock.sub .frame {
      display: none
    }
    .designConceptBlock.sub .map {
      margin-bottom: 32px
    }
  }
  
  @media screen and (min-width:768px) {
    .designConceptBlock.sub .map.frame {
      opacity: 0
    }
    .designConceptBlock.sub .map.frame img {
      width: calc(33% - 25px);
      margin-bottom: 27px
    }
  }
  
  .designJapanDescription {
    line-height: 1.8;
    color: #5a5a5a
  }
  
  @media screen and (max-width:767px) {
    .designJapanDescription {
      margin-top: 19px
    }
  }
  
  @media screen and (min-width:768px) {
    .designJapanDescription {
      margin-top: 27px;
      font-size: 18px
    }
  }
  
  .designJapanText {
    font-size: 16px
  }
  
  @media screen and (min-width:768px) {
    .designJapanText {
      font-size: 21px;
      margin-top: 27px
    }
  }
  
  @media screen and (min-width:768px) {
    .mapBock {
      width: calc(33% - 25px);
      -webkit-box-flex: initial;
      -ms-flex: initial;
      flex: initial
    }
  }
  
  .features {
    background: #000;
    padding-top: 70px;
    color: #fff
  }
  
  @media screen and (min-width:768px) {
    .features {
      padding-top: 200px
    }
  }
  
  .features .f_section {
    margin-bottom: 100px
  }
  
  .features .f_section:last-child {
    margin-bottom: 0
  }
  
  @media screen and (min-width:768px) {
    .features .f_section {
      margin-bottom: 200px
    }
  }
  
  @media screen and (min-width:768px) {
    .features .f_section.flex {
      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
    }
  }
  
  @media screen and (min-width:768px) {
    .features .f_section.flex.reverse {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse
    }
  }
  
  .features .f_section.vertical .txt_area {
    width: 85%
  }
  
  @media screen and (min-width:768px) {
    .features .f_section.vertical .txt_area {
      width: 80%
    }
  }
  
  @media screen and (min-width:768px) {
    .features .f_section.vertical .txt_area .disc {
      margin-bottom: 50px
    }
  }
  
  .features .f_section.vertical .img_area {
    width: 100%
  }
  
  .features .txt_area {
    width: 85%;
    margin: 0 auto
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area {
      width: 50%
    }
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .txt_inner {
      max-width: 550px;
      margin-left: auto;
      padding: 0 0 0 50px
    }
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .txt_inner.reverse {
      margin-left: 0;
      margin-right: auto;
      padding: 0 50px 0 0
    }
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .txt_inner.vertical {
      margin: auto;
      padding: 0
    }
  }
  
  .features .txt_area .midashi {
    font-size: 24px;
    margin-bottom: 35px
  }
  
  .features .txt_area .midashi.center {
    text-align: center
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .midashi {
      font-size: 32px;
      margin-bottom: 45px
    }
  }
  
  .features .txt_area .sub {
    font-size: 14px;
    margin-bottom: 15px
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .sub {
      font-size: 20px;
      margin-bottom: 140px
    }
  }
  
  .features .txt_area .disc {
    font-size: 14px;
    margin-bottom: 50px
  }
  
  @media screen and (min-width:768px) {
    .features .txt_area .disc {
      font-size: 16px;
      margin-bottom: 0
    }
  }
  
  .features .img_area {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    overflow: hidden
  }
  
  @media screen and (min-width:768px) {
    .features .img_area {
      width: 50%
    }
  }
  
  .features .fs1 .img_area img {
    width: 150%;
    max-width: unset;
    -webkit-transform: translateX(10%);
    transform: translateX(10%)
  }
  
  @media screen and (min-width:768px) {
    .features .fs1 .img_area img {
      width: 135%;
      -webkit-transform: translateX(10%);
      transform: translateX(10%)
    }
  }
  
  .features .fs3 .img_area img {
    width: 95%;
    max-width: unset;
    -webkit-transform: translateX(10%);
    transform: translateX(10%)
  }
  
  @media screen and (min-width:768px) {
    .features .fs3 .img_area img {
      width: 330px;
      display: block;
      margin-left: auto;
      margin-right: 30px;
      -webkit-transform: translateX(0);
      transform: translateX(0)
    }
  }
  
  @media screen and (min-width:1024px) {
    .features .fs3 .img_area img {
      max-width: 550px;
      width: 90%;
      margin-right: 30px
    }
  }
  
  .features .fs4 .img_area img {
    width: 80%;
    margin-bottom: 50px
  }
  
  @media screen and (min-width:768px) {
    .features .fs4 .img_area img {
      width: auto;
      -webkit-transform: translateX(0);
      transform: translateX(0)
    }
  }
  
  .features .fs5 .img_area img {
    width: 140%;
    max-width: unset;
    -webkit-transform: translateX(10%);
    transform: translateX(10%)
  }
  
  @media screen and (min-width:768px) {
    .features .fs5 .img_area img {
      width: 100%;
      -webkit-transform: translateX(0);
      transform: translateX(0)
    }
  }
  
  .interval {
    background: #fff
  }
  
  .interval .interval_inner {
    height: 100vh;
    background: url(/assets/img/product/deep/bg_interval.png) no-repeat 50%;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
  }
  
  .interval .interval_inner .txt_inner {
    color: #fff;
    width: 100%;
    max-width: 1000px;
    padding: 0 7.5%
  }
  
  @media screen and (min-width:1024px) {
    .interval .interval_inner .txt_inner {
      padding: 0
    }
  }
  
  .interval .interval_inner .txt_inner .midashi {
    font-size: 24px;
    margin-bottom: 55px;
    width: 100%
  }
  
  @media screen and (min-width:768px) {
    .interval .interval_inner .txt_inner .midashi {
      margin-bottom: 85px;
      font-size: 32px
    }
  }
  
  .interval .interval_inner .txt_inner .disc {
    font-size: 14px;
    width: 100%;
    max-width: 440px;
    margin-bottom: 150px
  }
  
  @media screen and (min-width:768px) {
    .interval .interval_inner .txt_inner .disc {
      font-size: 16px
    }
  }
  
  .howTo {
    background: #fff
  }
  
  .howTo .howTo_inner {
    width: 100%;
    max-width: 1000px;
    padding: 100px 7.5% 0;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .howTo .howTo_inner {
      padding: 220px 7.5% 0
    }
  }
  
  @media screen and (min-width:1024px) {
    .howTo .howTo_inner {
      padding: 220px 0 0
    }
  }
  
  .howTo .howTo_inner .sub_midashi {
    text-align: center;
    font-size: 14px;
    margin-bottom: 15px
  }
  
  @media screen and (min-width:768px) {
    .howTo .howTo_inner .sub_midashi {
      text-align: left;
      font-size: 16px;
      margin-bottom: 60px
    }
  }
  
  .howTo .howTo_inner .midashi {
    text-align: center;
    font-size: 24px;
    margin-bottom: 25px
  }
  
  @media screen and (min-width:768px) {
    .howTo .howTo_inner .midashi {
      text-align: left;
      font-size: 32px;
      margin-bottom: 45px;
      line-height: 1.8
    }
  }
  
  .howTo .howTo_inner .disc {
    font-size: 14px;
    margin-bottom: 40px
  }
  
  @media screen and (min-width:768px) {
    .howTo .howTo_inner .disc {
      font-size: 16px;
      margin-bottom: 65px
    }
  }
  
  .howTo .howTo_inner .movie .movie_img {
    position: relative;
    cursor: pointer
  }
  
  .howTo .howTo_inner .movie .movie_img:hover>.movie_bg {
    -webkit-transform: scale(.98);
    transform: scale(.98);
    -webkit-filter: brightness(50%);
    filter: brightness(50%)
  }
  
  .howTo .howTo_inner .movie .movie_img img {
    -webkit-transition: .3s;
    transition: .3s
  }
  
  .howTo .howTo_inner .movie .movie_img img.play_icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
  }
  
  .faq {
    background: #fff
  }
  
  .faq .faq_inner {
    width: 100%;
    max-width: 1000px;
    padding: 100px 7.5% 0;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .faq .faq_inner {
      padding: 220px 7.5% 0
    }
  }
  
  @media screen and (min-width:1024px) {
    .faq .faq_inner {
      padding: 220px 0 0
    }
  }
  
  .faq .faq_inner .sub_midashi {
    text-align: center;
    font-size: 14px;
    margin-bottom: 15px
  }
  
  @media screen and (min-width:768px) {
    .faq .faq_inner .sub_midashi {
      font-size: 16px;
      margin-bottom: 20px
    }
  }
  
  .faq .faq_inner .midashi {
    text-align: center;
    font-size: 24px;
    margin-bottom: 40px
  }
  
  @media screen and (min-width:768px) {
    .faq .faq_inner .midashi {
      margin-bottom: 70px
    }
  }
  
  .faq .swiper-container {
    overflow: hidden;
    padding-bottom: 0
  }
  
  @media screen and (min-width:768px) {
    .faq .swiper-container .swiper-slide {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex
    }
  }
  
  @media screen and (min-width:768px) {
    .faq .swiper-container .slider-img {
      width: 50%;
      text-align: right
    }
  }
  
  .faq .swiper-container .disc .faq_midashi {
    margin: 30px 0;
    font-size: 18px
  }
  
  @media screen and (min-width:768px) {
    .faq .swiper-container .disc .faq_midashi {
      font-size: 24px
    }
  }
  
  .faq .swiper-container .disc .comment {
    font-size: 14px
  }
  
  @media screen and (min-width:768px) {
    .faq .swiper-container .disc .comment {
      font-size: 16px
    }
  }
  
  @media screen and (min-width:768px) {
    .faq .swiper-container .disc {
      width: 50%;
      max-width: 470px;
      padding-left: 25px
    }
  }
  
  .other_faq {
    background: #fff;
    padding-top: 120px;
    padding-bottom: 120px
  }
  
  @media screen and (min-width:768px) {
    .other_faq {
      padding-top: 200px;
      padding-bottom: 200px
    }
  }
  
  .other_faq .other_faq_inner {
    width: 100%;
    max-width: 1000px;
    padding: 0 25px;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .other_faq .other_faq_inner {
      padding: 0 25px
    }
  }
  
  @media screen and (min-width:1024px) {
    .other_faq .other_faq_inner {
      padding: 0
    }
  }
  
  .other_faq .other_faq_inner .midashi {
    font-size: 18px;
    margin-bottom: 40px
  }
  
  @media screen and (min-width:768px) {
    .other_faq .other_faq_inner .midashi {
      font-size: 24px;
      margin-bottom: 60px
    }
  }
  
  .other_faq .other_faq_inner ul.ofList {
    overflow: hidden
  }
  
  .other_faq .other_faq_inner ul.ofList li {
    cursor: pointer;
    padding: 0 0 0 40px;
    background: url(/assets/img/icon-faq.svg) no-repeat left top 5px
  }
  
  .other_faq .other_faq_inner ul.ofList li.on-click {
    background: url(/assets/img/icon-faq-open.svg) no-repeat left top 5px
  }
  
  .other_faq .other_faq_inner ul.ofList li:hover>.question {
    border-bottom: 1px solid #000
  }
  
  .other_faq .other_faq_inner ul.ofList li .question {
    display: inline-block;
    font-size: 16px;
    margin-bottom: 20px;
    -webkit-transition: .3s;
    transition: .3s;
    border-bottom: 1px solid #fff
  }
  
  @media screen and (min-width:768px) {
    .other_faq .other_faq_inner ul.ofList li .question {
      font-size: 18px
    }
  }
  
  .other_faq .other_faq_inner ul.ofList li .answer {
    font-size: 14px;
    padding: 0 0 40px
  }
  
  .search {
    background: #fff;
    overflow: hidden
  }
  
  .search .search_inner {
    width: 100%;
    max-width: 1000px;
    padding: 100px 7.5% 0;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .search .search_inner {
      padding: 220px 7.5% 0
    }
  }
  
  @media screen and (min-width:1024px) {
    .search .search_inner {
      padding: 220px 0 0
    }
  }
  
  .search .search_inner .sub_midashi {
    text-align: center;
    font-size: 14px;
    margin-bottom: 15px
  }
  
  @media screen and (min-width:768px) {
    .search .search_inner .sub_midashi {
      text-align: left;
      font-size: 16px;
      margin-bottom: 60px
    }
  }
  
  .search .search_inner .midashi {
    text-align: center;
    font-size: 24px;
    margin-bottom: 25px
  }
  
  @media screen and (min-width:768px) {
    .search .search_inner .midashi {
      text-align: left;
      font-size: 32px;
      margin-bottom: 45px;
      line-height: 1.8
    }
  }
  
  .search .search_inner .disc {
    font-size: 14px;
    margin-bottom: 40px
  }
  
  @media screen and (min-width:768px) {
    .search .search_inner .disc {
      font-size: 16px;
      margin-bottom: 65px
    }
  }
  
  .spec {
    background: #fafafa;
    overflow: hidden;
    padding: 40px 0 0
  }
  
  @media screen and (min-width:768px) {
    .spec {
      padding: 60px 0
    }
  }
  
  .spec .spec_inner {
    width: 100%;
    max-width: 1024px;
    padding: 34px 25px 60px;
    margin: 0 auto
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 0 25px
    }
  }
  
  @media screen and (min-width:1024px) {
    .spec .spec_inner {
      margin: 0 auto;
      padding: 0
    }
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .midashi_box {
      width: 100px
    }
  }
  
  @media screen and (min-width:1024px) {
    .spec .spec_inner .midashi_box {
      width: 235px
    }
  }
  
  .spec .spec_inner .sub_midashi {
    text-align: left;
    font-size: 14px;
    margin-bottom: 23px;
    color: #707070
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .sub_midashi {
      text-align: left;
      font-size: 14px;
      margin-bottom: 60px
    }
  }
  
  .spec .spec_inner .midashi {
    text-align: left;
    font-size: 20px
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .midashi {
      text-align: left;
      font-size: 24px;
      margin-bottom: 0;
      line-height: 1.8
    }
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box {
      width: calc(100% - 150px);
      max-width: 726px;
      margin-top: 10px
    }
  }
  
  @media screen and (min-width:1024px) {
    .spec .spec_inner .spec_box {
      width: calc(100% - 235px)
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner {
    border-top: 1px solid #bebebe;
    padding: 20px 0 15px
  }
  
  .spec .spec_inner .spec_box .spec_box_inner:last-child {
    border-bottom: 1px solid #bebebe
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner {
      padding-top: 22px;
      padding-bottom: 22px
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner .product_name {
    color: #454545;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 15px;
    border-left: 5px solid #000;
    padding-left: 5px;
    line-height: 1
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner .product_name {
      font-size: 16px;
      margin-bottom: 0
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner .midashi_box {
    margin-bottom: 50px
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner ul.spec_list {
      margin-top: 18px
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li {
    font-size: 14px;
    color: #707070;
    margin-bottom: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li {
      font-size: 16px;
      margin-bottom: 8px
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li:last-child {
    margin-bottom: 0
  }
  
  .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li p.category {
    width: 90px
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li p.category {
      width: 160px
    }
  }
  
  .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li p.value {
    width: calc(100% - 90px)
  }
  
  @media screen and (min-width:768px) {
    .spec .spec_inner .spec_box .spec_box_inner ul.spec_list li p.value {
      width: calc(100% - 150px)
    }
  }
  
  .other_link {
    background: #292929;
    color: #fff;
    overflow: hidden
  }
  
  .other_link .other_link_inner {
    width: 100%;
    max-width: 1000px;
    padding: 60px 7.5%;
    margin: auto
  }
  
  @media screen and (min-width:768px) {
    .other_link .other_link_inner {
      padding: 70px 7.5% 60px;
      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
    }
  }
  
  @media screen and (min-width:1024px) {
    .other_link .other_link_inner {
      padding: 70px 0 60px
    }
  }
  
  .other_link .other_link_inner .link {
    display: block;
    text-align: center;
    width: 100%;
    max-width: 250px;
    margin: 0 auto 40px
  }
  
  @media screen and (min-width:768px) {
    .other_link .other_link_inner .link {
      width: 30%
    }
  }
  
  .other_link .other_link_inner .link:hover .link_image>img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
  }
  
  .other_link .other_link_inner .link:last-child {
    margin: 0 auto
  }
  
  .other_link .other_link_inner .link .link_image {
    height: 60px;
    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
  }
  
  .other_link .other_link_inner .link .link_image.info img {
    width: 35px
  }
  
  .other_link .other_link_inner .link .link_image.mail img {
    width: 42px
  }
  
  .other_link .other_link_inner .link .link_image.sns img {
    margin: 0 12px
  }
  
  .other_link .other_link_inner .link .midashi {
    color: #fff;
    font-size: 21px;
    font-weight: 400;
    margin: 5px 0
  }
  
  .other_link .other_link_inner .link .disc {
    color: #c3c3c3;
    font-size: 14px
  }
  
  .anchorLinkContainer {
    position: relative
  }
  
  .anchorLinkContainer .anchorLink {
    position: absolute
  }
  
  @media screen and (max-width:767px) {
    .anchorLinkContainer .anchorLink {
      top: 0
    }
  }
  
  @media screen and (min-width:768px) {
    .anchorLinkContainer .anchorLink {
      top: -90px
    }
  }
  
  #movieModal.p-modal {
    display: none;
    overflow: hidden;
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999999
  }
  
  #movieModal.p-modal .p-modal_bg {
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, .8)
  }
  
  #movieModal.p-modal .p-modal_inner {
    width: calc(100% - 50px);
    max-width: 900px;
    height: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
  }
  
  #movieModal.p-modal .p-modal_content {
    background: #000;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    position: relative;
    margin: 0 auto;
    z-index: 10
  }
  
  #movieModal.p-modal iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
  }
  
  #movieModal.p-modal .p-modal_close {
    position: absolute;
    left: auto;
    right: 0;
    top: -16px;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    background: none;
    border: none;
    z-index: 100;
    width: 40px;
    height: 40px;
    cursor: pointer
  }
  
  #movieModal.p-modal .p-modal_close:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
  }
  
  #movieModal.p-modal .p-modal_close:after, #movieModal.p-modal .p-modal_close:before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: 50%
  }
  
  #movieModal.p-modal .p-modal_close:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
  }
  
  .no_wrap {
    white-space: nowrap
  }
  
  @media screen and (min-width:1024px) {
    .inductionArea.upper {
      display: block
    }
  }
  
  @media screen and (min-width:1024px) {
    .inductionArea.upper .inductionAreaWrapper {
      display: block;
      max-width: 550px;
      margin: 0 auto
    }
  }
  
  .jaccsInfo {
    font-size: 12px;
    margin-bottom: 12px
  }
  
  .jaccsInfo span {
    color: #000;
    text-decoration: underline
  }
  
  .jaccsInfo span:hover {
    cursor: pointer
  }
  
  .modal .modal-content ul.jaccsStep {
    margin-top: 20px
  }
  
  .modal .modal-content ul.jaccsStep li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px
  }
  
  .modal .modal-content ul.jaccsStep li span {
    position: absolute;
    left: 0;
    top: 0
  }
  
  @media screen and (min-width:768px) {
    .mainVisual .mainVisualGif img.large, .mainVisual .mainVisualGif img.middle, .mainVisual .mainVisualGif img.small {
      display: none
    }
    .mainVisual .mainVisualTitleInner {
      position: absolute;
      left: auto;
      text-align: center;
      bottom: 60px;
      padding-top: 0;
      width: 100%
    }
  }
  
  @media screen and (min-width:1366px) {
    .mainVisual .mainVisualGif img {
      height: auto;
      bottom: auto;
      top: 0;
      width: 100%
    }
    .mainVisual .mainVisualTitle .copy.summary {
      margin-bottom: 0
    }
    .mainVisual .mainVisualGif img.small {
      display: block
    }
    .mainVisual .mainVisualGif img.large, .mainVisual .mainVisualGif img.middle, .mainVisual .mainVisualGif img.tab {
      display: none
    }
  }
  
  @media screen and (min-width:1536px) {
    .mainVisual .mainVisualGif img.middle {
      display: block
    }
    .mainVisual .mainVisualGif img.large, .mainVisual .mainVisualGif img.small, .mainVisual .mainVisualGif img.tab {
      display: none
    }
  }
  
  @media screen and (min-width:1920px) {
    .mainVisual .mainVisualGif img.large {
      display: block
    }
    .mainVisual .mainVisualGif img.middle, .mainVisual .mainVisualGif img.small, .mainVisual .mainVisualGif img.tab {
      display: none
    }
  }