@charset "shift_jis";

/*==============================================
共通カラー
============================================= */
:root {
--color-primary: #0678ff; /* プライマリ カラー */
--color-secondary: #ff5a27; /* セカンダリー カラー */
--text-color: #ffec1f; /* テキスト カラー */
}

/*==============================================
common
============================================= */

#header {
border-bottom: #ededed solid 1px;
}
.headerIn,
.footerIn {
width: 930px;
margin: 0 auto;
}
.copyRight { border-top: 1px solid #ededed; }
#footer { margin-top: 10px; }
.pageTop { border-radius: 50%; }

.sp {display: none;}

/*==============================================
.noto
============================================= */
/* regular */
@font-face {
font-family: 'noto';
src: url(https://img1.kakaku.k-img.com/images/fonts/noto-sans/NotoSansJP-Light.woff);
font-weight: 200;
}

/* regular */
@font-face {
font-family: 'noto';
src: url(https://img1.kakaku.k-img.com/images/fonts/noto-sans/NotoSansJP-Regular.woff);
font-weight: 400;
}

/* b */
@font-face {
font-family: 'noto';
src: url(https://img1.kakaku.k-img.com/images/fonts/noto-sans/NotoSansJP-Medium.woff);
font-weight: 600;
}

/* bold */
@font-face {
font-family: 'noto';
src: url(https://img1.kakaku.k-img.com/images/fonts/noto-sans/NotoSansJP-Bold.woff);
font-weight: 700;
}


/*---- 文字　 ----*/
#mainContents .paragraph,
#mainContents .mainTitle,
#index,
.mainItemWrap .itemIn .item .info .price span{
font-family: "noto", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "Arial", sans-serif;
font-feature-settings: "palt" 1;
letter-spacing: 0.05em;}

#mainContents p {
font-size:  116%;
line-height: 1.8;}

#mainContents .cap{
font-size: 100%;
line-height: 1.9;}

#mainContents p + p {
margin-top: 20px;}

sup {
font-size: 60%;
vertical-align: top;
position: relative;
top: 0.3em;
}

/*==============================================
看板
============================================= */

#mainContents {
width: 100%;
min-height: 580px;
background-image: linear-gradient(
to bottom,
#04c6fd 0px,
#1f81f6 486px,
#ffffff 486px
);
background-repeat: no-repeat;
}

.mainTitle {
width: 100%;
background: url("https://img1.kakaku.k-img.com/images/article/sp/summersale/top_bg.png") center top no-repeat;
}

.mainTitleIn  {
width: 992px;
height: 532px;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/pc_title.png) center 120px no-repeat;
margin: 0 auto;
position: relative;
}

/*----　タイトルOFFアイコン　----*/
.mainTitleIn .icon {
position: absolute;
top:0;
left: 0;
width: 200px;
height: 195px;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/icon_title.png) left top no-repeat;
font-size: 34px;
line-height: 1 !important;
text-align: center;
font-weight: bold;
color: var(--text-color);
padding: 23px 0 0 5px;
box-sizing: border-box;
}

.mainTitleIn .icon span { 
font-size: 69px;
}


h1 {
text-indent: -999em;
font-size: 0;
z-index: 1;
}


.lead  {
width: 880px;
margin: 50px auto 0;
}

.lead  p{
font-size: 15px !important;
}


/*----　アンカーリンク　----*/
#index {
width: 880px;
margin: 50px auto 0;
background-color: #f3f3f3;
padding: 30px 70px;
box-sizing: border-box;
}

#index p {
font-size: 19px;
font-weight: bold;
}

#index dl dt {
font-size: 15px;
line-height: 1.9;
padding: 8px 0 8px 28px;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/arrow.svg) 8px 50% no-repeat;
background-size: 9px;
}

#index dl dt + dt {
border-top: #9f9f9f 1px dashed;
}

#index dl dd {
font-size: 14px;
padding: 8px 0 8px 70px;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/dot.svg) 53px 50% no-repeat; 
background-size: 5px;}

#index a {
display: block;
transition: 0.1s ease-in-out;}

#index a:hover {
color: var(--color-primary);}

/*==============================================
#mainContents
============================================= */
.paragraphIn{
width: 880px;
margin: 0 auto;  }

.paragraph {
margin-top: 100px !important;
}

.paragraphIn{
margin-top: 80px;
}

#article01 h2,
#article02 h2{
font-size: 34px;
line-height: 1.6;
font-weight: bold;
text-align: center;
  position: relative;
display: inline-block;
width: 100%;
}

#article01 h2:before,
#article02 h2:before{
content: '';
position: absolute;
left: 50%;
bottom: -25px;
display: inline-block;
width: 120px;
height: 4px;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: var(--color-primary);
border-radius: 2px;
}

#article03 h2 {
text-align: center;
font-size: 63px;
font-weight: bold;
color: var(--text-color);
background-image: linear-gradient(0deg, #1f81f6, #04c7fd);}

#article03 h2 .bg {
display: block;
height: 180px;
padding: 30px 0;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/h2_bg.png) center top no-repeat;
box-sizing: border-box;
}


#article03 h2 .icon {
display: flex;
align-items: center;       /* 縦方向の中央揃え */
justify-content: center;    /* 横方向の中央揃え */
gap: 10px;                 /* 文字と画像の間の余白（必要に応じて調整） */
font-size: 30px;
padding-bottom: 18px;
}

#article03 h2 .icon::before,
#article03 h2 .icon::after {
content: "";
display: inline-block;
width: 30px;               /* 画像の表示幅 */
height: 30px;              /* 画像の表示高さ */
background-size: contain;
background-repeat: no-repeat;
background-position: center;
flex-shrink: 0;            /* 画面が狭くなっても画像が潰れないように固定 */
}

#article03 h2 .icon::before {
background-image: url('https://img1.kakaku.k-img.com/images/article/sp/summersale/h2_icon_befor.png'); 
}

#article03 h2 .icon::after {
background-image: url('https://img1.kakaku.k-img.com/images/article/sp/summersale/h2_icon_after.png');
}

/*----　キャンペーン概要　----*/
.campaignData {
border: var(--color-primary) 1px solid;
box-sizing: border-box;
padding: 25px;
display: table;
width: 100%;
margin-top: 40px;
}

.campaignData .data {
overflow: hidden;}

.campaignData .data table {
float: left;
}

.campaignData p{
font-size: 19px !important;
font-weight: bold;
color: var(--color-primary);
}

.campaignData table {
margin-top: 10px;
width: 500px;
}

.campaignData table th,
.campaignData table td {
font-size: 15px;
line-height: 1.6;
padding: 5px 0;
}

.campaignData table th {
vertical-align: top;
width: 130px;
}

.campaignData table td::before {
content:"：";
font-weight: bold;
padding: 0 5px;
}

.campaignData table td{ 
padding-left:1.2em;
text-indent:-1.2em;}

.campaignData table td .cap {
font-size: 13px !important;
display: block;
padding-left: 18px;
}

.campaignData table td a:link,
.campaignData table td a:visited {
color: #0054ee;
text-decoration: underline;
}
.campaignData table td a:hover,
.campaignData table td a:active {
color: #699dfc;
}

.campaignData img {
width: 325px;
}

/*----　プロフィール　----*/
.profile {
background-color: #f2f2f2;
padding: 25px;
box-sizing: border-box;
width: 100%;
margin-bottom: 40px;}

.profile .profileIn {
display: table;
}

.profile .face,
.profile .txt {
display: table-cell;
vertical-align: middle;}

.profile .face {
width: 130px;}

.profile .face img {
width: 100%;
}

.profile .txt {
padding-left: 20px;
}

.profile .txt p.name {
font-size: 16px !important;}

.profile .txt p {
font-size: 14px !important;}

.profile .txt p + p {
margin-top: 10px !important;}

.balloon {
position: relative;
display: inline-block;
margin-bottom: 25px;
padding: 16px;
border: 2px solid #dedede;
border-radius: 8px;
background-color: #ffffff;
text-align: left;
}

.balloon::before {
content: "";
position: absolute;
bottom: 0;
left: 8%;
border-style: solid;
border-width: 20px 10px 0 10px;
border-color: #dedede transparent transparent;
translate: -50% 100%;
}

.balloon::after {
content: "";
position: absolute;
bottom: 0;
left: 8%;
border-style: solid;
border-width: 15.5px 7.8px 0 7.8px;
border-color: #ffffff transparent transparent;
translate: -50% 100%;
}

/*----　ステップ　----*/
.stepBox {
margin-top: 50px;
overflow: hidden;}

.stepBox + .stepBox {
margin-top: 40px;}

.stepBox img {
float: left;
width: 64px;
padding-top: 8px;}

.stepBox .text {
float: right;
width: 790px;
}

.stepBox .stepTit {
font-size: 22px;
font-weight: bold;
margin-bottom: 15px;
}

.stepBox .dotlist {
margin: 20px 0;
/*background-color: #ebf4ff;*/
padding: 20px;
display: inline-block;
border: #e1e1e1 1px solid;}

.stepBox .dotlist li{
font-size: 15px;
}

.stepBox .dotlist li strong {
font-size: 18px;
display: inline;
background: linear-gradient(transparent 76%, #d2e6fd 0%);  
}

.stepBox .dotlist li::before{
content: "・ ";
}

.stepBox .dotlist li + li {
margin-top: 15px;
}

.bigText {
width: 100%;
text-align: center;
margin-top: 45px;
}

.bigText p{ 
font-size: 36px !important;
line-height: 1.7 !important;
font-weight: bold;
color: var(--color-secondary );  }


/*----　カテゴリ　----*/
.categoryBox {
display: grid;
grid-template-columns: repeat(2, 436px); 
gap: 8px; 
width: 100%;
max-width: 880px; 
margin: 0 auto; 
box-sizing: border-box;
}

.categoryBox .category {
width: 100%; 
box-sizing: border-box;
border: 2px solid #e1e1e1; 
border-radius: 10px;
padding: 25px;
}

.categoryBox .category .title {
text-align: center;
font-size: 16px;
}

.categoryBox .category .title span {
display: block;
color: var(--color-secondary );  
font-size: 28px;
font-weight: bold;
margin-top: 2px;
}

.categoryBox .category a {
font-size: 15px;
line-height: 30px;
font-weight: bold;
color: #fff;
position: relative;
display: block;
width: 210px;
height: 30px;
border-radius: 30px;
margin: 8px auto 0;
text-align: center;
background-color: var(--color-secondary ); 
transition: 0.1s ease-in-out;}

.categoryBox .category a:after {
content: "";
display: inline-block;
position: absolute;
top: -2px;
bottom: 0;
left: 20px;/*----　左からの矢印の位置　----*/
width: 8px;
height: 8px;
margin: auto;
-webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
transition: opacity .2s ease, -webkit-transform .2s ease;
transition: transform .2s ease, opacity .2s ease;
transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
vertical-align: middle;
border-bottom: 3px solid #fff;/*----　矢印の色　----*/
border-right: 3px solid #fff;/*----　矢印の色　----*/
}

.categoryBox .category a:hover {
/*background-color: var(--text-color );*/ 
opacity: 0.6;
filter: alpha(opacity=60);}


.categoryBox .category a + p {
margin-top: 20px;
}


/*==============================================
メインアイテム
============================================= */
.mainItemWrap h3 {
margin-top: 80px;
height: 130px;
background-color: #eee;
display: flex;
align-items: center;
padding: 0 20px;
box-sizing: border-box;
}

.mainItemWrap h3 .icon {
padding-top: 25px;
display: inline-block;
font-size: 24px;
line-height: 1;
font-weight: bold;
color: var(--text-color );
text-align: center;
width: 152px;
height: 130px;
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/icon_h3.png) top center no-repeat;
box-sizing: border-box;
}

.mainItemWrap h3 .icon span{
font-size: 45px;
}

.mainItemWrap h3 .text {
padding-left: 30px;
box-sizing: border-box;
font-size: 34px;
line-height: 1.7;
font-weight: bold;
}

.mainItemWrap h3 .text small {
font-size: 20px;
display: block;
font-weight: normal;
}

.mainItemWrap h3 .text strong {
padding: 0 8px;
color: var(--color-secondary );
}

.mainItemWrap .itemIn {
padding: 40px 0;
box-sizing: border-box;
}

.mainItemWrap .itemIn + .itemIn {
border-top: #d7d7d7 1px solid;
}

.mainItemWrap .itemIn .item {
display: table;
margin-bottom: 30px;
}

.mainItemWrap .itemIn .item .img,
.mainItemWrap .itemIn .item .info{
display: table-cell;
vertical-align: middle;
}

.mainItemWrap .itemIn .item .img{
width: 420px;
position: relative;
padding: 8px 0 0 85px;
box-sizing: border-box;
}

.mainItemWrap .itemIn .item .img .icon{
padding: 22px 0 0 6px;
font-size: 28px;
line-height: 1.1;
font-weight: bold;
text-align: center;
position: absolute;
top:0;
left: 0;
width: 126px;
height: 126px;
color: var(--text-color );
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/icon_off.png) top center no-repeat;
background-size: cover;
box-sizing: border-box;
}

.mainItemWrap .itemIn .item .img .icon span{
font-size: 43px;
}

.mainItemWrap .itemIn .item .img .icon.small{
padding: 31px 0 0 0;
font-size: 18px;
line-height: 1.2;
letter-spacing: 0.01em;
display: block;}

.mainItemWrap .itemIn .item .img .icon.small span{
  font-size: 30px;  
}

.mainItemWrap .itemIn .item .info{
width: 460px;
}

.mainItemWrap .itemIn .item .info .catch {
font-size: 16px;
margin-bottom: 8px;
}

.mainItemWrap .itemIn .item .info .name span:nth-of-type(1){
background-color: #3c3c3c;
font-size: 16px;
line-height: 1;
color: #fff;
padding: 2px 5px 7px;
display: inline-block;
}

.mainItemWrap .itemIn .item .info .name  span:nth-of-type(2) {
display: block;
margin-top: 2px;
font-size: 19px;
line-height: 1.5;
font-weight: bold;
}

.mainItemWrap .itemIn .item .info .price {
font-size: 36px;
font-weight: bold;
color: var(--color-secondary ) !important;
font-family: Arial, Helvetica, "sans-serif";
margin-top: 10px;
}

.mainItemWrap .itemIn .item .info .price span {
font-size: 20px;}

.mainItemWrap .itemIn .item .info .btn a{
display: block;
margin-top: 15px;
font-size: 16px;
line-height: 48px;
font-weight: bold;
text-align: center;
background-color: #ff9900; 
height: 48px;
border-radius: 4px;
transition: 0.1s ease-in-out;
position: relative;
}

.mainItemWrap .itemIn .item .info .btn a:after {
content: '';
width: 8px;
height: 8px;
border: 0px;
border-top: solid 2px #333;
border-right: solid 2px #333;
/*　↑トップバナー矢印の色を変更する場合はこちら　*/
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 0;
bottom: 0;
right: 20px;
margin: auto;
}

.mainItemWrap .itemIn .item .info .btn a:hover {
opacity: 0.6;
filter: alpha(opacity=60);   
}

/*==============================================
PR枠
============================================= */
.previewWrap {
border: #bbb 1px solid;
margin-top: 30px;
position: relative;
}

.previewWrap .prIcon {
position: absolute;
top:0;
left: 0;
background-color: #bbb;
color: #fff;
padding: 1px 4px;
}

.previewWrap .title {
padding: 40px 0;
text-align: center;
font-weight: bold;
font-size: 20px;
}

.previewWrap .title .icon {
position: relative;
display: inline-block;
margin-bottom: 20px;
padding: 8px 40px;
border-radius: 60px;
background-color: var(--color-secondary ) ;
text-align: left;
font-size: 30px;
line-height: 1.5;
color: #fff;
}

.previewWrap .title .icon::after {
content: "";
position: absolute;
bottom: 0;
left: 50%;
border-style: solid;
border-width: 12px 6px 0 6px;
border-color: var(--color-secondary ) transparent transparent;
translate: -50% 100%;
}

.previewWrap .title .text {
display: block;
}


.previewBox {
width: 710px;
margin: 0 auto;
box-sizing: border-box;
}

.previewBox .itemIn {
padding: 40px 0;
border-top: 1px dashed #adadad; 
}

.previewBox .itemIn .cap {
font-size: 11px !important;
display: block;
margin-top: 5px;
}

.previewBox .itemIn .item {
display: table;
margin-bottom: 30px;
}

.previewBox .itemIn .item .img,
.previewBox .itemIn .item .info{
display: table-cell;
vertical-align: middle;
}

.previewBox .itemIn .item .info {
width: 410px;
padding-left: 20px;
box-sizing: border-box;
}

.previewBox .itemIn .item .info .catch {
font-size: 14px;
margin-bottom: 5px;
}

.previewBox .itemIn .item .img{
width: 300px;
position: relative;
padding: 8px 0 0 50px;
box-sizing: border-box;
text-align: center;
}

.previewBox .itemIn .item .img img {
width: 230px;
}

.previewBox .itemIn .item .img .icon{
padding: 25px 0 0 4px;
font-size: 19px;
line-height: 1.1;
font-weight: bold;
text-align: center;
position: absolute;
top:0;
left: 0;
width: 100px;
height: 100px;
color: var(--text-color );
background: url(https://img1.kakaku.k-img.com/images/article/sp/summersale/icon_off.png) top center no-repeat;
background-size: cover;
box-sizing: border-box;
}

.previewBox .itemIn .item .img .icon span {
font-size: 28px;
}

.previewBox .itemIn .item .img .icon.small{
font-size: 18px;
line-height: 1.3;
display: block;}


.previewBox .itemIn .item .img .icon.small02{
padding: 25px 0 0 1px;
font-size: 15px;
line-height: 1.2;
display: block;}

.previewBox .itemIn .item .img .icon.small02 span {
   font-size: 12px;
    line-height: 1.3;
    display: block;
}


.previewBox .itemIn .item .info .name span:nth-of-type(1){
font-size: 14px;
display: inline-block;
}

.previewBox .itemIn .item .info .name  span:nth-of-type(2) {
display: block;
margin-top: 3px;
font-size: 17px;
line-height: 1.5;
font-weight: bold;
}

.previewBox .itemIn .item .info .price {
font-size: 20px;
font-weight: bold;
color: var(--color-secondary ) !important;
font-family: Arial, Helvetica, "sans-serif";
margin-top: 10px;
}

.previewBox .itemIn .item .info dd:nth-of-type(2) a,
.previewBox .itemIn .item .info dd:nth-of-type(3) a{
display: block;
font-size: 12px;
line-height: 38px;
font-weight: bold;
text-align: center;
height: 38px;
border-radius: 4px;
transition: 0.1s ease-in-out;
position: relative;
}

.previewBox .itemIn .item .info dd:nth-of-type(2) a{
margin-top: 15px;
background-color: #ff9900; 
}

.previewBox .itemIn .item .info dd:nth-of-type(3) a{
margin-top: 10px;
color: #fff;
background-color: #3a3a3a; 
}

.previewBox .itemIn .item .info dd:nth-of-type(2) a:after,
.previewBox .itemIn .item .info dd:nth-of-type(3) a:after {
content: '';
width: 6px;
height: 6px;
border: 0px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 0;
bottom: 0;
right: 15px;
margin: auto;
}

.previewBox .itemIn .item .info dd:nth-of-type(2) a:after {
border-top: solid 2px #333;
border-right: solid 2px #333;
}

.previewBox .itemIn .item .info dd:nth-of-type(3) a:after {
border-top: solid 2px #fff;
border-right: solid 2px #fff;
}

.previewBox .itemIn .item .info dd a:hover {
opacity: 0.6;
filter: alpha(opacity=60);   
}

.previewBox .itemIn .commentBox {
margin-top: 20px;
}

.previewBox .itemIn .commentBox .title{
font-size: 13px;
color: #fff;
background-color: var(--color-secondary ) ; 
padding: 4px 8px;
display: inline-block;
}

.previewBox .itemIn .commentBox p {
font-size: 14px !important;
border: #d9d9d9 1px solid;
padding: 10px;
box-sizing: border-box;
}

/* 元のデータ用マスターボックスは初期状態で非表示にしておく */
.itemBox {
display: none;
}

/*==============================================
.note
============================================= */
.note {
margin-top: 15px;
}
.note li {
display: block;
line-height: 1.8;
font-size: 11px;
}
.note li span {
margin-right: 0.5em;
}

/*==============================================
.releasedate
============================================= */
.releasedate {
font-size: 11px; 
color: #333;
width: 930px; 
margin: 50px auto 0; 
padding-bottom: 100px;
text-align: right;}

