.cartcontents{
	width:1200px;
	overflow: hidden;
	margin:30px auto;
}
.carttitle{
	clear:both;
    padding: 5px 0;
	padding-top:0;
    font-size: 22px;
    font-weight: bold;
}
/********************/
/*
　　　カートヘッダー	
					*/
/********************/
header{
	border-bottom:2px solid #e2e2e2;
}
.progre{
	width:550px;
	overflow: hidden;
	float:right;
}
.progre ul{
}
.progre ul li{
	display:block;
	width:25%;
	float:left;
	font-size:14px;
	text-align: center;
	position:relative;
    padding-top: 5px;
    color: #b3b3b3;
}
.progre ul li::after{
    content: "";
    width: 70px;
    height: 2px;
    display: block;
    background: #e2e2e2;
    font-size: 50px;
    text-align: right;
    position: absolute;
    right: -33px;
    top: 22px;
}
.progre ul li:last-child::after{
	content:none;
}
.progre ul li.active{
    color: #56a3dc;
    font-weight: bold;
}
.progre ul li.prev{
    color: #56a3dc;
}
.progre ul li.prev::after{
    content: "";
    width: 70px;
    height: 2px;
    display: block;
    background:#56a3dc;
    font-size: 50px;
    text-align: right;
    position: absolute;
    right: -33px;
    top: 22px;
}
.progre .cart::before{
	content:"\f07a";
	font-family:"Font Awesome 5 Free";
	font-weight:bold;
	display:block;
	text-align: center;
	font-size:35px;
}
.progre .regist::before{
	content:"\f044";
	font-family:"Font Awesome 5 Free";
	font-weight:bold;
	display:block;
	text-align: center;
	font-size:35px;
}
.progre .check::before{
	content:"\f46d";
	font-family:"Font Awesome 5 Free";
	font-weight:bold;
	display:block;
	text-align: center;
	font-size:35px;
}
.progre .pay::before{
	content:"\f09d";
	font-family:"Font Awesome 5 Free";
	font-weight:bold;
	display:block;
	text-align: center;
	font-size:35px;
}
/********************/
/*
　　　	　カート左	
					*/
/********************/
.cart_left{
	width:800px;
	float:left;
}
.cart_left .carttable{
	width:100%;
	border-collapse: collapse;
}
.cart_left .carttable td{
	overflow: hidden;
	padding:10px;
}
.cart_left .carttable td.c_img{
	width:100px;
	border-bottom:1px solid #e2e2e2;
	padding:10px 0;
}
.carttable td img{
	width:100%;
}
.carttable tr:first-child th{
	background:#f5f5f5;
	border-bottom:1px solid #e2e2e2;
}
.carttable tr:first-child th:nth-child(1){
	width:450px;
	padding:5px 10px;
	text-align:center;
}
.carttable tr:first-child th:nth-child(2){
	width:140px;
	padding:5px;
	text-align:center;
}
.carttable tr:first-child th:nth-child(3){
	width:70px;
	padding:5px;
	text-align:center;
}
.carttable tr:first-child th:nth-child(4){
	width:150px;
	padding:5px 10px;
	text-align:right;
}
.carttable tr td:nth-child(3),
.carttable tr td:nth-child(4),
.carttable tr td:nth-child(5){
	text-align: right;
}
.carttable tr td:nth-child(5){
	font-size:18px;
}
.carttable tr{
	border-bottom:1px solid #e2e2e2;
}
.carttable .c_count form{
	height:23px;
	width:73px;
}
.carttable .c_count select{
	float: left;
}
/*
.carttable input[type="text"],
 .carttable input[type="number"]{
	width:30px;
	height:100%;
	float:left;
	border:none;
	padding:5px;
	font-size:15px;
}

.carttable input[type="number"]::-webkit-inner-spin-button { 
	-webkit-appearance: none; 
	margin: 0; 
}
*/ 
.carttable .c_count input[type="submit"]{
	background:#007ebe;
	color:#fff;
	border:none;
	width:33px;
	height:100%;
	text-align: center;
	font-size:12px;
	cursor:pointer;
	display:block;
	float: right;
}
.carttable .c_delete{
	text-align: right;
}
.carttable .c_delete input[type="submit"]{
	border:none;
	background:none;
	cursor:pointer;
	text-decoration:underline;
}
/********************/
/*
　　カートページ履歴	
					*/
/********************/
.historyitem{
	margin:30px 0;
	overflow: hidden;
}
.historyitem .history{
	font-size:20px;
	font-weight:bold;
	margin-bottom:5px;
}
.historyitem li a{
	display:block;
	float: left;
	width:19%;
	overflow: hidden;
	margin-right:1.25%;
	padding:3px;
}
.historyitem li:last-child a{
	margin-right:0;
}
.historyitem li a .listimg{
	overflow: hidden;
}
.historyitem li a .title{
	font-size:15px;
	font-weight:bold;
    height: 40px;
    overflow: hidden;
}
.historyitem li a .unitprice{
	overflow: hidden;
}
.historyitem li a .unitprice span:first-child{
	font-size:15px;
}
.historyitem li a .unitprice span:nth-child(2){
	font-size:15px;
	position:relative;
	font-weight:bold;
	float:right;
}
.historyitem li a .unitprice span:nth-child(2)::after{
	content:"円";
	font-size:13px;
	font-weight:normal;
}
.historyitem li a .star{
	width:60%;
}
.historyitem li a img{
	width:100%;
    transition: ease all 0.3s;
}
.historyitem li a:hover{
	background:#e2e2e2;
}
.historyitem li a:hover .listimg img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0.8;
}
/********************/
/*
　　　	　カート右	
					*/
/********************/
.cart_right{
	width:350px;
	float:right;
	padding:30px;
	border:1px solid #e2e2e2;
}
.cart_right table{
	width: 100%;
	text-align: left;
}
.cart_right table th{
	font-size:18px;
	font-weight:normal;
	padding:3px 0;
}
.cart_right table td{
	font-size:18px;
	text-align: right;
	position:relative;
	padding:3px 0;
}
.cart_right table td::after{
	content:"円";
	padding-left:3px;
	font-size:14px;
}
.cart_right table tr:last-child th,
.cart_right table tr:last-child td{
	border-top:1px solid #e2e2e2;
	overflow: hidden;
	padding:10px 0;
	font-size:18px;
}
.cart_right table tr:last-child td{
	color:#dc1d09;
	font-size:20px;
}
.cart_right .cost_free{
	position:relative;
	overflow: hidden;
	margin-bottom:30px;
	padding:5px 0;
	padding-left:23px;
	line-height: 1;
    font-weight: bold;
}
.cart_right .cost_free::before{
	content:"\f06a";
	font-family:"Font Awesome 5 Free";
	font-weight:bold;
	position:absolute;
	left:0;
	bottom:3px;
	font-size:20px;
	color:#007ebe;
}
.cart_right .cost_free span{
	font-size:20px;
	color:#dc1d09;
	position:relative;
}
.cart_right .cost_free span::after{
	content:"円";
	font-size:15px;
	padding-left:3px;
}
.buy_btn a{
	display:block;
	width:100%;
	margin:0 auto;
	padding:10px 0;
	color:#fff;
	font-size:20px;
	font-weight:bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
	text-align: center;
}
.buy_btn button{
	display:block;
	width:100%;
	margin:0 auto;
	padding:10px 0;
	color:#fff;
	font-size:20px;
	font-weight:bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
	text-align: center;
}
.back_btn a{
	margin:20px 0;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    display: block;
    overflow: hidden;
    background: linear-gradient(#ffe20d,#ffcf22);
    border: 1px solid #efcb1e;
    padding: 10px;
    cursor: pointer;
    position: relative;
    color: #333;
    border-radius: 5px;
}
.back_btn a:hover{
	opacity:0.6;
}
.cart_no_item .back_btn a{
	margin: 40px 100px;
    margin-bottom: 70px;
}
/********************/
/*
　　　	  会員登録	
					*/
/********************/
.registcontents{
	clear:both;
	width:1200px;
	margin: 20px auto;
	overflow: hidden;
}
.registtitle{
	font-size:20px;
	font-weight:bold;
}
.loginform input[type="submit"].registlogin{
    width: 40%;
    display: block;
    padding: 10px 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
    text-align: center;
    margin: 15px auto;
	cursor:pointer;
}
.loginform input[type="submit"].registlogin:hover{
    border-top: 3px solid #9e1919;
    border-left: 3px solid #9e1919;
    border-right: 2px solid #ff2300;
    border-bottom: 2px solid #ff2300;
    opacity: 0.8;
}
.registcontents table{
	margin-top:20px;
	width:100%;
	background:#fbfbfb;
}
.registcontents table th{
	font-size:18px;
	padding:5px 10px;
	width:200px;
}
.registcontents table th span{
	font-weight: normal;
	color:#fff;
	background:#a00000;
	border-radius:3px;
	font-size:13px;
	display:inline-block;
	padding:3px;
	margin-right:10px;
}
.registcontents table td{
	padding:25px 0;
	position:relative;
}
.registcontents table input[type="text"],
.registcontents table select{
	height:40px;
	width:260px;
	padding:5px;
	font-size:16px;
	position:relative;
}
.registcontents table .lasttd{
	width:350px;
	font-size:13px;
	padding:0;
}
.registcontents table .lasttd div{
	position:relative;
	background: #fffede;
    border: 2px solid #fdd33c;
	padding:5px;
}
.registcontents table .lasttd div::before{
	content: "";
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid transparent;
    border-right: 15px solid #fdd33c;
    position: absolute;
    left: -25px;
    top: 50%;
    margin-top: -15px;
}
.registcontents table .lasttd div::after{
	content: "";
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid transparent;
    border-right: 15px solid #fffede;
    position: absolute;
    left: -22px;
    top: 50%;
    margin-top: -15px;
}
.registcontents table input[type="text"].postinput{
	width:300px;
	margin-bottom:10px;
}
.registcontents table input[type="text"].addresinput{
	width:580px;
}
.registcontents table .postselect label{
    padding: 5px 10px;
    display: inline-block;
    border-radius: 5px;
    margin-bottom: 5px;
	position:relative;
}
.registcontents table .postselect .postok{
	background:none;
	color:#333;
	font-size:18px;
	font-weight: bold;
	padding-left:20px;
}
.registcontents table .patr .postselect input{
	position:absolute;
	left:0;
	top:50%;
	margin-top:-9px;
    height: 18px;
    margin-bottom: 3px;
    padding: 0;
    width: 18px;
    vertical-align: middle;
}
.registcontents table input[type="text"].postin{
	width:580px;
}
.registcontents table input[type="text"].input{
	width:618px;
}
.postaddress{
    overflow: hidden;
    padding: 10px 0;
    padding-bottom: 0;
}
.postaddress label{
	display:inline-block;
	margin-right:15px;
	float:left;
}
.sex label{
	width:150px;
	height:75px;
	float:left;
	background:#fff;
	border:1px solid #efefef;
	background:url(../img/male.png)no-repeat left 5px,#fff;
	background-size:80px;
	padding-left:90px;
	padding-top:45px;
	font-size:16px;
}
.sex label:nth-child(2){
	border-left:none;
	background:url(../img/female.png)no-repeat left 5px,#fff;
	background-size:80px;
}
.sex label.sexactive{
	background:url(../img/male.png)no-repeat left 5px,#ffe314;
	background-size: 80px;
}
.sex label:nth-child(2).sexactive{
	background:url(../img/female.png)no-repeat left 5px,#ffe314;
	background-size: 80px;
}
.regist_modal{
    width: 400px;
    display: block;
    padding: 15px 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
    text-align: center;
    margin: 10px auto;
	cursor:pointer;
}
#regist-btn{
    width: 400px;
    display: block;
    padding: 15px 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
    text-align: center;
    margin: 10px auto;
	cursor:pointer;
}
#regist-btn:hover{
    border-top: 3px solid #9e1919;
    border-left: 3px solid #9e1919;
    border-right: 2px solid #ff2300;
    border-bottom: 2px solid #ff2300;
    opacity: 0.8;
}
.address_send{
	margin-bottom: 20px;
}
.address_send .title{
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-bottom:10px;
}
.address_send span{
	color:#a00000;
}
.address_send .posttext div,
.address_send .addresstext div{
	margin-top: 10px;
    background: #efefef;
    font-size: 18px;
    font-weight: bold;
    padding: 10px;
}
.address_send .posttext span,
.address_send .addresstext span{
	padding:5px;
	font-size:18px;
	display:block;
	color:#333;
}
.outmodal99 #regist-btn {
    width: 48%;
    display: block;
    padding: 15px 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 5px;
    background: #dc1d09;
    text-align: center;
    margin: 10px auto;
    cursor: pointer;
    float: right;
}
.outmodal99 .back_btn{
    width: 48%;
    display: block;
    padding: 15px 0;
    font-size: 20px;
    font-weight: bold;
    background: linear-gradient(#ffe20d,#ffcf22);
    border: 1px solid #efcb1e;
    border-radius: 5px;
    text-align: center;
    margin: 10px auto;
    cursor: pointer;
    float: left;
}
.outmodal99 .back_btn:hover{
	opacity: 0.6;
}
.payselect label{
	margin-right:15px;
}
div[class^="alert"]{
	position:absolute;
}
div[class^="alert"] span{
	display:none;
}
.registcontents table .patr td{
	padding:0;
}
.registcontents table .patr .posttd{
    vertical-align: top;
    padding-left: 5px;
    font-size: 25px;
}
.registcontents table .patr input{
	margin:0;
}
span[class^="alert"],
span[class^="log"]{
	display:none;
	z-index:3;
	position:absolute;
    top: -15px;
	left:0;
    background: #ffd020;
    color: #333;
    font-size: 14px;
    border: 2px solid #333;
    padding: 4px 10px 4px 10px;
	border-radius:5px;
	cursor:pointer;
}
span.alert4,
span.log4{
	top:-39px;
}
span.alert5,
span.log5{
	top:-40px;
}
span[class^="alert"]::before,
span[class^="log"]::before{
	content:"";
	position:absolute;
	bottom:-20px;
	left:10px;
	border-top:10px solid #333;
	border-bottom:10px solid transparent;
	border-left:10px solid transparent;
	border-right:10px solid transparent;
}
span[class^="alert"]::after,
span[class^="log"]::after{
	content:"";
	position:absolute;
	bottom:-18px;
	left:10px;
	border-top:10px solid #ffd020;
	border-bottom:10px solid transparent;
	border-left:10px solid transparent;
	border-right:10px solid transparent;
}
/********************/
/*
　　　  注文確認	
					*/
/********************/
.user{
	width:100%;
	border:1px solid #e2e2e2;
	padding:20px;
	padding-top:0;
	overflow: hidden;
	margin-bottom:30px;
}
.checktitle{
	clear:both;
	border-bottom: 1px solid #e2e2e2;
    padding: 5px 0;
    font-size: 18px;
    font-weight: bold;
	margin-top:20px;
}
.user_left{
	width:60%;
	float:left;
	overflow: hidden;
}
.user_right{
	width:35%;
	float:right;
	overflow: hidden;
}
.user_right .checktitle{
	margin-bottom: 10px;
}
.user_left .address span{
	margin:10px 0;
	display:inline-block;
	text-decoration:underline;
	cursor:pointer;
	color:#0069b7;
}
.user_left .address span:hover{
	color:#a00000;
}
.user_left table{
	width:100%;
}
.user_left table th{
	width:120px;
	vertical-align: top;
	padding-top:9px;
	text-align: left;
}
.user_left table td{
	vertical-align: top;
	padding-top:9px;
}
.user_left table span{
	display:inline-block;
	text-decoration:underline;
	float:right;
	cursor:pointer;
	color:#0069b7;
}
.user_left table span:hover{
	color:#a00000;
}
.user_left .slidead,
.user_left .slidemail,
.user_left .slidecall,
.user_left .slidepay{
	display:none;
	padding:5px 0;
}
.user_left .slidemail form,
.user_left .slidecall form{
	height:30px;
	width:328px;
	border:1px solid #e2e2e2;
}
.user_left .slidemail input[type="text"],
.user_left .slidecall input[type="text"]{
	float:left;
	border:1px solid #dcdcdc;
	border-right:none;
    width: 246px;
	height:28px;
	padding:5px;
	font-size:16px;
}
.user_left .slidemail input[type="submit"],
.user_left .slidecall input[type="submit"]{
	border:none;
    background: #dcdcdc;
	float:right;
	width:75px;
	height:28px;
	cursor:pointer;
}
.user_left .slidepay{
    vertical-align: top;
    padding-top: 12px;
}
.user_left .slidepay div{
	width:246px;
	float:left;
	overflow: hidden;
}
.user_left .slidepay label{
	display:block;
}
.user_left .slidepay input[type="submit"]{
    border: none;
    float: right;
    width: 75px;
    height: 28px;
	cursor:pointer;
}
.user_left .slidead{
	border:1px solid #e2e2e2;
	padding:0;
}
.user_left .slidead th{
	text-align: center;
}
.user_left .slidead th label{
	display: block;
    height: 70px;
	width:100%;
	padding:15px 0;
}
.user_left .slidead td{
	padding:10px;
}
.user_left .slidead td input{
	width:200px;
	height:30px;
	padding:5px;
	margin-bottom:5px;
}
.user_left .slidead form input[type="submit"]{
     width: 60%;
    background: #56a3dc;
    border: none;
    padding: 7px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    margin: 15px auto;
    display: block;
	cursor:pointer;
}
.user_left .slidead td:nth-child(2) p{
	width:88%;
	overflow: hidden;
	float:left;
	font-size:13px;
}
.user_left .slidead td:nth-child(2) span{
	width:11%;
	display:block;
	float:right;
	text-align: right;
}
.user_left .slidead td:last-child{
	display:none;
}
.user_left .slidead td:last-child span{
	display:block;
	margin:0;
}
.user_left .slidead form input[type="submit"].adsubmit2{
	display:none;
}
.user_left .slidead .dest{
	background:#fff0b8;
}
.user_right input[type="text"]{
    padding: 5px;
    border: 1px solid #dcdcdc;
    border-right: none;
	width:150px;
	float:left;
	height:28px;
}
.user_right input[type="submit"]{
    padding: 5px;
	border:none;
	background:#dcdcdc;
	width:48px;
	height:28px;
	cursor:pointer;
}
.address ul{
	position: relative;
	overflow: hidden;
	margin-bottom:20px;
}
.address ul .rightpos{
	position:absolute;
	right:0;
	top:0;
}
.address span{
	margin:10px 0;
	display:inline-block;
	text-decoration:underline;
	cursor:pointer;
	color:#0069b7;
}
.address span:hover{
	color:#a00000;
}
.address_fix{
	font-size:16px;
}
.address_form{
	display:none;
	overflow: hidden;
	margin:5px 0;
}
.post_t input[type="text"]{
	margin-bottom:5px;
}
.address_form input {
	margin-bottom:5px;
}
.address_post label{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
    display: block;
}
.address_post label input{
    height: 16px;
    width: 16px;
    margin-right: 3px;
    vertical-align: middle;
    margin-bottom: 2px;
}
.address_post{
	position:relative;
}
.post_off{
    display: inline-block;
    text-decoration: underline;
    cursor: pointer;
    color: #0069b7;
	position: absolute;
	top:0;
	right:0;
}
.post_t{
	clear: both;
}
.post_ad{
	position:absolute;
	top:0;
	right:0;
    display: inline-block;
    text-decoration: underline;
    cursor: pointer;
    color: #0069b7;
}
.post_ad:hover{
	color:#a00000;
	cursor:pointer;
}
.slidepost{
	display: none;
}
.address_form input[type="text"],
.post_t input[type="text"]{
	border:1px solid #e2e2e2;
	float:left;
	height:30px;
	width:328px;
	padding:5px;
	font-size:16px;
}
.address_form_fix{
	padding:20px 0;
	display:none;
}
.address_form_fix input{
    background: #e2e2e2;
    border: none;
    display: block;
    width: 100%;
    padding: 5px 10px;
    font-size: 18px;
}
.address_form_fix input:hover{
	cursor:pointer;
	opacity:0.6;
}
/********************/
/*
　　　お支払いページ	
					*/
/********************/
.payarea{
	border:1px solid #e2e2e2;
	margin:20px 0;
	padding:20px 50px;
	border-radius:5px;
}
.payarea .bank{
	width:45%;
	margin:0 auto;
	font-size:28px;
}
.payarea .bank th{
	width:200px;
	padding:5px 0;
}
.payarea .bank td:nth-last-child(2){
	width:30px;
	text-align:center;
}
.payarea .note{
	display:block;
	width:70%;
	margin:20px auto;
	overflow: hidden;
	border:1px solid #e2e2e2;
	padding:10px;
}
.payarea .note li{
	font-size:16px;
	margin:5px 0;
}
.payarea .payselect{
	display:block;
	width:45%;
	margin:30px auto;
}
.payarea .ps_title{
	font-size:20px;
	font-weight:bold;
	margin-bottom:10px;
}
.payarea .payselect li{
	font-size:18px;
	margin-bottom:10px;
}
.payarea .payselect li a{
	display:block;
	padding:10px;
	height:100%;
	width:100%;
    border-radius: 5px;
    text-decoration: none;
    color: #333;
    position: relative;
    overflow: hidden;
    background: linear-gradient(#ffe20d,#ffcf22);
    border: 1px solid #efcb1e;
	transition:ease all 0.3s;
	text-align:center;
}
.payarea .payselect .bank{
	width:100%;
	background:#ffe8e8;
	position:relative;
	border:2px solid #b50a0a;
	margin:20px 0;
	margin-bottom:5px;
	z-index:3;
	font-size:14px;
	padding:5px;
}
.payarea .payselect .bank::before{
    content: "";
    border-top: 20px solid #b50a0a;
    border-bottom: 20px solid transparent;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    position: absolute;
    bottom: -40px;
    left: 30px;
	z-index:3;
}
.payarea .payselect .bank::after{
    content: "";
    border-top: 20px solid #ffe8e8;
    border-bottom: 20px solid transparent;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    position: absolute;
    bottom: -36px;
    left: 30px;
	z-index:3;
}
.payarea .payselect li a:hover{
	background:#0069b7;
	color:#fff;
	border:1px solid #0069b7;
}
.payarea .paylink{
	width:70%;
	margin:20px auto;
}
.payarea .paylink form{
    display: block;
    width: 100%;
    border-top: 3px solid #ff2300;
    border-left: 3px solid #ff2300;
    border-right: 2px solid #9e1919;
    border-bottom: 2px solid #9e1919;
    border-radius: 10px;
    background: #dc1d09;
    position: relative;
    line-height: 1;
    text-align: center;
    overflow: hidden;
	margin:20px 0;
}
.payarea .paylink form input{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	display:block;
	border:none;
	background: none;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    padding: 20px 10px;
    padding-left: 45px;
	cursor: pointer;
}
.payarea .paylink form:hover{
    border-top: 3px solid #9e1919;
    border-left: 3px solid #9e1919;
    border-right: 2px solid #ff2300;
    border-bottom: 2px solid #ff2300;
    opacity: 0.8;
}
.payarea .paylink form.visa::before{
	content:"";
	background:url(../img/cregit1.jpg)no-repeat left top;
	background-size:100px;
	width:100px;
	height:75px;
	display:block;
	position:absolute;
    left: 110px;
    top: 10px;
	border-radius:5px;
}
.payarea .paylink form.jcb::before{
	content:"";
	background:url(../img/cregit2.jpg)no-repeat left top;
	background-size:100px;
	width:100px;
	height:75px;
	display:block;
	position:absolute;
    left: 110px;
    top: 10px;
	border-radius:5px;
}
.payarea .paylink form.master::before{
	content:"";
	background:url(../img/cregit3.jpg)no-repeat left top;
	background-size:100px;
	width:100px;
	height:75px;
	display:block;
	position:absolute;
    left: 110px;
    top: 10px;
	border-radius:5px;
}
.payarea .paylink form.amex::before{
	content:"";
	background:url(../img/cregit4.jpg)no-repeat left top;
	background-size:100px;
	width:100px;
	height:75px;
	display:block;
	position:absolute;
    left: 110px;
    top: 10px;
	border-radius:5px;
}

#ref_postal_code_err.err_mes , #ref_address_err.err_mes , #postal_code_err.err_mes , #address_err.err_mes{
    font-size: 15px;
    font-weight: normal;
    color: #FF4040;
    display: block;
    margin: 0;
    text-decoration: none;
    cursor: auto;
    clear: both;
}


/********************/
/*
　フッターバナー	
					*/
/********************/
.thanks_line,
.entry_line {
	text-align: center;
}

.thanks_line img:hover,
.entry_line img:hover {
	opacity: 0.7;
	transition: 0.3s;
}


/********************/
/*
 recommend ppz
*/
/********************/
.ppz_recommend_box {
    width: 100%;
    margin-bottom: 60px;
}

.recommend_item_head::before {
    content: "\f005";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 0.5rem;
    color: #ffd120;
}

.ppz_item_list {
    overflow-x: auto;
    margin-bottom: 10px;
}

.ppz_item_list ul {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 10px;
}

.ppz_item_list ul li a {
    display: block;
    overflow: hidden;
    padding: 10px;
    width: 140px;
    margin-right: 0.5rem;
    position: relative;
}

.ppz_item_list ul li a {
    width: 140px;
}

.ppz_item_list ul li .listimg {
    width: 100%;
    overflow: hidden;
    background: radial-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.8));
}

.ppz_item_list ul li .listimg img {
    width: 100%;
    transition: ease all 0.3s;
}

.ppz_item_list ul li a:hover {
    background: #e2e2e2;
}

.ppz_item_list ul li a:hover .listimg img {
    transform: scale(1.2);
    opacity: 0.8;
}

.ppz_recommend_list .ppz_item_list li a {
    width: 180px;
}

.ppz_recommend_list .item_title {
    height: 42px;
}

.ppz_item_list .item_price {
    display: inline-block;
    float: right;
    font-weight: 700;
    color: #a00000;
    font-size: 14px;
}

#wait {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999999;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.8);
}
#wait .inner {
	margin: 140px auto;
	width: 240px;
	hegiht: 240px;
}
#wait .inner p {
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 40px;
}

/* カートページバナーエリア */
.bana_area{
    width: 90%;
    margin: 25px auto 50px;
    border: 1px solid #000;
    padding: 3px;
}
.bana_area + .bana_area{
    margin-top:-25px;
}
.bana_area a{
    display: block;
}
.bana_area a:hover img{
    opacity: .75;
}
.bana_area img{
    max-width: 100%;
    width: auto !important;
    height: auto;
}

/* カートページオムニクーポン */
#ftc_modal_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 901;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, .7)
}

#ftc_modal_overlay .scroll_wrap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 902;
	width: 100%;
	height: 100%;
	overflow: auto
}

.ftc_modal_box {
	display: none;
	z-index: 903;
	width: 80%;
	max-width: 600px;
	padding: 0 0 86px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	padding-bottom: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	margin: 0;
	max-height: calc(100% - 100px);
	font-family: Lato, noto sans jp, 游ゴシック medium, 游ゴシック体, yu gothic medium, YuGothic, ヒラギノ角ゴ pron, hiragino kaku gothic pron, メイリオ, Meiryo, ＭＳ Ｐゴシック, ms pgothic, sans-serif
}

.ftc_modal_box .close_btn {
	position: absolute;
	top: -45px;
	right: 0;
	z-index: 905;
	width: 48px;
	height: 48px;
	padding: 6px 0;
	color: #fff;
	font-size: 36px;
	line-height: 48px;
	text-align: center;
	cursor: pointer;
	background: #007ebe;
	border-radius: 4px 4px 0 0;
	box-sizing: border-box
}

.ftc_modal_box .close_btn .fa {
	vertical-align: top
}

.ftc_check {
	position: absolute;
	top: 5px;
	right: 10px;
	z-index: 1000
}

.ftc_check label {
	font-size: .8em;
	line-height: 2
}

.ftc_check input {
	height: 20px;
	vertical-align: middle;
	margin-left: 5px
}

.inner_modal_box {
	background: #fff;
	border: 4px solid #007EBE;
	height: auto;
	overflow-y: auto;
}

.ftc_modal_box .title {
	position: relative;
	padding: 30px 30px 12px;
	font-size: 26px;
	font-weight: 700;
	line-height: 36px;
	text-align: center
}

.ftc_modal_box .title span {
	display: block;
	color: #d00000;
	font-weight: 600
}

.ftc_modal_box .body {
	padding: 0 50px 20px;
}

.ftc_modal_box .body img {
	margin: 0 auto 20px;
	display: block;
	width: 100%;
	height: auto
}

.ftc_modal_box .body p.tac {
	display: block;
	text-align: center;
	font-size: 14px;
	line-height: 1.5;
	display: block;
	margin: 0;
}

.ftc_modal_box .body p.red {
	color: #d00000
}

.ftc_modal_box .gray_btn.ok_btn {
	position: absolute;
	left: calc(50% - 161px);
	bottom: 20px;
	width: 320px;
	padding: 12px 0;
	font-size: 20px;
	line-height: 1
}

.ftc_modal_box .red_btn {
	width: 540px;
	color: #fff;
	padding: 16px 0;
	font-size: 20px;
	line-height: 1;
	pointer-events: none;
	background: #aaa;
	border: none;
	border-radius: 8px;
	max-width: 100%;
	height: 50px;
	margin: 15px 0;
	text-shadow: none;
	letter-spacing: .05rem;
	font-family: Lato, noto sans jp, 游ゴシック medium, 游ゴシック体, yu gothic medium, YuGothic, ヒラギノ角ゴ pron, hiragino kaku gothic pron, メイリオ, Meiryo, ＭＳ Ｐゴシック, ms pgothic, sans-serif;

}

.ftc_modal_box .red_btn.ok {
	pointer-events: inherit;
	background: #269d20;
	border: none
}

.ftc_modal_box .input_wrapper select,
.ftc_modal_box .input_wrapper input {
	display: block;
	width: 100%;
	min-height: 40px;
	height: 100%;
	max-height: 40px;
	padding: 0 10px;
	font-size: 16px;
	line-height: 40px;
	vertical-align: middle;
	background: 0 0;
	border: none;
	outline: none;
	caret-color: #2a2a2a;
	font-family: Lato, noto sans jp, 游ゴシック medium, 游ゴシック体, yu gothic medium, YuGothic, ヒラギノ角ゴ pron, hiragino kaku gothic pron, メイリオ, Meiryo, ＭＳ Ｐゴシック, ms pgothic, sans-serif
}

.ftc_modal_box .input_wrapper {
	display: inline-block;
	position: relative;
	width: 100%;
	min-height: 50px;
	height: auto;
	padding: 4px 0;
	vertical-align: middle;
	background: #ffeaea;
	border: 1px solid #aaa;
	border-radius: 8px;
	box-sizing: border-box
}

.input_column .err {
	margin: 6px
}

.input_column .err p {
	position: relative;
	margin: 0;
	padding: 0 0 0 20px;
	color: #d00000;
	font-size: 14px;
	font-weight: 700;
	line-height: 16px
}

/* 
.input_column .err p::before {
position: absolute;
top: 0;
left: 0;
width: 16px;
height: 16px;
color: #fff;
content: "\f00d";
font-family: "font awesome 5 pro";
font-style: normal;
font-weight: 400;
text-align: center;
line-height: 16px;
background: #d00000;
border-radius: 50%
} */

.ftc_modal_box .body p.icloud_alert {
	position: relative;
	margin: 2px 0 10px 10px;
	padding: 0 0 0 18px;
	color: #1010ca;
	font-size: 14px;
	line-height: 22px;
	cursor: pointer
}

.ftc_modal_box .icloud_alert strong {
	font-size: 16px;
	font-weight: 700
}

.ftc_modal_box .icloud_alert i {
	position: absolute;
	top: 3px;
	left: 0;
	color: #1010ca;
	font-size: 16px;
	font-weight: 700;
	line-height: 1
}

.ftc_modal_box .column_title {
	position: relative;
	height: auto;
	margin: 0 5px 10px;
	padding: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 20px
}

.ftc_modal_box .input_column {
	margin-top: 15px
}

.ui-widget.ui-widget-content {
	z-index: 1000;
	border-color: #fa70a0;
	box-shadow: 0 0 2px 1px #fa70a0;
}

.ui-menu .ui-menu-item {
	padding: 4px 0 4px 10px;
	font-size: 14px;
	line-height: 20px;
	border-bottom: 2px dotted #a0a0a0
}

.ftc_modal_box ul {
	padding: 0 0 0 20px
}

.ftc_modal_box ul li {
	padding: 3px 0;
	list-style: disc;
	font-size: 15px;
	color: #da0000
}

.ftc_modal_box {
	max-width: 700px
}

.ftc_modal_box .red_btn {
	width: 640px
}

.coupon_red {
	color: #e00000;
	font-size: 17px;
	font-weight: 600;
}

.loop {
	position: relative;
	/* display: flex; */
	display: none;
	align-items: center;
	width: 100vw;
	height: auto;
	margin: 0 0 20px 0;
	background-color: #0069b7;
	overflow: hidden;
}

.loop p {
	flex: 0 0 auto;
	height: max-content;
	margin: 0;
	padding: 10px 50px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 28px;
	vertical-align: bottom;
	white-space: nowrap;
	will-change: transform;
}

.loop p strong {
	margin: 0 !important;
	padding: 0 20px 0 0;
	color: #fff100;
	font-size: 28px;
	line-height: 28px;
}

.loop p:nth-child(odd) {
	animation: loop 6s -3s linear infinite;
	backface-visibility: hidden;
	will-change: transform;
}

.loop p:nth-child(even) {
	animation: loop2 6s linear infinite;
}

@keyframes loop {
	0% {
		transform: translateX(100%);
	}

	to {
		transform: translateX(-100%);
	}
}

@keyframes loop2 {
	0% {
		transform: translateX(0);
	}

	to {
		transform: translateX(-200%);
	}
}


/* 25/10/30　追加 */
.note1 {
margin: 10px auto 40px;
line-height: 1.6;
font-size: 16px;
}

.note.ver2 {
border: none;
font-size: 16px;
line-height: 1.6;
padding-left: 0;
padding-right: 0;
}

.ver2 .carttitle {
text-align: center;
margin-bottom: 10px;
}

.atopay_flow_box {
padding: 20px;
border: 1px solid #ddd;
margin-bottom: 20px;
background: #f9f9f9;
}

.atopay_flow_box .atopay_flow_h {
font-size: 18px;
font-weight: bold;
margin-bottom: 10px;
display: block;
}

.payarea.ver1,
.payarea.ver2 {
width: 80%;
font-size: 16px;
box-sizing: border-box;
padding: 20px 20px 0 20px;
margin: 20px auto;
border: none;
display: flex;
flex-direction: column;
justify-content: center;
}

.payarea.ver1{
text-align: center;
}

.payarea.ver2{
background: #d5edff;
margin-top: 40px;
}

.payarea.ver2 .cBox {
width: 55%;
margin: 0 auto;
}

.textRed {
color: #e00000;
}