@charset "utf-8";

.order_red{color: #d84b4b;}
.orderNew_bankSend_wrap{text-decoration: none;}

/* PC */
@media (min-width: 752px) {

/* 全体共通 */
.orderNew_wrapper{
	}

.el_ttl_sideBorder__purple{
	margin: 0;
	font-weight: bold;
	border-left: 5px solid #6226ee;
	padding-left: 10px;
	margin-bottom: 10px !important;
	font-size: 1.2rem;
	}

.el_ttl_sideBorder__purple.min{
	padding-left: 8px;
	font-size: 1rem;
	line-height: 1.5;
	}

.ml5{
	margin-left: 5px;
	}

.bl_orderNew_captionBox{
	background: #eee;
	padding: 20px;
	font-size: 0.8rem;
	line-height: 1.5;
	}

.orderNew_optionWrap__inner{
	padding: 15px;
	}

.orderNew_optionWrap dt{
	background: #1aa458;
	padding: 10px 15px;
	text-align: center;
	font-weight: bold;
	color: #fff;
	font-size: 1.2rem;
	}

.orderNew_optionWrap dd{
	padding: 20px;
	text-align: center;
	font-size: 2.8rem;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	letter-spacing: 2px;
	}

.orderGreen{
	color: #1aa458;
	}

.orderNew_lastBtn_wrap{
	margin: 20px 0;
	text-align: center;
	}

.btn_order__back{
	border: 1px solid #6226ee;
	color: #6226ee !important;
	font-size: 1rem;
	padding: 15px;
	border-radius: 4px;
	width: 80%;
	display: inline-block;
	background: #fff;
	cursor: pointer;
	text-decoration: none;
	}

.btn_order__back:hover{
	color: #6226ee;
	opacity: 0.7;
	text-decoration: none;
	}


.ordernew__txt_min{
	font-size: 80%;
	}

.normal{
	font-weight: normal;
	}

.orderNew_articleWrap{
	margin: 20px 0 !important;
	}

#order dt, #order dd{
	margin: 0;
	}
#order dl{
	line-height: normal;
	}

.bold{
	font-weight: bold;
	}

.orderNew_num{
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight:700;
	font-style: normal;
	}

.orderNew_num.thin{
	font-weight:300;
	}

.orderNew_errorTxt{
	margin: 0 !important;
	margin-top:10px!important;
	color: #c60a0a;
	font-size: 0.8rem;
	}

/* OKメッセージ */
.bl_box_normallyMsg{
	background: #d9f7f2;
	border-left: 8px solid #24b299;
	font-size: 1.2rem;
	}

.preorder .bl_box_normallyMsg{
	margin: 20px !important;
	}

.bl_box_normallyMsg p{
	padding: 15px;
	}

.normallyIco{
	color: #24b299;
	margin-right: 5px;
	}

/* エラーメッセージ */
.bl_box_errorMsg{
	background: #fdefef;
	border-left: 8px solid #dc5b5b;
	font-size: 1.2rem;
	}

.bl_box_errorMsg p{
	padding: 15px;
	}

.errorIco{
	color: #dc5b5b;
	margin-right: 5px;
	}

/* 見出し */
.bl_header_orderNew{
	background: #1aa458;
	color: #fff;
	padding: 20px;
	text-align: center;
	font-size: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	margin-top: -4px;
	}

.bl_header_orderNew span{
	padding-top: 0.2em;
	}

.header_orderNew_ico{
	height: 2.8rem;
	width: auto;
	margin: 0 13px 0 0 !important;
	opacity: 0.2;
	}

.ttl_orderNew{
	margin: 0 !important;
	text-align: center;
	font-size: 1.4rem;
	color: #6226ee;
	line-height: 1.5;
	margin-top: 40px !important;
	margin-bottom: 20px !important;
	}

/* 注釈リスト */
.bl_orderNew_notes{
	margin: 30px 0;
	list-style-type: disc !important;
	list-style: disc !important;
	padding-left: 1rem;
	font-size: 1rem;
	}

.bl_orderNew_notes li{
	list-style: disc !important;
	margin-bottom: 10px;
	line-height: 1.5;
	}

.bl_orderNew_notes li:last-child{
	margin-bottom: 0;
	}

.bl_orderNew_notes.min{
	margin: 30px 0;
	font-size: 1rem;
	padding-left: 1.1rem;
	}

.bl_orderNew_notes.min li{
	margin-bottom: 10px;
	}


/* ステップバー */
.bl_orderFlow {
  display: flex;
  max-width: 400px;
  position: relative;
  margin: 10px auto 30px;
  text-align: center;
}
.bl_orderFlow li {
  font-size: 0.8rem;
  list-style: none;
  position: relative;
  width: 33.333%;
}
.bl_orderFlow li:after {
  background: #cfd8dc;
  content: "";
  width: calc(100% - 24px);
  height: 3px;
  position: absolute;
  left: calc(-50% + 16px);
  top: 14px;
}
.bl_orderFlow li:first-child:after {
  display: none;
}
.bl_orderFlow li span {
  background: #cfd8dc;
  color: #ffffff;	
  font-weight: bold;
  font-size: 1.3rem;
  display: inline-block;
  height: 2rem;
  margin-bottom: 8px;
  line-height: 2rem;
  width: 2rem;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  z-index: 20;

  font-family: "Inter", serif;
  font-optical-sizing: auto;
  font-weight:700;
  font-style: normal;
}

.bl_orderFlow .visited:after {
  background: #6226ee;
}

.bl_orderFlow .visited span {
  background: #6226ee;
}

/* 商品カード */
.itemCardWrap{
	display: block;
	width: 500px;
	margin: 0 auto;
	color: #333;
	box-sizing: border-box;
	background-color: #fff;
	text-decoration: none;
	}

.itemCardWrap div{
	color: #333;
	}

.itemCardWrap:hover{
	display: block;
	opacity: 0.7;
	text-decoration: none;
	}

.bl_itemCard{
	border: 4px solid #c4c4c4;
	border-radius: 20px;
	margin: 20px auto 0;
	width: 500px;
	box-sizing: border-box;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	background-color: #fff;
	}

.itemCard_inner{
	padding: 20px;
	}

.itemCard_detailWrap{
	line-height: 1.5;
	}

.itemCard_detailWrap img{
	margin-bottom: 20px;
	min-width: 100%;
	}

/* ポイント商品フォーマット_pc */
.el_pointItem{
	background: #eee;
	border-radius: 10px;
	padding: 15px;
	display: flex;
	align-items: center;
	}

.pointItem_copy{
	font-weight: bold;
	font-size: 1.1rem;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 8px;
	}

.pointItem_copy i{padding-right: 4px; color: #909090;}

.el_pointItem dt{
	font-family: 'Inter', serif;
	font-weight:800;
	font-size: 2.4rem;
	line-height: 1;

	background: url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 2.2rem;
	background-position: left center;
	padding-left: calc(2.2rem + 6px);
	}

.el_pointItem dd{
	font-size: 1.2rem;
	font-weight: bold;
	background: url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 1.2rem;
	background-position: left center;
	padding-left: calc(1.2rem + 4px);
	margin-left: auto;
	color: #d84b4b;
	}

.el_pointItem dd span{
	font-family: 'Inter', serif;
	font-weight:800;
	font-size: 1.3rem;
	color: #333;
	}

.el_pointItem dd .order_red{
	font-family: 'Inter', serif;
	font-weight:800;
	color: #d84b4b;
	}

.itemCard_point{
	display: flex;
	gap:15px;
	align-items: stretch;
	border-top: 2px solid #6226ee;
	box-sizing: border-box;
	margin: 0 !important;
	margin-top: 20px !important;
	background: #f4f4f4;
	}

.itemCard_point dt{
	background: #6226ee;
	clip-path: polygon(0 0, 100% 0%, 80% 100%, 0% 100%);
	color: #fff;
	font-weight: bold;
	padding:10px 32px 10px 15px;
	margin: 0 !important;
	font-size: 1.1rem;
	display: flex;
	align-items: center;
	}

.itemCard_point dd{
	color: #333;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 1.8rem;
	margin: 0 !important;
	margin-left: auto !important;
	padding-right: 15px;
	display: flex;
	align-items: center;

	background: url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 1.7rem;
	 background-position: left center;
	  padding-left: calc(1.7rem + 6px);
	}

.itemCard_priceWrap_wrapper{
	padding:0 10px 20px;
	}

.itemCard_priceWrap{
	background: #ede4ff;
	padding:15px 20px;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.8rem;
	text-align: center;
	color: #2a261f;
	border-radius: 8px;
	}

.itemCard_priceWrap .goods_price{
	font-family: 'Inter', serif;
	font-weight:800;
	}

/* 商品選択画面の料金部分 */
.itemCardWrap .itemCard_priceWrap{
	position: relative;
	background: #ede4ff;
	padding:15px 10% 15px 20px;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.8rem;
	text-align: center;
	color: #2a261f;
	border-radius: 8px;
	}

.itemCardWrap .itemCard_priceWrap::before{
	content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 10%;
    border-radius: 0 5px 5px 0;
    background-color: #6226ee;
    background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__white.png);
    background-repeat: no-repeat;
    background-size: 25% auto;
    background-position: center center;
	}

.priceYen{
	font-family: sans-serif;
	font-size: 60%;
	}

.priceTax{
	font-family: sans-serif;
	font-size: 40%;
	font-weight: normal;
	}

#useService{width: 600px; margin: 0 auto;}

/* 割引選択 */
.orderNew_discountWrap{
	border: 1px solid #cccccc;
	background: #fff;
	margin: 40px auto 30px !important;
	}

.orderNew_optionWrap{
	border: 1px solid #cccccc;
	background: #fff;
	margin: 20px 0 !important;
	}

.orderNew_discount__header{
	font-size: 1.5rem;
	background: #6226ee;
	color: #fff;
	margin: 0;
	padding:13px 20px;
	text-align: center;
	} 

.orderNew_optionWrap.min{
	font-size: 0.8rem;
	}

.orderNew_optionWrap__inner{
	padding: 15px;
	}

.orderNew_optionWrap.min .orderNew_optionWrap__inner{
	font-size: 0.8rem;
	padding: 10px;
	}

.orderNew_optionWrap dd{
	padding:8px 15px;
	}

.orderNew_bankNum{
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 2.2rem;
	}

.orderNew_bankNum.red a{
	color: #cd0e0e;
	text-decoration: none;
	}

.orderNew_discount__txt{
	margin:20px !important;
	}

.bl_discountB_kinds{
	display: block;
	border-top: 1px solid #cccccc;
	padding:15px 20px;
	width: 100%;
	box-sizing: border-box;
	}

.bl_discountB_kinds.usePoint{
	color: #333;	
	}

:where(.bl_discountB_kinds.usePoint)::after{
	content: "";
	}

.bl_discountB_kinds label{display: block;}

.el_order_label{
	 position: relative;
  cursor: pointer;
  padding-left: 35px;
  font-weight: bold;
	}


.el_order_label::before,.el_order_label::after{
	 content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
	}

.el_order_label::before{
	background-color: #fff;
  border: 2px solid #ddd;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  left: 5px;
	}

.el_order_label::after{
	background-color: #6226ee;
  border-radius: 50%;
  opacity: 0;
  width: 12px;
  height: 12px;
  left: 10px;
	}

input.el_order_input:checked + label.el_order_label::after {
	opacity: 1;
	}

input.el_order_input:checked + label.el_order_label::before {
	border: 2px solid #6226ee;
	max-width: 100%;
	}

.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}

.orderNew_discountWrap label{
	margin: 0px;
	display: block;
	font-size: 1.2rem;
	}


select.selectTicket{
	 -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;	
  position: relative;
	}

.selectTicket_wrap {
	position: relative;
   	background: #fafafa;
	border: 1px solid #c1c1c1;
	width: 100%;
	margin-top: 15px;
	display: block;
}

select.selectTicket{
	position: relative;
	font-size: 1.2rem;
	color: #333;
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	display: block;
	}

.selectTicket_wrap::after{
	content: "";
    position: absolute;
    top:22px;
    right: 15px;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 8px solid #c1c1c1;
    border-bottom: 0;
	}

select.selectTicket:focus{
	outline: 3px solid #6226ee;
	}

.orderNew_articleWrap textarea:focus{
	outline: 3px solid #6226ee;
	}

.hoverPoint_wrap{
	font-size: 1.1rem;
	text-align: right;
	margin-top: 15px;
	}

.hoverPoint_wrap li{
	line-height: 1.7;
	list-style: none;
	}

.hoverPoint_wrap li .orderNew_num{
	font-size: 120%;
	padding: 0 5px;
	}

.inputPoint-wrap{
	margin-top: 15px;
	}

.ttl_inputPoint{
	margin: 0 !important;
	margin-bottom: 10px;
	font-size: 1.1rem;
	}

.inputPoint{
	font-size: 1.2rem;
	color: #333;
	background: #fafafa;
	border: 1px solid #c1c1c1;
	width: 100%;
	padding:15px !important;
	box-sizing: border-box;
	font-weight: normal;
	}

input.inputPoint:hover{
	border: 1px solid #6226ee;
	}

input.inputPoint:focus{
	outline: 3px solid #6226ee;
	}


.discount_applyBtn_wrap{
	margin: 20px 20px 30px 20px;
	text-align: center;
	}

input.discount_applyBtn{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	font-size: 1.5rem;
	font-weight: bold;
	color: #fff;
	padding:15px 20px;
	background: #cc0000;
	border-radius: 6px;
/* 	line-height: 1em; */
	cursor: pointer;
	width: 100%;
	}

input.discount_applyBtn:hover{
	opacity: 0.7;
	}

.discountB_wrap{
	margin: 0 20px 30px;
	}

/* 決済内容 */
.orderNew_arrow__bottom{
	margin: 0 auto;
	width: 60px;
	margin-top: 15px;
	}

.orderNew_arrow__bottom img{
	width: 100%;
	height: auto;
	}

.orderNew_review__wrap{
	border: 3px solid #6226ee;
	background: #fff;
	margin: 30px auto;
	width: 600px;
	}

.orderNew_review__header{
	background: #6226ee;
	color: #fff;
	padding: 15px;
	text-align: center;
	font-size: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	}

.orderNew_review__inner{
	padding: 30px;
	line-height: 1.5;
	}

.orderNew_review__inner img{
	margin-bottom: 20px;
	}

.orderNew_review__price{
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.8rem !important;
	text-align: right;
	color: #2a261f;
	padding:0 20px 10px;
	}

.orderNew_review__price .totalAmount{
	font-family: 'Inter', serif;
	font-weight:800;
	}

.orderNew_review__serviceNum{
	background: #f4f4f4;
	text-align: right;
	border-top: none;
	padding:20px;
	display: flex;
	align-items: center;
	margin: 0 !important;
	}

.orderNew_review__serviceNum dt{
	font-weight: normal;
	font-size: 1.2rem;
	white-space: nowrap;
	}

.orderNew_review__serviceNum dd{
	text-align: right;
	margin-left: auto !important;
	font-size: 1.8rem;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:700;
	font-style: normal;
	}

.orderNew_review__serviceNum .serviceAmount{
	font-family: 'Inter', serif;
	font-weight:700;
	}

.orderNew_review__totalNum{
	font-size: 2.2rem !important;
	background: #fff7c8;
	text-align: right;
	padding:10px 20px;
	display: flex;
	align-items: center;
	margin: 0 !important;
	}

.orderNew_review__totalNum dt{
	font-weight: normal;
	font-size: 1.2rem;
	white-space: nowrap;
	}

.orderNew_review__totalNum dd{
	padding: 0;
	margin-left: auto !important;
	}

.btn__paymentOpt{
	background: #f7f3ff;
	border: 1px solid #6226ee;
	border-radius: 4px;
	width: 100%;
	padding: 0;
	text-align: left;
	cursor: pointer;
	margin-bottom: 15px;
	}

.btn__paymentOpt.preorder{
	background: #fff;
	cursor: auto;
	border: 1px solid #ada28c;
	}

.btn__paymentOpt:hover{
	background: #e6dbff;
	}

.btn__paymentOpt.preorder:hover{
	background: #fff;
	}

.paymentOpt_header{
	background: #6226ee;
	color: #fff;
	font-weight: bold;
	padding:10px 20px;
	font-size: 1.5rem;
	display: flex;
	align-items: center;
	gap:10px;
	background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__white.png);
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 12px auto;
	}

.btn__paymentOpt.preorder .paymentOpt_header{
	background: #ada28c;
	justify-content: center;
	background-image:none;
	}

.paymentOpt_header__ico img{
	height: 1.8rem;
	width: auto;
	display: flex;
	align-items: center;
	}

.paymentOpt_txt{
	font-size: 1rem;
	padding:15px 20px 8px;
	margin: 0;
	color: #333;
	font-weight: normal;
	}

/* 決済完了ページ */
.order_tableWrap{
	display: flex; gap:15px;
	margin: 20px 0;
	}
.bl_order_table{
	width:320px !important;
	line-height: 1.5;
	font-size: 1rem;
	}

.bl_order_table, .bl_order_table th, .bl_order_table td{
	border: 1px solid #1aa458;
	}

.bl_order_table th, .bl_order_table td{
	padding: 8px;
	vertical-align: middle;
	border-top: none;
	}

.bl_order_table th{
	background: #e0f7f0;
	font-weight: normal;
	border-right: none;
	}

.order_table__num{
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	letter-spacing: 1px;
	font-weight: 800;
	font-style: normal;
	font-size: 150%;
	}

/* 振り込み情報送信ボタン */
.orderNew_bankSend_btn{
	text-align: left;
	border: none;
	background: #fff;
	border: 2px solid #9b9b9b;
	border-radius: 8px;
	padding:0 28px 0 0;
	color: #5b5b5b;
	font-weight: bold;
	display: flex;
	align-items: stretch;
	gap:15px;
	background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__gray.png?01);
	background-repeat: no-repeat;
	background-size: 10px auto;
	background-position: right 10px center;
	cursor: pointer;
	margin: 0 auto;
	}

.orderNew_bankSend_btn:hover{
	opacity: 0.7;
	}

.orderNew_bankSend_wrap:hover{
	text-decoration: none;
	color: #5b5b5b;
	}

.orderNew_bankSend_btn__ico{	
	display: flex;
	align-items: center;
	background: #9b9b9b;
	padding:0 10px 0 10px;
	border-radius: 4px 0 0 4px;
	border: 2px solid #9b9b9b;
	}

.orderNew_bankSend_btn__txt{
	padding: 10px 0 10px 0;
	font-size: 1rem;
	line-height: 1.5;
	}

.orderNew_bankSend_btn__ico img{
	width: 35px;
	height: auto;
	}

.orderNew_credit-logo{
	display: flex;
	gap:8px;
	align-items: center;
	justify-content: center;
	margin-bottom: 15px;
	}

.orderNew_credit-logo span{
	width: 100px; height: auto;
	}

.orderNew_credit-logo span img{
	max-width: 100%; height: auto;
	}

.btn_orderNew__toOutside{
	border-radius: 8px;
	background: #6226ee;
	color: #fff;
	font-weight: bold;
	padding: 15px calc(40px + 1.9rem) 15px 20px;
	font-size: 1.8rem;
	text-align: center;
	width: 100%;
	border: none;
	cursor: pointer;
	display: block;

	background-image: url(/img/ordernew/common/arrow_right__white.png);
	background-repeat: no-repeat;
	background-size: auto 1.9rem;
	background-position: right 20px center;
	}

.btn_orderNew__toOutside:hover{
	opacity: 0.7;
	}

.order_inputTel-wrap{
	margin: 20px 0;
	}

.paymentOpt_icoWrap{
	padding:0 20px 15px 20px; list-style: none; display: flex; gap:8px;
	}

.paymentOpt_ico{
	font-weight: bold;
	display: inline-block;
	padding: 6px 12px;
	line-height: 1;
	border-radius: 100px;
	color: #fff;
	font-size: 13px;
	}

.paymentOpt_ico.anytime{
	background: #5f7ec7;
	}

.paymentOpt_ico.free{
	background: #63af9c;
	}

.paymentOpt_ico.limit{
	background: #dc5b5b;
	}


}


/* SP */
@media (max-width: 751px) {

/* 全体共通 */
.el_ttl_sideBorder__purple{
	margin: 0;
	font-weight: bold;
	border-left: 5px solid #6226ee;
	padding-left: 8px;
	margin-bottom: 6px !important;
	}

.ml5{
	margin-left: 5px;
	}

.bl_orderNew_captionBox{
	background: #eee;
	padding: 15px;
	font-size: 0.8rem;
	line-height: 1.5;
	}

.orderNew_optionWrap__inner{
	padding: 15px;
	}

.orderNew_optionWrap dt{
	background: #1aa458;
	padding: 10px;
	text-align: center;
	font-weight: bold;
	color: #fff;
	font-size: 1rem;
	}

.orderNew_optionWrap dd{
	padding: 15px;
	text-align: center;
	font-size: 2.2rem;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	letter-spacing: 2px;
	}

.orderNew p{
	margin: 0;
	}

.orderGreen{
	color: #1aa458;
	}

.orderNew_lastBtn_wrap{
	margin: 20px 0;
	text-align: center;
	}

.btn_order__back{
	border: 1px solid #6226ee;
	color: #6226ee !important;
	font-size: 1rem;
	padding: 15px;
	border-radius: 4px;
	width: 80%;
	display: inline-block;
	background: #fff;
	cursor: pointer;
	text-decoration: none;
	}

.btn_order__back:hover{
	color: #6226ee;
	opacity: 0.7;
	}


.ordernew__txt_min{
	font-size: 80%;
	}

.normal{
	font-weight: normal;
	}

.orderNew_articleWrap{
	margin: 20px 0 !important;
	}

#order dt, #order dd{
	margin: 0;
	}
#order dl{
	line-height: normal;
	}

.bold{
	font-weight: bold;
	}

.orderNew_num{
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	font-weight:700;
	font-style: normal;
	}

.orderNew_num.thin{
	font-weight:300;
	}

.orderNew_errorTxt{
	margin: 0 !important;
	margin-top:10px!important;
	color: #c60a0a;
	font-size: 0.8rem;
	}

/* OKメッセージ */
.bl_box_normallyMsg{
	background: #d9f7f2;
	border-left: 6px solid #24b299;
	}

.bl_box_normallyMsg p{
	padding: 10px;
	}

.normallyIco{
	color: #24b299;
	margin-right: 5px;
	}

/* エラーメッセージ */
.bl_box_errorMsg{
	background: #fdefef;
	border-left: 6px solid #dc5b5b;
	}

.bl_box_errorMsg p{
	padding: 10px;
	}

.errorIco{
	color: #dc5b5b;
	margin-right: 5px;
	}

/* 見出し */
.bl_header_orderNew{
	background: #1aa458;
	color: #fff;
	padding: 10px;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	}

.header_orderNew_ico{
	height: 2rem;
	width: auto;
	margin-right: 5px;
	opacity: 0.2;
	}

.ttl_orderNew{
	margin: 0 !important;
	text-align: center;
	font-size: 1.2rem;
	color: #6226ee;
	line-height: 1.5;
	margin-top: 30px !important;
	margin-bottom: 15px !important;
	}

/* 注釈リスト */
.bl_orderNew_notes{
	margin: 30px 0;
	list-style-type: disc !important;
	list-style: disc !important;
	padding-left: 1.1rem;
	}

.bl_orderNew_notes li{
	list-style: disc !important;
	margin-bottom: 15px;
	line-height: 1.5;
	}

.bl_orderNew_notes li:last-child{
	margin-bottom: 0;
	}

.bl_orderNew_notes.min{
	margin: 20px 0;
	font-size: 0.8rem;
	padding-left: 0.9rem;
	}

.bl_orderNew_notes.min li{
	margin-bottom: 10px;
	}


/* ステップバー */
.bl_orderFlow {
  display: flex;
  max-width: 400px;
  position: relative;
  margin: 20px auto;
  text-align: center;
}
.bl_orderFlow li {
  font-size: 0.8rem;
  list-style: none;
  position: relative;
  width: 33.333%;
}
.bl_orderFlow li:after {
  background: #cfd8dc;
  content: "";
  width: calc(100% - 24px);
  height: 2px;
  position: absolute;
  left: calc(-50% + 12px);
  top: 11px;
}
.bl_orderFlow li:first-child:after {
  display: none;
}
.bl_orderFlow li span {
  background: #cfd8dc;
  color: #ffffff;	
  font-weight: bold;
  font-size: 1rem;
  display: inline-block;
  height: 1.5rem;
  margin-bottom: 5px;
  line-height: 1.5rem;
  width: 1.5rem;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;

  font-family: "Inter", serif;
  font-optical-sizing: auto;
  font-weight:700;
  font-style: normal;
}

.bl_orderFlow .visited:after {
  background: #6226ee;
}

.bl_orderFlow .visited span {
  background: #6226ee;
}

/* 商品カード */
.itemCardWrap{
	text-decoration: none;
	color: #333;
	}

.itemCardWrap:hover{
	display: block;
	opacity: 0.7;
	}

.bl_itemCard{
	border: 3px solid #c4c4c4;
	border-radius: 15px;
	margin-top: 20px;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
	background-color: #fff;
	}

.itemCard_inner{
	padding: 13px;
	}

.itemCard_detailWrap{
	line-height: 1.5;
	}

.itemCard_detailWrap img{
	margin-bottom: 15px;
	min-width: 100%;
	}

/* ポイント商品フォーマット_sp */
.el_pointItem{
	background: #eee;
	border-radius: 10px;
	padding: 10px;
	display: flex;
	flex-direction: column;
	gap:5px;
	align-items: center;
	}

.pointItem_copy{
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 8px;
	}

.pointItem_copy i{padding-right: 4px; color: #909090;}

.el_pointItem dt{
	font-family: 'Inter', serif;
	font-weight:800;
	font-size: 2.4rem;
	line-height: 1;

	background: url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 2.2rem;
	background-position: left center;
	padding-left: calc(2.2rem + 6px);
	}

.el_pointItem dd{
	font-size: 1.2rem;
	font-weight: bold;
	background: url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 1.2rem;
	background-position: left center;
	padding-left: calc(1.2rem + 4px);
	color: #d84b4b;
	}

.el_pointItem dd span{
	font-family: 'Inter', serif;
	font-weight:800;
	font-size: 1.3rem;
	color: #333;
	}

.el_pointItem dd .order_red{
	font-family: 'Inter', serif;
	font-weight:800;
	color: #d84b4b;
	}



.itemCard_point{
	font-size: 1rem;
	display: flex;
	gap:8px;
	align-items: center;
	border-top: 2px solid #6226ee;
	box-sizing: border-box;
	margin: 0 !important;
	margin-top: 15px !important;
	background: #f4f4f4;
	}

.itemCard_point dt{
	background: #6226ee;
	color: #fff;
	font-weight: bold;
	padding: 8px 26px 8px 13px;
	clip-path: polygon(0 0, 100% 0%, 80% 100%, 0% 100%);
	margin: 0 !important;
	font-size: 1rem;
	}

.itemCard_point dd{
	color: #333;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 1.6rem;
	margin: 0 !important;
	margin-left: auto !important;
	padding-right: 13px;
	padding-left: calc(1.4rem + 4px);

	background:url(/img/common/ico_point.png) no-repeat 0 0;
	background-size: auto 1.4rem;
	 background-position: left center;
	}

.itemCard_priceWrap_wrapper{
	padding:0 13px 13px;
	}

.itemCard_priceWrap{
	background: #ede4ff;
	padding:20px 15px;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.2rem;
	text-align: center;
	color: #2a261f;
	border-radius: 8px;
	}

.itemCard_priceWrap .goods_price{
	font-family: 'Inter', serif;
	font-weight:800;
	}

/* 商品選択画面の料金部分 */
.itemCardWrap .itemCard_priceWrap{
	position: relative;
	background: #ede4ff;
	padding:20px 12% 20px 15px;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.2rem;
	text-align: center;
	color: #2a261f;
	border-radius: 8px;
	}

.itemCardWrap .itemCard_priceWrap::before{
	content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 12%;
    border-radius: 0 5px 5px 0;
    background-color: #6226ee;
    background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__white.png);
    background-repeat: no-repeat;
    background-size: 25% auto;
    background-position: center center;
	}

.priceYen{
	font-family: sans-serif;
	font-size: 60%;
	}

.priceTax{
	font-family: sans-serif;
	font-size: 40%;
	font-weight: normal;
	}


/* 割引選択 */
.orderNew_discountWrap{
	border: 1px solid #cccccc;
	background: #fff;
	margin: 30px 0 !important;
	}

.orderNew_optionWrap{
	border: 1px solid #cccccc;
	background: #fff;
	margin: 20px 0 !important;
	}

.orderNew_discount__header{
	font-size: 1.2rem;
	background: #6226ee;
	color: #fff;
	margin: 0;
	padding:13px 10px;
	text-align: center;
	} 

.orderNew_optionWrap.min{
	font-size: 0.8rem;
	}

.orderNew_optionWrap__inner{
	padding: 15px;
	}

.orderNew_optionWrap.min .orderNew_optionWrap__inner{
	font-size: 0.8rem;
	padding: 10px;
	}

.orderNew_optionWrap dd{
	padding:8px 15px;
	}

.orderNew_bankNum{
	text-align: center;
	font-family: 'Roboto', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 2.2rem;
	}

.orderNew_bankNum.red a{
	color: #cd0e0e;
	text-decoration: none;
	}

.orderNew_discount__txt{
	margin:15px 10px !important;
	}

.bl_discountB_kinds{
	display: block;
	border-top: 1px solid #cccccc;
	padding:15px 10px;
	width: 100%;
	}

.bl_discountB_kinds.usePoint{
	color: #333;
	}

:where(.bl_discountB_kinds.usePoint)::after{
	content: "";
	}

.bl_discountB_kinds label{display: block;}

.el_order_label{
	 position: relative;
  cursor: pointer;
  padding-left: 35px;
  font-weight: bold;
  font-size: 1.1rem;
	}

.el_order_label::before,.el_order_label::after{
	 content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
	}

.el_order_label::before{
	background-color: #fff;
  border: 2px solid #ddd;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  left: 5px;
	}

.el_order_label::after{
	background-color: #6226ee;
  border-radius: 50%;
  opacity: 0;
  width: 12px;
  height: 12px;
  left: 10px
	}

input.el_order_input:checked + label.el_order_label::after {
	opacity: 1;
	}

input.el_order_input:checked + label.el_order_label::before {
	border: 2px solid #6226ee;
	max-width: 100%;
	}

.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}

.orderNew_discountWrap label{
	margin: 0px;
	display: block;
	}


select.selectTicket{
	 -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;	
  position: relative;
	}

.selectTicket_wrap {
	position: relative;
   	background: #fafafa;
	border: 1px solid #c1c1c1;
	width: 100%;
	margin-top: 15px;
	display: block;
}

select.selectTicket{
	position: relative;
	font-size: 1.1rem;
	color: #333;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	display: block;
	}

.selectTicket_wrap::after{
	content: "";
    position: absolute;
    top:18px;
    right: 10px;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 8px solid #c1c1c1;
    border-bottom: 0;
	}

select.selectTicket:focus{
	outline: 3px solid #6226ee;
	}

.orderNew_articleWrap textarea:focus{
	outline: 3px solid #6226ee;
	}

.hoverPoint_wrap{
	font-size: 1rem;
	text-align: right;
	margin-top: 15px;	
	list-style: none;
	}

.hoverPoint_wrap li{
	line-height: 1.5;
	}

.inputPoint-wrap{
	margin-top: 15px;
	}

.ttl_inputPoint{
	margin: 0 !important;
	margin-bottom: 5px;
	font-size: 1rem;
	}

.inputPoint{
	font-size: 1rem;
	color: #333;
	background: #fafafa;
	border: 1px solid #c1c1c1;
	width: 100%;
	padding:15px !important;
	box-sizing: border-box;
	font-weight: normal;
	}

input.inputPoint:hover{
	border: 1px solid #6226ee;
	}

input.inputPoint:focus{
	outline: 3px solid #6226ee;
	}


.discount_applyBtn_wrap{
	margin: 10px 10px 15px 10px;
	text-align: center;
	}

input.discount_applyBtn{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	font-size: 1.5rem;
	font-weight: bold;
	color: #fff;
	padding:15px;
	background: #cc0000;
	border-radius: 4px;
/* 	line-height: 1em; */
	cursor: pointer;
	width: 100%;
	}

input.discount_applyBtn:hover{
	opacity: 0.7;
	}

.discountB_wrap{
	margin: 0 10px 20px;
	}

/* 決済内容 */
.orderNew_arrow__bottom{
	margin: 0 auto;
	width: 12vw;
	margin-top: 15px;
	}

.orderNew_arrow__bottom img{
	width: 100%;
	height: auto;
	}

.orderNew_review__wrap{
	border: 2px solid #6226ee;
	background: #fff;
	margin: 30px 0;
	}

.orderNew_review__header{
	background: #6226ee;
	color: #fff;
	padding: 15px;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	}

.orderNew_review__inner{
	padding: 15px;
	line-height: 1.5;
	}

.orderNew_review__inner img{
	margin-bottom: 15px;
	min-width: 100%;
	}

.orderNew_review__price{
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:800;
	font-style: normal;
	font-size: 2.2rem !important;
	text-align: right;
	color: #2a261f;
	padding:0 15px 15px;
	}

.orderNew_review__price .totalAmount{
	font-family: 'Inter', serif;
	font-weight:800;
	}

.orderNew_review__serviceNum{
	background: #f4f4f4;
	text-align: right;
	border-top: none;
	padding:10px 15px;
	display: flex;
	align-items: center;
	margin: 0 !important;
	}

.orderNew_review__serviceNum dt{
	font-weight: normal;
	font-size: 1rem;
	white-space: nowrap;
	}

.orderNew_review__serviceNum dd{
	text-align: right;
	margin-left: auto !important;
	font-size: 1.5rem;
	font-family: 'Inter', serif;
	font-optical-sizing: auto;
	font-weight:700;
	font-style: normal;
	}

.orderNew_review__serviceNum .serviceAmount{
	font-family: 'Inter', serif;
	font-weight:700;
	}

.orderNew_review__totalNum{
	font-size: 2.2rem !important;
	background: #fff7c8;
	text-align: right;
	padding:10px 15px;
	display: flex;
	align-items: center;
	margin: 0 !important;
	}

.orderNew_review__totalNum dt{
	font-weight: normal;
	font-size: 1rem;
	white-space: nowrap;
	}

.orderNew_review__totalNum dd{
	padding: 0;
	margin-left: auto !important;
	}

.btn__paymentOpt{
	background: #f7f3ff;
	border: 1px solid #6226ee;
	border-radius: 4px;
	width: 100%;
	padding: 0;
	text-align: left;
	cursor: pointer;
	margin-bottom: 15px;
	}

.btn__paymentOpt.preorder{
	background: #fff;
	cursor: auto;
	border: 1px solid #baad94;
	}

.btn__paymentOpt:hover{
	background: #e6dbff;
	}

.btn__paymentOpt.preorder:hover{
	background: #fff;
	}

.paymentOpt_header{
	background: #6226ee;
	color: #fff;
	font-weight: bold;
	padding: 10px;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	gap:6px;
	background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__white.png);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 10px auto;
	}

.btn__paymentOpt.preorder .paymentOpt_header{
	background: #baad94;
	justify-content: center;
	background-image:none;
	}

.paymentOpt_header__ico img{
	height: 1.2rem;
	width: auto;
	display: flex;
	align-items: center;
	}

.paymentOpt_txt{
	font-size: 1rem;
	padding: 10px;
	margin: 0;
	color: #333;
	font-weight: normal;
	}

/* 決済完了ページ */
.bl_order_table{
	margin: 15px 0;
	line-height: 1.5;
	width: 100%;
	}

.bl_order_table, .bl_order_table th, .bl_order_table td{
	border: 1px solid #1aa458;
	}

.bl_order_table th, .bl_order_table td{
	padding: 8px;
	vertical-align: middle;
	font-size: 1rem;
	border-top: none;
	}

.bl_order_table th{
	background: #e0f7f0;
	font-weight: normal;
	border-right: none;
	}

.order_table__num{
	font-family: "Inter", serif;
	font-optical-sizing: auto;
	letter-spacing: 1px;
	font-weight: 800;
	font-style: normal;
	font-size: 150%;
	}

/* 振り込み情報送信ボタン */
.orderNew_bankSend_btn{
	text-align: left;
	border: none;
	background: #fff;
	border: 2px solid #9b9b9b;
	border-radius: 8px;
	padding:0 28px 0 0;
	color: #5b5b5b;
	font-weight: bold;
	display: flex;
	align-items: stretch;
	gap:10px;
	width: 100%;
	background-image: url(https://www-f.masts.jp/img/ordernew/common/arrow_right__gray.png?01);
	background-repeat: no-repeat;
	background-size: 8px auto;
	background-position: right 10px center;
	cursor: pointer;
	margin: 0 auto;
	}

.orderNew_bankSend_btn:hover{
	opacity: 0.7;
	}

.orderNew_bankSend_wrap:hover{
	text-decoration: none;
	color: #5b5b5b;
	}

.orderNew_bankSend_btn__ico{	
	display: flex;
	align-items: center;
	background: #9b9b9b;
	padding:0 8px 0 10px;
	border-radius: 4px 0 0 4px;
	border: 2px solid #9b9b9b;
	}

.orderNew_bankSend_btn__txt{
	padding: 10px 0 10px 10px;
	font-size: 1rem;
	line-height: 1.5;
	}

.orderNew_bankSend_btn__ico img{
	width: 8vw;
	height: auto;
	}

.orderNew_credit-logo{
	display: flex;
	gap:5px;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	}

.orderNew_credit-logo span{
	width: 15vw; height: auto;
	}

.orderNew_credit-logo span img{
	max-width: 100%; height: auto;
	}

.btn_orderNew__toOutside{
	border-radius: 8px;
	background: #6226ee;
	color: #fff;
	font-weight: bold;
	padding: 15px calc(1.5rem + 23px) 15px 15px;
	font-size: 1.5rem;
	text-align: center;
	width: 100%;
	border: none;
	cursor: pointer;
	display: block;
	box-sizing: border-box;
	 white-space: normal;

	background-image: url(/img/ordernew/common/arrow_right__white.png);
	background-repeat: no-repeat;
	background-size: auto 1.5rem;
	background-position: right 15px center;
	}

.btn_orderNew__toOutside:hover{
	opacity: 0.7;
	}

.order_inputTel-wrap{
	margin: 20px 0;
	}

.paymentOpt_icoWrap{
	padding:0 10px 10px 10px; list-style: none; display: flex; gap:6px;
	}

.paymentOpt_ico{
	font-weight: bold;
	display: inline-block;
	padding: 6px 10px;
	line-height: 1;
	border-radius: 100px;
	color: #fff;
	font-size: 12px;
	}

.paymentOpt_ico.anytime{
	background: #5f7ec7;
	}

.paymentOpt_ico.free{
	background: #63af9c;
	}

.paymentOpt_ico.limit{
	background: #dc5b5b;
	}


}