@charset "utf-8";

/*----------------------------------------------------
  LINEUP MAPテーブル
----------------------------------------------------*/
.p-create-pc__lineup-map-wrap {
  width: 100%;
  margin: 0 auto;
  position: relative;
}

.p-create-pc__lineup-map-wrap table {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  table-layout: fixed;
}

.p-create-pc__lineup-map-wrap table tr {
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

.p-create-pc__lineup-map-wrap table th,
.p-create-pc__lineup-map-wrap table td {
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  vertical-align: middle;
  text-align: center;
  position:relative;
}

.p-create-pc__lineup-map-wrap table thead th,
.p-create-pc__lineup-map-wrap table thead td,
.p-create-pc__lineup-map-wrap table tfoot th,
.p-create-pc__lineup-map-wrap table tfoot td{
  background: #004da1;
  color: #fff;
  font-weight:700;
  padding: 10px;
}

.p-create-pc__lineup-map-wrap table th.lineup-table-col-corner {
  background: transparent;
  width: fit-content;
  min-width: 120px;
  font-weight: 400;
  background:#004da1;
}
.p-create-pc__lineup-map-wrap table thead th.lineup-table-col-corner::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #002668;
  clip-path: polygon(0 0, 0 100%, 100% 100%);
}
.p-create-pc__lineup-map-wrap table tfoot th.lineup-table-col-corner::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #00a2e5;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.p-create-pc__lineup-map-wrap table .lineup-table-col-corner .lineup-table-corner-text{
  position: absolute;
  font-size: 10px;
  font-weight:700;
  color:#fff;
  z-index: 1;
}
.p-create-pc__lineup-map-wrap table thead th.lineup-table-col-corner .lineup-table-corner-text.graphics {
  bottom: 10px;
  left: 10px;
}
.p-create-pc__lineup-map-wrap table thead th.lineup-table-col-corner .lineup-table-corner-text.cpu {
  top: 10px;
  right: 10px;
}
.p-create-pc__lineup-map-wrap table tfoot th.lineup-table-col-corner .lineup-table-corner-text.graphics {
  bottom: auto;
  top:10px;
  left: 10px;
}
.p-create-pc__lineup-map-wrap table tfoot th.lineup-table-col-corner .lineup-table-corner-text.cpu {
  top: auto;
  bottom: 10px;
  right: 10px;
}

.p-create-pc__lineup-map-wrap table thead th.table-hd-corner{
  background: #fff;
}
.p-create-pc__lineup-map-wrap table thead td.table-hd{
  background: linear-gradient(to right, #fff, #ececec);
  color:#484848;
  font-weight:700;
}
.p-create-pc__lineup-map-wrap table th small{
  font-weight:400;
  white-space:nowrap;
}
.p-create-pc__lineup-map-wrap table colgroup {
  background: linear-gradient(to bottom, #002668, #00a2e5);
}

.p-create-pc__lineup-map-wrap table thead strong {
  font-size: 18px;
  font-weight: 700;
}

.p-create-pc__lineup-map-wrap table thead img {
  height: 13px;
  margin-right: 8px;
  vertical-align: baseline;
}
.p-create-pc__lineup-map-wrap table thead th span {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

/*tbody*/
.p-create-pc__lineup-map-wrap table tbody th {
  color: #fff;
  font-size: 16px;
}
.p-create-pc__lineup-map-wrap table tbody td {
  background:#fff;
  padding:0
}
/*TD中身*/
.p-create-pc__lineup-map-wrap table td a{
  position: relative;
  display:block;
  width:100%;
  height:100%;
  padding: 10px 20px;
}
.p-create-pc__lineup-map-wrap table td a:hover{
  cursor: pointer;
}

.p-create-pc__lineup-map-wrap table .c-panel-arrow {
  position:relative;
  display: block;
  width: calc(100% + 40px);
  height: calc(100% + 10px);
  margin: -10px -20px;
  padding: 10px 20px;
  line-height: 1.5;
}
.p-create-pc__lineup-map-wrap table p {
  margin:auto;
  width:fit-content;
}
.p-create-pc__lineup-map-wrap table .map-name {
  margin-bottom: 5px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: clamp(12px, 0.705rem + 0.23vw, 14px);
  line-height: 1.2;
  font-weight:700;
}
.p-create-pc__lineup-map-wrap table .map-price {
  color: #e43344;
}
.p-create-pc__lineup-map-wrap table .map-price span{
  font-size: clamp(12px, 0.705rem + 0.23vw, 14px);
  font-weight:700;
}

.p-create-pc__lineup-map-wrap table .icon-rank {
  position:relative;
}
.p-create-pc__lineup-map-wrap table .icon-rank::before {
  content:'';
  display: block;
  position:absolute;
  width: 34px;
  height: 30px;
  top: -10px;
  left: 0px;
  z-index:1;
}

.p-create-pc__lineup-map-wrap table .icon-rank--1::before {
  background: url(../../common/images/icon-pc-rank-1.svg) no-repeat 50% 50% / cover;
}

.p-create-pc__lineup-map-wrap table .icon-rank--2::before {
  background: url(../../common/images/icon-pc-rank-2.svg) no-repeat 50% 50% / cover;
}

.p-create-pc__lineup-map-wrap table .icon-rank--3::before {
  background: url(../../common/images/icon-pc-rank-3.svg) no-repeat 50% 50% / cover;
}

.p-create-pc__lineup-map-wrap table .icon-rank--4::before {
  background: url(../../common/images/icon-pc-rank-4.svg) no-repeat 50% 50% / cover;
}

.p-create-pc__lineup-map-wrap table tbody td.hover-col {
  background: #e5f6fc;
}

.p-create-pc__lineup-map-wrap table tbody td.hover {
  background: #e5edf5;
}

.p-create-pc__lineup-map-wrap table tbody td.hover-cell {
  background: #cee5f2;
}

.p-create-pc__lineup-map-wrap table tbody td.hover.hover-cell .c-panel-arrow::after {
  background-color: #004da1;
}

.p-create-pc__lineup-map-wrap table tbody td.hover.hover-cell .c-panel-arrow::before {
  border-color: #fff;
}

/*キャプション*/
.p-create-pc__lineup-map-wrap-caption {
  margin-top: 10px;
  font-size: 12px;
}
/*スクロール画像*/
.p-create-pc__lineup-map-wrap .icon-scroll-cross {
  display: none;
}


@media screen and (max-width:767px) {
  .p-create-pc__lineup-map-wrap {
    width: 100%;
    overflow-x: auto;
  }
  .p-create-pc__lineup-map-wrap table {
    width: max-content;
    table-layout: auto;
  }
  .p-create-pc__lineup-map-wrap table thead th {
    font-size: 12px;
  }
  .p-create-pc__lineup-map-wrap table th {
    left: 0;
    position: sticky;
    z-index: 2;
  }
  .p-create-pc__lineup-map-wrap table tbody th {
    background: #002668;
  }
  .p-create-pc__lineup-map-wrap table tfoot th.lineup-table-col-corner::before {
    background: #002668;
  }
  .p-create-pc__lineup-map-wrap table thead th.lineup-table-col-corner {
    width: 60px;
    height: 50px;
  }
  .p-create-pc__lineup-map-wrap table tbody td {
    width: 180px;
  }
  .p-create-pc__lineup-map-wrap table .c-panel-arrow {
    width: calc(100% + 20px);
    height: calc(100% + 30px);
    margin: -15px -10px;
    padding: 8px;
    line-height: 1.5;
  }

  .p-create-pc__lineup-map-wrap table .map-name {
    font-size: 14px;
  }

  .p-create-pc__lineup-map-wrap table .c-panel-arrow span[data-key="benchmark"] {
    font-size: 12px;
  }
  
  .p-create-pc__lineup-map-wrap table .icon-rank::before {
    width: 30px;
    height: 26px;
    top: -20px;
    left: -15px;
  }
  .p-create-pc__lineup-map-wrap-caption {
    padding: 0 15px;
  }

  .p-create-pc__lineup-map-wrap .icon-scroll-cross {
    position: absolute;
    left: 70px;
    top: 60px;
    display: block;
    transition: 0.3s all;
    opacity: 1;
  }

  .p-create-pc__lineup-map-wrap.scroll-over .icon-scroll-cross {
    opacity: 0;
  }
}


/*-----tooltiptext---*/
.p-create-pc__lineup-map-wrap td .tooltiptext {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: +1;
  position: absolute;
  visibility: hidden;
  bottom: 120%;
  left: 50%;
  width: 100%;
  max-width: 180px;
  margin-top: 10px;
  padding: 12px 10px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 6px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.6);
  font-size: 12px;
  text-align: center;
}
.p-create-pc__lineup-map-wrap td:hover .tooltiptext {
  visibility:visible;
}
.p-create-pc__lineup-map-wrap td .tooltiptext img {
  max-width: 100%;
}
.p-create-pc__lineup-map-wrap td .tooltiptext span {
  display: block;
  margin-top: 2px;
  color: #00a2e6;
  font-weight: bold;
}
.p-create-pc__lineup-map-wrap td .tooltiptext .tw_yen {
  margin-top: 2px;
  padding-top: 2px;
  border-top: 1px dotted #333;
  color: #f00;
  font-size: 18px;
  font-weight: normal;
}
.p-create-pc__lineup-map-wrap td .tooltiptext .benchmark {
  margin-top: 8px;
  padding-top: 6px;
  border-top: 1px dotted #00a2e6;
  font-size: 14px;
  font-weight: bold;
}
.p-create-pc__lineup-map-wrap td .tooltiptext .benchmark::before {
  font-size: 12px;
  font-weight: normal;
  white-space: pre;
  content: "ベンチマーク 3DMark\a Time Spy\a ";
}
.p-create-pc__lineup-map-wrap td .tooltiptext::after {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  -webkit-box-shadow: 8px 9px 8px -6px rgba(0, 0, 0, 0.6);
  box-shadow: 8px 9px 8px -6px rgba(0, 0, 0, 0.6);
  content: " ";
}

@media screen and (max-width:767px) {
  .p-create-pc__lineup-map-wrap td:hover .tooltiptext{
    visibility: hidden;
  }
}

/*-----ボタン---*/
.p-create-pc__lineup-map-wrap .map-btn {
  width: 100%;
  margin-top: 5px;
  font-size: 13px;
  height: auto;
  border-radius: 2em;
  padding: 5px 0;
  line-height: 1;
}
.p-create-pc__lineup-map-wrap .map-btn::after {
  right: 10px;
}

.p-create-pc__lineup-map-wrap .c-button--secondaryB-black{
  /*background:#000;*/
}



/*-----タグ---*/
.tag-new {
  margin: 0 auto 5px 0;
  display: inline-block;
  width: fit-content;
  background: #00a2e6;
  color: #fff;
  font-weight: bold;
  border-radius: 2px;
  padding: 2px 6px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.1em;
}
.tag-price-down {
  margin: 0 auto 5px 0;
    display: inline-block;
    width: fit-content;
    background: #e43344;
    color: #fff;
    font-weight: bold;
    border-radius: 2px;
    padding: 2px 4px;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.1em;
}