/* CSS Document */

body{
	font-family: "Noto Sans JP", sans-serif;
  	font-optical-sizing: auto;
    -webkit-text-size-adjust: 100%;
	font-style: normal;
	padding:0!important;
	margin:0!important;
	color: var(--body-font-color);
    /*背景*/
	background-color: #f6f5f7;
	/*background-color: #ffffff;
    linear-gradient(135deg, #fdfbfb, #f6f8ff);
	background-attachment: fixed;*/

	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

div,section{
	box-sizing: border-box;
}
/*---------------------------------------------------------
COMMON BOX
---------------------------------------------------------*/
header{
	width:auto;
	width:100%;
	padding-top:10px;
	padding-bottom:10px;
	margin:0 auto;
	background-color:#ff669f;
    /*サイト上ラインカラー*/
	border-bottom:5px solid #f8f2ff;
}
.headerInner{
    width: 100%;
	max-width:980px;
	margin:0 auto;
}
.inner{
	/*width: 98%;*/
	max-width:980px;
	margin:0 auto;
    padding:1% 0 20px;
    box-sizing: border-box;
    background-color: #ffffff;
}
#contWapper{
	width: 100%;
	max-width:1020px;
	/*box-shadow: 0px 0px 8px 4px rgba(241, 100, 128, 0.3);*/
	margin: 0 auto;
}
#content{
	/*width: 98%;*/
	max-width: 980px;
	margin:0 auto 2%;
	padding: 0 30px 30px;
	/*border-radius: 10px;*/
	z-index:1;
	background-color: #ffffff;
	box-sizing: border-box;
}
/*---------------------------------------------------------
COMMON PARTS
---------------------------------------------------------*/
h2{
	font-size:18px;
    font-weight: bold;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    padding-bottom: 8px;
    padding-top: 8px;
    border-bottom: 1px solid var(--title-line-color);
	color:var(--title-font-color);
	margin-bottom:15px;
}
.attention{
    font-size: 0.8em;
}
.attentionSmall{
	max-width: 750px;
	margin: 0 auto;
}
.subTitle{
	padding: 8px 1em;
	margin-bottom: 12px;
	background-color: #f6f5f7;
}
/* H2>小見出し
---------------------------------------------------------*/
.subTitle p{
	color:#141414;
}
.subTitle + p,.subTitle + div>p{
	padding: 0 1em 1em;
}
@media screen and (max-width : 1024px ){
	.headerInner{
		padding-left: 4%;
		padding-right: 4%;
	}
	#content{
		width: 100%;
		padding: 5% 3%;
		/*100-8-2*/
	}
}
/*---------------------------------------------------------
LINK COLOR
---------------------------------------------------------*/
a:link{
    color: #007fe0!important;
	text-decoration:underline!important;
}
a:visited{
    color: #007fe0!important;
	text-decoration:underline!important;
}
/*---------------------------------------------------------
MAIN IMAGE
---------------------------------------------------------*/
.mainImage{
	margin:0 auto;

}
.mainImage .inner{
	width: 100%;
	max-width:980px;
	text-align:center;
	padding:0 0 0;
	margin:30px auto 0;
	background: #ffffff;
}
.mainImage .inner img{
	width:100%;
	height:auto;
}
@media screen and (max-width : 1024px ){
	.mainImage .inner{
	padding:0 0 0;
	margin:0 auto;
}
}
/*---------------------------------------------------------
SUB NAVI
---------------------------------------------------------*/
#subNavi{
	width: 100%;
	max-width:980px;
	margin:0 auto;
	height:54px;
	padding:0;
	box-sizing: border-box;
}
#subNavi ul{
	width:100%;
	max-width:980px;
	height: 100%;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	background-color: var(--navi-bg-color);
	border-radius: var(--navi-border-radius);
}
#subNavi ul li{
	flex: 1;
	border-right: 1px solid var(--navi-line-color);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
#subNavi ul li:last-child{
	border-right: 0;
}
#subNavi ul li a:link{
	display: block;
	width: 100%;
	height: 100%;
	font-weight: 600;
	color: var(--navi-font-color)!important;
	text-align: center;
	text-decoration: none!important;
	display: flex;
	align-items: center;
	justify-content: center;
}
#subNavi ul li a:visited{
	color: var(--navi-font-color)!important;
}
#subNavi ul li a:link img{
	margin-left: 8px;
}

/* SUB NAVI > SP
---------------------------------------------------------*/
@media screen and (max-width : 1024px ){
	#subNavi{
		height:auto;
	}
	#subNavi ul{
	padding: 10px 0;
	}
	#subNavi ul li:nth-child(1){
		display: none;
	}
	#subNavi ul li span{
		display: block;
	}
	#subNavi ul li a:link{
		display: block;
		width: 100%;
		height: 100%;
		padding-top: 15px;
	}
	#subNavi ul li a:link img{
		width: 16px;
		height: auto;
		margin-left: 0px;
	}
	/*ナビ角丸
	-----------------------------------------------------*/
	#subNavi ul li:nth-child(2) a:link{
		border-top-left-radius: 40px;
		border-bottom-left-radius: 40px;
	}
	#subNavi ul li:nth-child(4) a:link{
		border-top-right-radius: 40px;
		border-bottom-right-radius: 40px;
	}
}
@media screen and (max-width : 480px ){
	#subNavi ul{
	font-size: .9em;
	}
	#subNavi ul li a:link{
		padding-top: 0;
	}
}
/*---------------------------------------------------------
概要
---------------------------------------------------------*/
#overview{
	padding-top: 15px;
}
/*---------------------------------------------------------
KOUNYU CHUUI　販売期間/ご購入上の注意
---------------------------------------------------------*/
#kounyu ul.topFaq_list li{
	padding-left:32px;
	position:relative;
	background-image:url(../img/list.png);
	background-repeat:no-repeat;
	background-position: left 3px;
	border:0;
	margin-bottom:8px;
}
#kounyu ul.topFaq_list li:last-child{
    margin-bottom:0;
}
/*---------------------------------------------------------
SHOP LIST(convenience store)
---------------------------------------------------------*/
.shopList div:first-child{
    margin-bottom: 20px;
}
/*コンビニボタン*/
.shopList div.shopBanner{
	width: 96%;
	margin: 0 auto 30px;
	display: flex;
	justify-content: space-between;
    text-align:center;
}
.buySej{
	text-align: center;
	margin-bottom: 50px;
}
.buySej img{
	width: 100%;
	max-width: 378px;
	height: auto;
}
@media screen and (max-width : 1024px ){
	.shopList div.shopBanner{
		display:inherit;
		margin-bottom: 4%;
	}
	.shopList div.shopBanner p{
		margin-bottom: 5%;
	}
}
@media screen and (max-width : 476px ){
.shopList div.shopBanner p img{
	width: 65%;
	height: auto;
}
}

/*---------------------------------------------------------
TAB
---------------------------------------------------------*/
.tabs {
  width: 100%;
  margin: 0 auto;
  font-family: sans-serif;
}

/* タブメニュー 
---------------------------------------------------------*/
.tabMenu {
  display: flex;
  justify-content: space-between;
  padding: 0;
  margin: 0;
  list-style: none;
}
.tabMenu li {
  flex: 1;
  text-align: center;
  padding: 12px;
  cursor: pointer;
  font-weight: bold;
  background: #ffffff;
  transition: all 0.3s ease;
  /* opacity: 0.7; */
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  margin-right: 2px;
}
@media screen and (max-width : 480px ){
	.tabMenu li {
	font-size: 0.9em;
	}
}
/* 各タブの色 
---------------------------------------------------------*/
.tabMenu li:nth-child(1) { 
	border: 2px solid var(--tab-color-typeA);
	color: var(--tab-color-typeA);
}
.tabMenu li:nth-child(2) { 
	border: 2px solid var(--tab-color-typeB);
	color: var(--tab-color-typeB);
}
.tabMenu li:nth-child(3) { 
	border: 2px solid var(--tab-color-typeC);
	color: var(--tab-color-typeC);
}
.tabMenu li:nth-child(4) { 
	border: 2px solid var(--tab-color-typeD);
	color: var(--tab-color-typeD);
}
/* ホバーふわ 
---------------------------------------------------------*/
.tabMenu li:hover {
  opacity: 1;
  transform: translateY(-2px);
}
/* アクティブ 
---------------------------------------------------------*/
.tabMenu li:nth-child(1).active { 
	background: var(--tab-color-typeA);
	color: #ffffff;
}
.tabMenu li:nth-child(2).active { 
	background: var(--tab-color-typeB);
	color: #ffffff;
}
.tabMenu li:nth-child(3).active { 
	background: var(--tab-color-typeC);
	color: #ffffff;
}
.tabMenu li:nth-child(4).active { 
	background: var(--tab-color-typeD);
	color: #ffffff;
}
.tabMenu li.active {
  opacity: 1;
}
/* タブ上の色
---------------------------------------------------------*/
#tab1{
	border-top: 5px solid var(--tab-color-typeA);
	padding-top: 3%
}
#tab2{
	border-top: 5px solid var(--tab-color-typeB);
	padding-top: 3%
}
#tab3{
	border-top: 5px solid var(--tab-color-typeC);
	padding-top: 3%
}
#tab4{
	border-top: 5px solid var(--tab-color-typeD);
	padding-top: 3%
}
/* コンテンツ
---------------------------------------------------------*/
.tabContent {
  padding: 2px 0 0;
  background: #fff;
}
.tabContent .content {
  display: none;
  opacity: 0;
  text-align: center;
}
.tabContent .content.active {
	opacity: 1;
	display: block;
}
@media screen and (max-width : 767px ){
	.tabContent {
	padding: 2px 0px 20px;
	}
}
/* コンテンツ 中身
---------------------------------------------------------*/
.tabContent .content p.noteTxt{
	font-weight: 600;
	margin-bottom: 10px;
}
.tabContent .content h3{
	margin-bottom: 1%;
}
.tabThumb img{
	margin-bottom: 4%;
	width: 100%;
	max-width: 750px;
	height: auto;
}
@media screen and (max-width : 767px ){
	.tabContent .content h3 img{
		width: 36%;
		height: auto;
	}
}
@media screen and (max-width : 480px ){
	.tabContent .content h3 img{
		width: 50%;
		height: auto;
	}
	.tabContent .content p.noteTxt {
	font-size: 0.9em;
	}
}

/*---------------------------------------------------------
プリント番号
---------------------------------------------------------*/
.store01{
    margin: 0 auto 2%;
	width: 100%;
	max-width: 750px;
}
.contentDetail{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1% 3%;
}
.detailInfo{
	width: 70%;
}
.qrCn{
	width: 25%;
}
@media screen and (max-width : 767px ){
	.detailInfo{
		width: 100%;
	}
	.qrCn{
		width: 100%;
	}
}
.detailPrintNo{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.detailPrintNo:first-child{
    margin-bottom: 5px;
    padding-bottom: 5px;
}
.store01 h4{
    padding: 1% 3%;
    background-color: var(--tab-color-typeA);
    color: #ffffff;
    font-size: 0.9em;
	text-align: left;
	font-weight: 600;
	margin-bottom: 1%;
}
.store01 .size{
    font-size: 1.2em;
}
.store01 .size p{
    font-weight: var(--font-bold);
	text-align: left;
}
.store01 .number{
    width: 10%;
}
.store01 .number p{
    text-align: right;
    font-weight: var(--font-bold);
}
.store01 .printNoTitle p{
    color: var(--color-03);
	text-align: left;
}
.store01:last-child{
		margin-top: 5%;
	}
@media screen and (max-width : 767px ){
    .contentDetail{
    display: inherit;
    }
	.store01:last-child{
		margin-top: 14%;
	}
    .store01 h4{
        font-size: 0.8em;
        text-align: center;
        padding: 2%;
    }
	.detailPrintNo{
		margin-bottom: 3%;
	}
}
/*
価格
----------------------------*/
.price p{
    text-align: right;
    font-weight: 500;
    color: var(--color-03);
    font-size: 1.4em;
}
.price p span{
    color: var(--color-03);
    font-size: 14px;
    padding-left: 4px;
}
.price p span:first-child{
    padding-right: 5px;
}
/*
プリント番号
----------------------------*/
.printNo1L{
    font-family: 'Inconsolata', monospace;
    color: var(--color-03);
    font-weight: var(--font-bold);
    font-size: 2.2em;
    font-weight: 600;
}

/*
size/number/price
printNoTitle/printNo
----------------------------*/
@media screen and (max-width : 767px ){
    .store01 .size{
    width: 60%;
    }
    .store01 .number{
    width: 15%;
    }
    .price{
    width: 60%;
    }
    .printNoTitle{
    width: 40%;
    }
    .printNo1L{
    font-size: 2em;
    }
}
@media screen and (max-width : 360px ){
    .printNo1L{
    font-size: 1.8em;
    }

}
/*---------------------------------------------------------
色変更
---------------------------------------------------------*/
#tab2 .store01 h4{
    background-color: var(--tab-color-typeB);
}
#tab3 .store01 h4{
    background-color: var(--tab-color-typeC);
}
#tab4 .store01 h4{
    background-color: var(--tab-color-typeD);
}
/*---------------------------------------------------------
PRODUCT LIST
---------------------------------------------------------*/
.product-list{
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
	margin-bottom: 5%;
}
.product-list li{
	width: 19.5%;
	margin-right: 5px;
	text-align: center;
	background: #f6f5f7;
	/*background: #ffe0e6;*/
	box-sizing: border-box;
	/*border: 1px solid #ffe0e6;*/
}
.product-list li:nth-child(5n){
	margin-right: 0%;
}
/*商品リスト　スペース調整*/
@media screen and (max-width : 820px ){
	.product-list li{
		width: 49%;
		margin-right: 2%;
		margin-bottom: 8%;
		text-align: center;
	}
	.product-list li:nth-child(5n){
		margin-right: 2%;
	}
	.product-list li:nth-child(2n){
		margin-right: 0;
	}
	.product-list li:nth-last-child(-n+1){
		margin-bottom:0;
	}
	.product-list li:last-child{
		margin-bottom: 2%;
	}
}
.product-list dl {
    line-height: 100%;
    padding: 0 0 8px;
}
.product-list dl dt:first-child+dd{
	padding-bottom: 8%;
}
/*
サムネイル画像
---------------------------------------------------------*/
.thumb {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    position: relative;
	margin-bottom: 5%;
	margin-top: 5%;
}
.thumb img{
	width: 100%;
	height: auto;
}
/*サムネイルサイズ*/
.thumb img{
	object-fit: contain;
	width: 150px;
	height: 150px;
}
@media screen and (max-width : 820px ){
	.thumb img{
		object-fit: contain;
		width: 180px;
		height: 180px;
	}
}
@media screen and (max-width : 414px ){
	.thumb img{
		object-fit: contain;
		width: 150px;
		height: 150px;
	}
}
.itemName{
	font-size: 0.9em;
}
/*
プリント番号BOX
---------------------------------------------------------*/
.printNoBox{
	width: 92%;
	/*background-color: #ffffff;*/
	padding: 8% 5%;
	margin: 0 auto 5px;
}
.sizeName{
	color: #dd3a57;
	padding-bottom: 5px;
	border-bottom: 2px solid #dd3a57;
	font-weight: bold;
	font-size: .9em;
	margin-bottom: 4px;
}
/*
詳細パーツ
---------------------------------------------------------*/
.conveniName{
	width: 92%;
	margin: 0 auto 8px;
	font-size: .6em;
	font-weight: bold;
	padding: 3px 5px;
    background-color: #f1869b;
	color: #ffffff;
	text-align: center;
	box-sizing: border-box;
}
.conveniName span{
    font-family: 'Roboto','Hiragino Sans','Meiryo','Hiragino Kaku Gothic ProN',sans-serif;
	color: #ffffff;
	font-weight: bold;
	display: block;
	line-height: 130%;
	padding: 0;
}
.conveniNameLine1{
	font-size: .7em;
	padding: 12px;
}
.printNoTitle{
	font-size: .9em;
	font-weight: bold;
	margin-bottom: 8px;
}
.mPrintNo{
    font-family: 'Inconsolata', monospace;
	font-size: 1.4em;
    width: 100%;
    margin: 0 auto;
    line-height: 100%;
    padding: 3% 0;
    width: 100%;
    text-align: center;
	color: #141414;
	font-weight: 600;
	margin-bottom: 2px;
}
.mPrintNo span {
    background: #141414;
    padding: 4px 4px;
    margin-right: 3px;
    font-size: 11px;
    color: #FFF;
    font-weight: bold;
    border-radius: 2px;
}
/*
PRINT NO > SP
---------------------------------------------------------*/
@media screen and (max-width : 820px ){
	.mPrintNo {
		font-size: 1.5em;
	}
}
@media screen and (max-width : 414px ){
	.mPrintNo {
		font-size: 1.3em;
	}
}
@media screen and (max-width : 820px ){
	.printNoTitle{
		font-size: 0.9em;
	}
}

.chuui {
    font-size: .8em;
	text-align: right;
	font-weight: 400;
	margin-top: 5px;
}
.chuui span {
    font-family: 'Inconsolata';
    font-size: 16px;
}
@media screen and (max-width : 840px ){
	.chuui {
		/* text-align: left; */
		margin-top: 3%;
}
}
/*---------------------------------------------------------
QRボタン
---------------------------------------------------------*/
.QRbtn:link{
	color: #ffffff!important;
	text-decoration: none!important;
}
.QRbtn:link span{
	color: #ffffff!important;
	text-decoration: none!important;
	font-size: 0.9em;
}
.QRbtn:visited{
	color: #ffffff!important;
	text-decoration: none!important;
}
.QRbtn:visited span{
	color: #ffffff!important;
	text-decoration: none!important;
}
/*QRコード画像*/
#canvas>img{
	width: 60%;
	height: auto;
}
/*---------------------------------------------------------
FAQ
---------------------------------------------------------*/

#faq .leftBox{
	float:left;
	width:49.5%;
	border-right:1px solid #eaeaea;
}
#faq .rightBox{
	float:left;
	width:48%;
	padding-left:2%;
}
#faq h3{
	font-size:20px!important;
	color:#f955da;
	margin-bottom:30px;
}
/* faqList ---------------------------------*/
/*.faqList{
	margin-bottom:15px;
}*/
.faqList dt{
	display:block;
	width:100%;
	box-sizing: border-box;
	color:#272727;
	padding: 20px 20px 20px 30px;
	cursor:pointer;
	border-bottom: 1px solid #d8d7dd;
	position: relative;
}

.faqList dd{
	padding-left:1.5em;
	display:none;
    background: #ffffff;
	padding: 20px 20px 20px 30px;
	border-bottom: 1px solid #d8d7dd;
	line-height: 160%;
}
.faqList dd ul li{
	margin-bottom: 5px;
}
.grayBox{
	background-color: #f4f3f9;
	padding: 15px;
}
@media screen and (max-width : 480px ){
	.faqList dt{
		padding: 20px 12px 20px 30px;
	}
	
	.faqList dd{
		padding: 20px 12px 20px 12px;
	}
}
/*+-*/
.faqList dt::before,.faqList dt::after  {
    content: '';
    display: inline-block;
    width: 10px;
    height: 2px;
    background-color: #2d2d2d;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 1s;
}

.faqList dt::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform .4s;
}

.faqList dt.show::before {
    opacity: 0;
}

.faqList dt.show::after {
    transform: translateY(-50%) rotate(180deg);
}

.grayBox{
	background-color: #f6f6f6;
	margin-bottom: 20px;
	padding: 15px;
}
/*---------------------------------------------------------
conprin official
---------------------------------------------------------*/
.conprin-official{
    display: flex;
    align-items: center;
    box-sizing: border-box;
   /* border: 2px solid #002793;*/
	background-color: #ffeef4;
    padding: 3%;
    /*margin-bottom: 3%;*/
	border-radius: 5px;
}
.conprin-official .txt{
    padding-right: 5%;
}

.conprin-official a:link{
    text-decoration: none;
}
@media screen and (max-width : 820px ){
	.conprin-official{
		display:inherit;
		padding: 5%;
	}
	.conprin-official .txt{
		padding-right: 0;
		margin-bottom: 5%;
	}
	.conprin-official .banner{
		text-align: center;
	}
}
/*---------------------------------------------------------
FOOTER
---------------------------------------------------------*/
footer{
	width:100%;
	padding:20px 0;
	background-color:var(--footer-bg-color);
	border-top: 10px solid #bc3134;
}
footer p{
	color:var(--footer-font-color);
	text-align:center;
	font-size:12px;
	
}

/*---------------------------------------------------------
RETURN TOP
---------------------------------------------------------*/
#return {
    position				:	fixed;
	width					:	60px;
	height					:	60px;
    bottom					:	20px;
    right					:	20px;
	text-indent:-9999px
}
#return a {
	display					:	block;
	width					:	100%;
	height					:	100%;
	background-image:url(../../img/return.png);
	background-repeat:no-repeat;

}
.end{
	color:#e00024; 
	font-weight:bold;
	padding:20px;
	border:2px solid #e00024;
	text-align:center;
}
/*---------------------------------------------------------
MARGIN
---------------------------------------------------------*/
.mb10{
    margin-bottom: 10px;
}

.mb20{
    margin-bottom: 20px;
}
.mb30{
    margin-bottom: 40px;
}
.txtRed{
	color: #e00024;
	font-weight: bold;
}
.txtBold{
	font-weight: 600;
}
.txtOg{
	color:#fe6324;
	font-weight: 600;
}
.txtLeft{
	text-align: left;
}
.txtRight{
	text-align: right;
	margin-top: 10px;
}
@media screen and (max-width : 840px ){
.txtRight{
	text-align: left;
	margin-top: 4%;
}
}
@media screen and (max-width : 820px ){
	.mb10{
		margin-bottom: 2%;
	}
	.mb20{
		margin-bottom: 4%;
	}
}
/*---------------------------------------------------------
SP　PC
---------------------------------------------------------*/
.pc{
    display: block;
}
.sp {
    display: none;
}
@media screen and (max-width : 480px ){
    .pc{
        display: none;
    }
    .sp {
        display: block;
    }
}