@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Sansita+Swashed&display=swap');
@import url('https://fonts.googleapis.com/css?family=Damion&display=swap');
/*-------------------------------------
　【目次】　
　・基本設定
　・ナビ
　・半期決算特価モデル背景
　・ドスパラおすすめモデル背景
　・パソコンブロック
　・ポイント還元キャンペーン
　・中古ブロック
　・パーツブロック
　・店舗限定
　・リンクボタンSFCC仕様
---------------------------------------*/

/*-------------------------------------
　基本設定
---------------------------------------*/
#lp_page {
  color: #484848;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  margin: 0 auto;
  line-height: 1.6;
  position: relative;
  overflow: hidden;
  width: 100%;
}
#lp_page * {
  box-sizing: border-box;
}
.breadCrumb {
  font-size: 12px;
  padding: 12px 0;
  margin-left: auto;
  margin-right: auto;
  width: 970px;
}
.breadCrumb li {
  background: url(../5img/bcBg_999.gif) no-repeat scroll left center;
  display: inline;
  padding: 0 0 0 10px;
}
.breadCrumb li:first-child {
  background: none;
  padding-left: 0;
}
.cont_wap {
  background: #fff;
}
.cont_section {
  padding: 90px 0
}
.cont_inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1140px;
}
.main_title {
  width: 100%;
}
.main_title .main_title_inner {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}
.main_title .main_title_inner img {
  width: 100%;
}
.pagetop {
  display: none;
  width: 970px;
  margin: 0 auto;
}
.only_pc {
  display: block;
}
img.only_pc {
  margin-left: auto;
  margin-right: auto;
}
.only_sp {
  display: none;
}
#pagetop {
  opacity: 1;
  position: fixed;
  bottom: 30px;
  right: 55px;
  transition: opacity .5s;
  z-index: 1;
}
#pagetop a {
  background-color: rgba(51,51,51,.8);
  border-radius: 5px;
  color: #fff;
  display: block;
  font-size: 12px;
  line-height: 1.5em;
  padding: 5px 10px;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-registered .iconlink_wapper {
    width: 96vw;
  }
  #lp_page {
    width: 100%;
    position: relative;
  }
  #lp_page img {
    max-width: 100%;
    height: auto;
  }
  #lp_page .breadCrumb {
    display: none;
  }
  .cont_section {
    padding: 60px 0
  }
  .cont_inner {
    width: 100%;
  }
  .main_title {
    width: 100%;
    margin-left: 0;
    height: auto;
  }
  .main_title .main_title_inner {
    max-width: 100%;
    position: static;
    transform: translateX(0);
  }
  .pagetop {
    width: 96%;
  }
  .only_pc {
    display: none;
  }
  .only_sp {
    display: block;
  }
  img.only_sp {
    margin-left: auto;
    margin-right: auto;
  }
  #pagetop {
    right: 8%;
  }
}

/*-------------------------------------
　共通要素
---------------------------------------*/
.cont_section h2 {
    position: relative;
    text-align: center;
    font-size: 36px;
    margin-bottom: 1em;
	font-weight: bold;
}
.cont_section h2:before {
    position: absolute;
    bottom: -10px;
    left: calc(50% - 75px);
    width: 150px;
    height: 3px;
    content: '';
    background: #feeb29;
}

@media screen and (max-width: 767px) {
  .cont_section h2 {
	  font-size: 24px;
  }
  .cont_section h2:before {
      position: absolute;
      bottom: -10px;
      left: calc(50% - 40px);
      width: 80px;
      height: 3px;
      content: '';
      background: #feeb29;
  }
}

/*-------------------------------------
　キャンペーンについて
---------------------------------------*/
.cont_camp p {
	text-align: center;
}
.cont_inner_toptxt {
	font-size: 24px;
	font-weight: bold;
}
.note {
	font-size: 16px;
	font-weight: normal;
	margin-top: 1em;
}
span.red {
	color: #E43344;
}
span.orange {
	color: #ff4800;
}
.bg_beige {
	background: #f4f1ed;
	padding: 30px 60px 60px;
	margin-top: 60px;
}
.cont_camp h3 {
    background: #fff;
    width: fit-content;
    padding: 0.3em 2em;
    margin: 0 auto 1em;
    border-radius: 30px;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}
.box_inner {
    background: #fff;
}
.box_cont {
    padding: 40px 60px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.box_cont_txt {
   padding-left: 40px;
}
.cont_camp .box_cont_txt p {
    text-align: left;
}
.box_cont h4 {
    font-size: 26px;
    font-weight: bold;
}
.cont_camp .box_cont_txt p.subtitle {
    background: #3a9746;
    color: #fff;
    border-radius: 30px;
    width: fit-content;
    padding: 0.3em 1em;
    margin: 0.5em 0 1em 0;
    font-size: min(3.8vw,18px);
    font-weight: 500;
}
.cont_camp .box_cont_txt p {
    text-align: left;
    font-size: 18px;
}
.cont_camp p.note {
    font-size: 16px!important;
    font-weight: normal;
    margin-top: 1em;
}
.bg_gray {
    background: #555551;
    padding: 30px 60px 60px;
    margin-top: 60px;
}
.bg_gray .box_inner {
    border-radius: 10px;
    padding: 40px 60px;
}
.bg_gray .box_inner .indent{
    padding: 0 2.5em;
    font-size: 18px;
}
.bg_gray .box_inner .indent p{
  text-align: left;
}
.bg_gray .box_inner .indent dl{
  margin-top: 1em;
}
.bg_gray .box_inner .indent table{
  width: 100%;
  margin-top: 1em;
  border-collapse:  collapse;
}
.bg_gray .box_inner .indent th,.bg_gray .box_inner .indent td{
  padding: 0.25em;
  border: 1px solid #ccc;
  text-align: center;
}
.bg_gray .box_inner .indent th{
  background: #eee;
}
.bg_gray .box_inner p.submidashi {
    font-size: min(4.8vw,30px);
    font-weight: bold;
    text-align: center;
    margin-bottom: 0.5em;
	padding: 0;
}
@media screen and (max-width: 767px){
  .cont_inner_toptxt {
      font-size: min(4.2vw,18px);
      padding: 0 20px;
  }
  .cont_camp h3 {
      font-size: 18px;
  }
  .bg_beige, .bg_gray {
      padding: 20px;
  }
  .box_cont {
      padding: 20px;
      flex-direction: column;
  }
  .box_cont img {
      margin: 0 auto;
  }
  .box_cont_txt {
      padding-left: 0;
      padding-top: 20px;
  }
  .box_cont h4 {
      font-size: 20px;
    text-align: center;
  }
  .cont_camp .box_cont_txt p.subtitle {
      margin: 0.5em auto 1em;
  }
  .cont_camp .box_cont_txt p {
      text-align: left;
      font-size: 14px;
  }
  .cont_camp p.note {
      font-size: 12px!important;
    text-align: left;
  }
  .bg_gray .box_inner {
      padding: 20px;
  }
  .bg_gray .box_inner .indent{
    padding: 0;
    font-size: 14px;
  }
}

/*-------------------------------------
　ボタン
---------------------------------------*/
.c-button--secondaryA-green {
    display: flex;
    margin: 30px auto 0;
    width: 100%;
    max-width: 370px;
    height: 55px;
    border-radius: 10px;
    background: #177900;
    text-align: center;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
a.c-button--secondaryA-green span {
    color: #fff !important;
    font-size: 20px;
    font-weight: bold;
}
.c-button--secondaryA-green::before {
	z-index: -1;
    position: absolute;
    top: 0;
    left: -168%;
    width: 150%;
    height: 100%;
    -webkit-transform: skewX(-18deg);
    transform: skewX(-18deg);
    content: '';
    background-color: #fff;
    opacity: .2;
}
.c-button--over:before {
  -webkit-animation: c-button-animation-over ease-out .4s both;
  animation: c-button-animation-over ease-out .4s both;
}
.c-button--out:before {
  -webkit-animation: c-button-animation-out ease-in .4s both;
  animation: c-button-animation-out ease-in .4s both;
}

@media screen and (max-width: 767px) {
  a.c-button--secondaryA-green span {
      font-size: 16px;
  }
  .c-button--secondaryA-green {
      height: 50px;
  }
  .cont_present .c-button--secondaryA-green {
      width: 90%;
  }
}

@-webkit-keyframes c-button-animation-over {
  0% {
    left: -168%;
  }
  100% {
    left: -18%;
  }
}
@keyframes c-button-animation-over {
  0% {
    left: -168%;
  }
  100% {
    left: -18%;
  }
}
@-webkit-keyframes c-button-animation-out {
  0% {
    left: -18%;
  }
  100% {
    left: 168%;
  }
}
@keyframes c-button-animation-out {
  0% {
    left: -18%;
  }
  100% {
    left: 168%;
  }
}

/*-------------------------------------
　製品の特長
---------------------------------------*/
img.midashi_img {
    width: 100%;
}
ul.features_cont02_list {
    display: flex;
    margin-top: 50px;
    gap: 20px;
    flex-wrap: wrap;
    margin-right: -20px;
}
li.list_item {
    background: #242424;
    width: calc(25% - 20px);
    position: relative;
    border-top: 5px solid #feeb29;
    color: #fff;
    font-size: 18px;
    text-align: left;
    height: 420px;
    display: grid;
    padding: 20px;
}
.list_item__title{
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  font-weight: 700;
}
.list_item__title span{
  font-size: 3em;
  margin-right: 15px;
}
img.list_icon {
    position: absolute;
    top: -24px;
    left: 45%;
}
@media screen and (max-width: 767px){
  ul.features_cont02_list {
    margin-right: 0;
    padding: 0 20px;
    flex-direction: column;
  }
  li.list_item {
    width: 100%;
    height: auto;
  }
}

/*-------------------------------------
　BTOパソコンとの同時ご購入方法
---------------------------------------*/
.midashi_method {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
	margin-top: 50px;
	font-size: 18px;
}
.bg_blue {
    background: #084d9b;
    color: #fff;
    width: 145px;
    text-align: center;
    padding: 8px 0;
}
.bg_skyblue {
    background: #00a5ee;
    color: #fff;
    width: 90%;
    padding: 8px 0 8px 2em;
}
.cont_method p {
    text-align: center;
    margin: 2em 20px;
}
@media screen and (max-width: 767px){
.cont_method p {
	font-size: 14px;
    text-align: left;
}
}