@charset "utf-8";
/*
 set break point
 */
/*
 Width / Height Settings
 */
/*
 SP Liquid Value
 */
/*
 PC Liquid Value
 */
/*
 Line Height
 */
@media screen and (max-width: 750px) {
  /*------------------------------------------------------------------------------------------
   *
   *
   common_sp.css
   *
   *
   ------------------------------------------------------------------------------------------ */
  /*------------------------------------------------------------------------------------------
   *
   *
   max-width : 750px
   *
   *
   ------------------------------------------------------------------------------------------ */
  /* --------------------------------------------------
   *
   header
   *
   -------------------------------------------------- */
  /* --------------------------------------------------
   *
   footer
   *
   -------------------------------------------------- */
  /* --------------------------------------------------
   *
   .foot_menu
   *
   -------------------------------------------------- */
  /* --------------------------------------------------
   *
   #foot_nav
   *
   -------------------------------------------------- */
  body {
    z-index: 10;
    overflow-x: hidden;
  }
  br {
    display: none;
  }
  br.sp {
    display: inherit !important;
  }
  img.pc {
    display: none !important;
  }
  .switch_pc, .switch_pc * {
    display: none !important;
  }
  .page_sub {
    padding-top: 13.33333vw;
  }
  header {
    width: 100vw;
    height: 13.33333vw;
    border-bottom: 1px solid #eae8e9;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
  }
  header h1 {
    width: 100vw;
    position: fixed;
    z-index: 20;
  }
  header h1 img {
    width: 34vw;
    position: relative;
    top: 0;
    left: 0;
  }
  #home header h1, #case header h1, #story header h1, #raw header h1, #privacy header h1,#lp header h1 img {
    height: 13.33333vw;
    background-color: #fff;
  }
  #home header h1 img, #case header h1 img, #story header h1 img, #raw header h1 img, #privacy header h1 img {
    top: 2vw;
    left: 4vw;
  }
  #lp header h1 img{
    left: 4vw;
  }
  header .buy {
    width: 13.33333vw;
    height: 13.33333vw;
    text-align: center;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
  }
  header .buy .ico svg {
    width: 6.13333vw;
  }
  header .buy a {
    width: 13.33333vw;
    height: 13.33333vw;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    box-sizing: border-box;
  }
  header .gnav_ico {
    width: 14.93333vw;
    height: 13.33333vw;
    background-color: #fff;
    text-align: center;
    position: fixed;
    top: 0;
    right: 13.33333vw;
    cursor: pointer;
    z-index: 100;
  }
  header .gnav_ico .ico {
    width: 14.93333vw;
    height: 13.33333vw;
    display: block;
    position: relative;
    background-repeat: no-repeat;
    background-image: url(../images/parts_nav_line.svg);
    background-position: center 4.53333vw;
    background-size: 5.86667vw;
  }
  header .gnav_ico .ico_close {
    width: 14.93333vw;
    height: 13.33333vw;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-image: url(../images/parts_nav_close.svg);
    background-position: center 4.53333vw;
    background-size: 4.66667vw;
  }
  header nav {
    width: 100vw;
    height: calc(100vh - 13.333vw);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    background-color: #fff;
    text-align: center;
    position: fixed;
    top: 13.33333vw;
    left: 0;
    z-index: 101;
  }
  header nav h1 {
    width: 100vw;
    text-align: left;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 102;
  }
  header nav .gnav_ico, header nav .buy {
    z-index: 102;
  }
  header nav ul {
    padding-top: 18.66667vw;
  }
  header nav ul li {
    margin-bottom: 22.66667vw;
  }
  header nav ul li .col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  header nav ul li .title {
    padding-bottom: 4.26667vw;
    margin-bottom: 4vw;
    position: relative;
  }
  header nav ul li .title:after {
    content: '';
    display: block;
    width: 3.73333vw;
    height: 0.26667vw;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: calc(50%);
    transform: translateX(-50%);
  }
  header nav ul li.feature .title img {
    width: 14.66667vw;
  }
  header nav ul li.special .title img {
    width: 13.6vw;
  }
  header nav ul li h3 {
    margin-bottom: 2vw;
    font-weight: bold;
    letter-spacing: 0.12em;
    line-height: 1.47368em;
  }
  header nav ul li h4 {
    margin-bottom: 5.33333vw;
    font-weight: bold;
    letter-spacing: 0.1em;
  }
  header nav ul li .btn_detail {
    width: 44vw;
    height: 8vw;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.12em;
    background-color: #f5f5f1;
    border-radius: 8vw;
  }
  header nav ul li .btn_detail .ico {
    display: inline-block;
    margin-left: 0.66667vw;
    margin-bottom: 0.66667vw;
  }
  header nav ul li .btn_detail .ico svg {
    width: 6.6vw;
    height: 2.46667vw;
  }
  header nav .btm {
    text-align: left;
    padding-left: 8vw;
    padding-bottom: 24vw;
  }
  header nav .btm p {
    line-height: 1.83333em;
  }
  header nav a {
    letter-spacing: 0.1em;
  }
  header nav a:after {
    display: none;
  }
  header.buy h1, header.contact h1 {
    top: 2.13333vw;
    left: 4vw;
  }
  header.buy h1 img, header.contact h1 img {
    width: 10.13333vw;
  }
  header .head_flow {
    position: absolute;
    top: 4.8vw;
    right: 1.46667vw;
  }
  header .head_flow ul {
    display: flex;
  }
  header .head_flow ul li {
    margin: 0 3.86667vw;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
  }
  header .head_flow ul li.on:before {
    content: '';
    display: block;
    width: 100%;
    height: 0.26667vw;
    background-color: #000;
    position: absolute;
    left: 0;
    bottom: -1.06667vw;
  }
  header .head_flow ul li:after {
    content: '＞';
    display: block;
    font-weight: bold;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 0;
    right: -5.6vw;
  }
  header .head_flow ul li:last-child:after {
    display: none;
  }
  #home header {
    transform: translateY(-13.33333vw);
    transition: transform;
    transition-duration: 0.25s;
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
  #home header.on ,#lp header.on{
    transform: translateY(0);
  }
  #content_inner {
    margin: 0 auto;
    box-sizing: border-box;
  }
  #sub_kv {
    height: 16vw;
    position: relative;
  }
  #sub_kv h2 {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    letter-spacing: 0.12em;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }
  #buy #sub_kv .bg_inner {
    background-image: url(../images/sub_kv_bg_sp.jpg) !important;
  }
  footer {
    margin-top: auto;
  }
  footer .foot_btn {
    margin-bottom: 14.66667vw;
  }
  footer .foot_btn li .arrow svg * {
    fill: #fff;
  }
  footer .foot_btn li a {
    width: 100%;
    height: 24vw;
    padding-left: 4.66667vw;
    display: flex;
    align-items: center;
    box-sizing: border-box;
  }
  footer .foot_btn li.buy a {
    background-color: #ff4242;
    border: 0.26667vw solid #ff4242;
  }
  footer .foot_btn li.contact a {
    background-color: #1b1b1b;
    border: 0.26667vw solid #1b1b1b;
  }
  footer .foot_btn li .ico {
    margin-right: 4vw;
  }
  footer .foot_btn li p {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.12em;
  }
  footer .foot_btn li p .s {
    margin-top: 2vw;
    display: block;
    font-weight: normal;
    white-space: nowrap;
    letter-spacing: 0.1em;
  }
  footer .foot_btn li .arrow {
    margin-left: 3.33333vw;
  }
  footer .foot_btn li.buy a .ico svg {
    width: 9.06667vw;
    height: 8.13333vw;
  }
  footer .foot_btn li.contact a .ico svg {
    width: 9.86667vw;
    height: 6.8vw;
  }
  footer .foot_btn li.buy a .arrow svg {
    width: 41.06667vw;
    height: 2vw;
  }
  footer .foot_btn li.contact a .arrow svg {
    width: 9.4vw;
    height: 1.86667vw;
  }
  footer .foot_menu {
    position: relative;
  }
  footer .foot_menu ul {
    margin: 0 auto;
  }
  footer .foot_menu li {
    width: 100%;
    margin-bottom: 10.66667vw;
    text-align: center;
    position: relative;
  }
  footer .foot_menu li:last-child {
    margin-bottom: 16vw;
  }
  footer .foot_menu li a {
    width: 100%;
  }
  footer .foot_menu li.special a {
    background-color: #fff !important;
    display: flex;
    flex-direction: column-reverse;
  }
  footer .foot_menu li .ph {
    width: 85.33333vw;
    height: 42.66667vw;
    margin: 0 auto;
    margin-bottom: 7.33333vw;
    position: relative;
    pointer-events: none;
  }
  footer .foot_menu li .ph img {
    width: 85.33333vw;
    height: 42.66667vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  footer .foot_menu li .ph img.on {
    opacity: 0;
    z-index: 2;
  }
  footer .foot_menu li .col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  footer .foot_menu li .title {
    padding-bottom: 4.26667vw;
    margin-bottom: 4vw;
    position: relative;
  }
  footer .foot_menu li .title:after {
    content: '';
    display: block;
    width: 3.73333vw;
    height: 0.26667vw;
    background-color: #000;
    position: absolute;
    bottom: 0;
    left: calc(50%);
    transform: translateX(-50%);
  }
  footer .foot_menu li.feature .title img {
    width: 14.66667vw;
  }
  footer .foot_menu li.special .title img {
    width: 13.6vw;
  }
  footer .foot_menu li h3 {
    margin-bottom: 2vw;
    font-weight: bold;
    letter-spacing: 0.12em;
    line-height: 1.47368em;
  }
  footer .foot_menu li h4 {
    margin-bottom: 5.33333vw;
    font-weight: bold;
    letter-spacing: 0.1em;
  }
  footer .foot_menu li .btn_detail {
    width: 44vw;
    height: 8vw;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.12em;
    background-color: #f5f5f1;
    border-radius: 8vw;
  }
  footer .foot_menu li .btn_detail .ico {
    display: inline-block;
    margin-left: 0.66667vw;
    margin-bottom: 0.66667vw;
  }
  footer .foot_menu li .btn_detail .ico svg {
    width: 6.6vw;
    height: 2.46667vw;
  }
  #foot_nav {
    width: 100%;
    height: 100vw;
    padding-top: 6.66667vw;
    background-image: url(../images/ph_foot_sp.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    box-sizing: border-box;
    position: relative;
  }
  #foot_nav .top {
    padding-left: 25.33333vw;
    display: flex;
    flex-direction: column;
  }
  #foot_nav .content_nav {
    margin-bottom: 1.6vw;
    display: flex;
    align-items: center;
  }
  #foot_nav .content_nav h1 {
    position: absolute;
    top: 6.66667vw;
    left: 6.66667vw;
  }
  #foot_nav .content_nav h1 img {
    width: 11.2vw;
  }
  #foot_nav .top ul {
    display: flex;
    align-items: center;
  }
  #foot_nav .top .common_nav ul {
    display: inherit;
  }
  #foot_nav .top .common_nav ul li {
    line-height: 1.83333em;
  }
  #foot_nav .top li {
    margin-right: 6.66667vw;
  }
  #foot_nav li a {
    color: #fff;
    letter-spacing: 0.12em;
  }
  #foot_nav .content_nav li a {
    font-weight: bold;
  }
  #foot_nav .btm {
    width: 100%;
    padding: 0 2.66667vw 0 6.66667vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    position: absolute;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
  }
  #foot_nav .btm .copyright {
    margin-bottom: 4vw;
  }
  #foot_nav p {
    letter-spacing: 0.12em;
    color: #fff;
  }
  #foot_nav .btm ul, #foot_nav .btm li, #foot_nav .btm li a {
    display: flex;
    align-items: center;
  }
  #foot_nav .btm ul {
    margin-bottom: 2.66667vw;
  }
  #foot_nav .btm li {
    margin-left: 3.33333vw;
  }
  #foot_nav .btm li p {
    margin-left: 1.06667vw;
  }
  #foot_nav li.okanetsu img {
    width: 27.2vw;
  }
  #foot_nav li.n1000 img {
    width: 18.53333vw;
    position: relative;
    top: -0.93333vw;
  }
  .sub .common_nav ul {
    display: block !important;
  }
  .sub .common_nav ul li {
    margin: 0 !important;
    line-height: 1.83333em;
  }
  .sub #foot_nav .btm ul, .sub #foot_nav .btm li, .sub #foot_nav .btm li a {
    display: block !important;
  }
  .sub #foot_nav {
    height: 26.66667vw;
    background-position: center 43%;
  }
  .sub #foot_nav .btm {
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0;
  }
  .sub #foot_nav .btm .copyright {
    margin-top: 2.66667vw;
    margin-bottom: 2vw;
  }
}
/* -------------------------------------------------- */
