@charset "UTF-8";
//******* 四捨五入定義  *******//
// Round (四捨五入)
@function round-decimal ($number, $digits: 0) {
  @return to-fixed($number, $digits, 'round');
}

// Ceil (切り上げ)
@function ceil-decimal ($number, $digits: 0) {
  @return to-fixed($number, $digits, 'ceil');
}

// Floor (切り捨て)
@function floor-decimal ($number, $digits: 0) {
  @return to-fixed($number, $digits, 'floor');
}

@function to-fixed ($number, $digits: 0, $round: 'round') {
  $n: 1;
  // $number must be a number
  @if type-of($number) != number {
      @warn '#{ $number } is not a number.';
      @return $number;
  }
  // $digits must be a unitless number
  @if type-of($digits) != number {
      @warn '#{ $digits } is not a number.';
      @return $number;
  } @else if not unitless($digits) {
      @warn '#{ $digits } has a unit.';
      @return $number;
  }
  @for $i from 1 through $digits {
      $n: $n * 10;
  }
  @if $round == 'round' {
      @return round($number * $n) / $n;
  } @else if $round == 'ceil' {
      @return ceil($number * $n) / $n;
  } @else if $round == 'floor' {
      @return floor($number * $n) / $n;
  } @else {
      @warn '#{ $round } is undefined keyword.';
      @return $number;
  }
}

@function spVw($pxValue) {
  @return to-fixed(($pxValue / 750) * 100) + vw;
}

body{
  overflow-x: hidden;
  padding: 0;
  margin: 0;
  @supports (-webkit-touch-callout: none) {
    font-feature-settings: "tnum";
  }
}

.lp_wrap{
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  font-weight: 400;
  width: 100%;
  max-width: 750px;
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  @media screen and (max-width: 750px) {
    width: 100vw;
  }
  *{
    color:#1a1a1a;
    line-height: 1;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  a {
    color: #1a1a1a;
    text-decoration: none;
    vertical-align: baseline;
    &:hover{
      opacity: 0.8;
    }
  }
  img {
    width: 100%;
    vertical-align: bottom;
  }
  ul li {
    list-style: none;
  }
  table {
    border-spacing: 0;
  }
}

/* =========================================================
  resetここまで
========================================================= */

.lp_wrap .offer_btn{
  display: block;
  width: 562px;
  margin: 0 auto;
  @media screen and (max-width: 750px) {
    width: spVw(562);
  }
}

.lp_wrap .fv_area{
  background: url("/cdn/shop/files/lp-oshidan2-fv_bg.jpg?v=1764228538")no-repeat center top;
  background-size: 750px 1214px;
  height: 1214px;
  @media screen and (max-width: 750px) {
    background-size: spVw(750) spVw(1214);
    height: spVw(1214);
  }
}

.lp_wrap .about_area{
  background: url("/cdn/shop/files/lp-oshidan2-abont_bg.jpg?v=1764228538")no-repeat center top;
  background-size: 750px 2267px;
  height: 2267px;
  @media screen and (max-width: 750px) {
    background-size: spVw(750) spVw(2267);
    height: spVw(2267);
  }
}

.lp_wrap .point_area{
  background: url("/cdn/shop/files/lp-oshidan2-point_bg.jpg?v=1764228537")no-repeat center top;
  background-size: 750px 3219px;
  height: 3219px;
  @media screen and (max-width: 750px) {
    background-size: spVw(750) spVw(3219);
    height: spVw(3219);
  }
}

.lp_wrap .special_area{
  background: url("/cdn/shop/files/lp-oshidan2-special_bg.jpg?v=1764228538")no-repeat center top;
  background-size: 750px 1280px;
  height: 1280px;
  @media screen and (max-width: 750px) {
    background-size: spVw(750) spVw(1280);
    height: spVw(1280);
  }
}

.lp_wrap .footer_area{
  background: url("/cdn/shop/files/lp-oshidan2-footer_bg.jpg?v=1764228536")no-repeat center top;
  background-size: 750px 290px;
  height: 290px;
  padding-top: 75px;
  @media screen and (max-width: 750px) {
    background-size: spVw(750) spVw(290);
    height: spVw(290);
    padding-top: spVw(75);
  }
}