/*
* /onlinestore/osechi/osechi.css
*/
.btn--next {
	position: relative;
	font-weight: 400;
	color: var(--white);
	background-color: DARKGOLDENROD;
	font-size: 1.6rem;
	width: auto;
	padding: 1.2rem 5.0rem 1.2rem 3.0rem;
	box-shadow: 3px 3px 0 0 var(--font);
	margin: 1.0rem 2.0rem;
}

.btn--next:before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 2.0rem;
	margin-top: -4px;
}

.btn--next:hover {
	opacity: 0.5;
}

@media screen and (max-width: 630px) {
	.btn--next {
		font-size: 1.5rem;
		width: 95%;
		margin: 1.0rem 0rem;
		padding: 1.0rem 3.0rem;
	}
}

.btn--go_cart {
	position: relative;
	font-weight: 400;
	color: var(--white);
	background-color: var(--font);
	font-size: 1.6rem;
	width: auto;
	padding: 1.2rem 5.0rem 1.2rem 3.0rem;
	box-shadow: 3px 3px 0 0 DARKGOLDENROD;
	margin: 1.0rem 2.0rem;
}

.btn--go_cart:before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 2.0rem;
	margin-top: -4px;
}

.btn--go_cart:hover {
	opacity: 0.5;
}

@media screen and (max-width: 630px) {
	.btn--go_cart {
		font-size: 1.5rem;
		width: 95%;
		margin: 1.0rem 0rem;
		padding: 1.0rem 3.0rem;
	}
}

.btn--return {
	position: relative;
	width: auto;
	font-size: 1.4rem;
	padding: 0.8rem 2.0rem 0.8rem 4.0rem;
	font-weight: 400;
	color: var(--white);
	background-color: var(--gray3);
	box-shadow: 3px 3px 0 0 var(--font);
	margin: 1.0rem 2.0rem;
}

.btn--return:before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	transform: rotate(-140deg);
	position: absolute;
	top: 50%;
	left: 2.0rem;
	margin-top: -5px;
}

.btn--returnMini {
	font-size: 1.2rem;
	padding: 0.3rem 1.0rem;
	font-weight: 400;
	color: var(--white);
	background-color: var(--gray3);
}

.btn--return:hover, .btn--returnMini:hover {
	opacity: 0.5;
}

@media screen and (max-width: 630px) {
	.btn--return {
		font-size: 1.3rem;
		width: 95%;
		margin: 1.0rem 0rem;
	}
	.btn--returnMini {
		font-size: 1.1rem;
	}
}

.btn--transparent-s {
	color: var(--font);
	font-weight: 400;
	text-decoration: underline;
	background-color: transparent;
}

.btn--transparent-s:hover {
	opacity: 0.5;
}

.trailer {
	color: var(--white);
	background-color: var(--green1);
}

.limited {
	color: var(--white);
	background-color: var(--red1);
}

.sold_out {
	color: var(--white);
	background-color: var(--red1);
}

.shipping_free {
	color: var(--white);
	background-color: var(--green1);
}

.cold {
	color: var(--white);
	background-color: var(--blue1);
}

.freeze {
	color: var(--white);
	background-color: var(--purple2);
}

/* ------------------- { header_menu.php } ----------------------- */

/*
 * ヘッダー・メニュー(変更)
 */
.header {
	background-color: DARKGOLDENROD;
}

.header .headline .staff_name {
	color: var(--white);
	white-space: nowrap;
	font-size: 1.3rem;
}

.header .headline .onlinestore_title {
	color: var(--white);
	font-size: 1.8rem;
	margin-left: 2.0rem;
	white-space: nowrap;
}

@media screen and (max-width: 630px) {
	.header .headline .staff_name {
		font-size: 1.2rem;;
	}
	.header .headline .onlinestore_title {
		font-size: 1.6rem;
	}
}

.header_menu .menu .menu_single button {
	font-size: 1.4rem;
}

/*
 * ハンバーガー・メニュー(変更)
 */
.header .headline .drawer-open {
	background: DARKGOLDENROD;
}

.header .headline .drawer-open:hover {
	opacity: 0.5;
}

.header .headline .drawer-list {
	background-color: DARKGOLDENROD;
}

.header .headline .drawer-item:hover {
	background-color: var(--font);
}

.header .headline .circle_number {
	font-size: 1.1rem;
	font-weight: 400;
	margin-left: 0.5rem;
	color: var(--white);
	border: 1px solid var(--white);
	height: 1.8rem;
	width: 1.8rem;
	border-radius: 50%;
	line-height: 1.8rem;
	text-align: center;
	display: inline-block;
}

.drawer-bar {
	border: 1px inset var(--white);
	width: 100%;
}

/*
 * フッター・メニュー(変更)
 */
#Footer, #Copyright {
	background-color: DARKGOLDENROD;
}

/*
* /terms.php
*/

/* おせち予約 同意 */
.osechi_terms {
	max-width: 1100px;
	width: 99%;
	margin: 0 auto;
}

.flow_order .title {
	margin-top: 2.0rem;
	font-size: 2.0rem;
	font-weight: 600;
	color: DARKGOLDENROD;
}

@media screen and (max-width: 630px) {
	.osechi_terms {
		width: 97%;
		font-size: 1.2rem;
	}
	.flow_order .title {
		font-size: 1.6rem;
	}
}

.flow_order .c_frame {
	max-width: 800px;
	margin: 2.0rem 0;
	padding: 1.0rem 2.0rem;
	border: solid 2px var(--font);
	display: inline-block;
	text-align: left;
	font-size: 1.4rem;
	line-height: 2.0;
}

.flow_order input[type="checkbox"] {
	margin-right: 0.5rem;
}

.flow_order input[type="checkbox"]+label {
	font-size: 1.6rem;
}

.flow_order .chk--term {
	display: none;
	opacity: 0;
}

.flow_order #chk--term:checked ~ .chk--term {
	display: block;
	opacity: 1;
}

@media screen and (max-width: 630px) {
	.flow_order .c_frame {
		margin: 1.0rem 0;
		padding: .5rem 1.0rem;
		font-size: 1.2rem;
	}
	.flow_order input[type="checkbox"]+label {
		font-size: 1.3rem;
	}
}

.flow_order .c_frame .btn--next {
	font-size: 1.4rem;
}

@media screen and (max-width: 630px) {
	.flow_order .c_frame .btn--next {
		font-size: 1.3rem;
	}
}

/* a, button */
/*
.btn--narrow_down {
	color: var(--white);
	font-weight: 400;
	font-size: 1.5rem;
 	text-decoration: none;
	background-color: var(--font);
	max-width: 300px;
	width: 100%;
	padding: 0.5rem 0;

}
.btn--narrow_down:hover {
	background-color: var(--gray5);
}
@media screen and (max-width: 630px) {
	.btn--narrow_down {
		font-size: 1.3rem;
	}
}



.btn--change {
	font-size: 1.2rem;
	font-weight: 400;
	color: var(--white);
	background-color: var(--gray3);
	padding: 3px 12px;
}
.btn--change:hover {
	color: var(--white);
	background-color: var(--font);
}



input[type="checkbox"] + label {
	cursor: pointer;
}
*/

/* おせち予約TOP */
.menu_title {
	margin-top: 2.0rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
	font-size: 2.0rem;
	color: DARKGOLDENROD;
}

.menu_title li {
	padding: .4rem 1.2rem;
}

.menu_title li button {
	font-weight: 400;
	font-size: 1.8rem;
	color: DARKGOLDENROD;
	background-color: transparent;
}

.menu_title li button:hover {
	font-weight: 700;
}

.menu_title .selected {
	color: var(--white);
	background-color: DARKGOLDENROD;
}

.menu_title_bar {
	border-top: 2.6px solid DARKGOLDENROD;
	margin-bottom: 1.0rem;
}

@media screen and (max-width: 630px) {
	.menu_title {
		margin-top: 1.0rem;
		font-size: 1.5rem;
	}
	.menu_title li {
		padding: .3rem .5rem;
	}
	.menu_title li button {
		font-size: 1.3rem;
	}
	.menu_title_bar {
		border-top: 2.0px solid DARKGOLDENROD;
	}
}

.menu_caution {
	margin: 2.0rem 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.menu_caution .chk--caution {
	display: none;
	opacity: 0;
}

.menu_caution .caution_contents {
	display: none;
	opacity: 0;
	width: fit-content;
	max-width: 97%;
	margin: 0 auto;
	color: var(--font);
	border: 2px SOLID DARKGOLDENROD;
	background-color: LINEN;
	text-align: left;
	padding: 1.0rem 1.5rem 0 1.5rem;
}

.menu_caution .chk--caution:checked ~ .caution_contents {
	display: block;
	opacity: 1;
}

.menu_caution .chk--caution:checked ~ .arrow_u-o {
	transform: rotate(-135deg);
	margin-bottom: -1px;
}

@media screen and (max-width: 630px) {
	.menu_caution {
		font-size: 1.2rem;
	}
	.menu_caution .caution_contents {
		padding: .5rem 1.0rem 0 1.0rem;
	}
}

.menu_caution .caution_contents .view_off {
	text-align: right;
}

.menu_caution .caution_contents .btn--transparent-s {
	margin-top: 1.0rem;
	font-size: 1.3rem;
}

@media screen and (max-width: 630px) {
	.menu_caution .caution_contents .btn--transparent-s {
		font-size: 1.2rem;
	}
}

.goods_top {
	max-width: 1200px;
	width: 99%;
	margin: 0 auto;
}
/*
.goods_top .inquiry {
	display: inline-block;
	font-size: 1.6rem;
	background: var(--green);
	color: var(--white);
	padding: 1.0rem 4.0rem;
}
.goods_top .apology {
	display: inline-block;
	font-size: 1.6rem;
	background: var(--red9);
	border: 2px solid var(--red1);
	color: var(--red1);
	padding: 1.0rem 2.0rem;
}
@media screen and (max-width: 630px) {
	.goods_top .inquiry {
		font-size: 1.4rem;
		padding: 5px 30px;
	}
	.goods_top .apology {
		font-size: 1.4rem;
		padding: 5px 10px;
	}
}
*/
.goods_top .title {
	margin: 2.0rem 0;
	/*	color: DARKGOLDENROD;*/
	color: var(--font);
	font-weight: 600;
}

.goods_top .title ul {
	line-height: 1.8;
}

.goods_top .title li:first-child {
	font-size: 2.4rem;
}

.goods_top .title li:nth-child(n+2) {
	font-size: 2.0rem;
}

@media screen and (max-width: 630px) {
	.goods_top .title li:first-child {
		font-size: 2.0rem;
	}
	.goods_top .title li:nth-child(n+2) {
		font-size: 1.6rem;
	}
}

.goods_top .top_image img {
	max-width: 500px;
	width: 100%;
	/*    vertical-align: bottom;*/
}

@media screen and (max-width: 630px) {
	.goods_top .top_image img {
		max-width: 380px;
	}
}

.goods_top .menu {
	display: flex;
	flex-wrap: wrap;
	align-items: top;
	justify-content: center;
	margin-top: 3.0rem;
}

.goods_top .sub_menu {
	margin: 1.0rem 2.0rem;
	width: 100%;
	max-width: 300px;
}

.goods_top .sub_menu button img {
	height: 300px;
}

.goods_top .sub_menu button img:hover {
	opacity: 0.5;
}

.goods_top .sub_menu button {
	background-color: transparent;
}

.goods_top .sub_menu .sub_menu_title {
	display: inline-block;
	width: 100%;
	margin-bottom: 1.0rem;
	padding: 1.0rem 0;
	font-weight: 400;
	color: var(--white);
	background-color: DARKGOLDENROD;
	font-size: 1.6rem;
}

.goods_top .sub_menu .sub_menu_title:hover {
	background-color: var(--font);
}

@media screen and (max-width: 630px) {
	.goods_top .sub_menu button img {
		height: 250px;
	}
}

.footer {
	margin-top: 2.0rem;
}

.footer div:not(:first-child) {
	margin-top: 2.0rem;
}

.goods_top .view_frame {
	font-size: 1.3rem;
}

.goods_top .view_frame label, .goods_top .view_frame select {
	margin: 0.5rem 1.0rem;
}

.goods_top .view_frame select {
	padding: 0.2rem;
}

@media screen and (max-width: 630px) {
	.goods_top .view_frame {
		font-size: 1.2rem;
	}
	.goods_top .view_frame label, .goods_top .view_frame select {
		margin: 0.3rem .5rem;
	}
}

.goods_list {
	max-width: 1280px;
	width: 98%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: start;
	vertical-align: top;
	font-size: 1.4rem;
}

@media screen and (max-width: 630px) {
	.goods_list {
		font-size: 1.3rem;
	}
}

.goods_list .goods_frame {
	width: 300px;
	height: auto;
	margin: 1.0rem;
	padding: 1.0rem;
	text-align: left;
	line-height: 1.5;
	box-shadow: 4px 4px 4px var(--gray5);
}

@media screen and (max-width: 630px) {
	.goods_list .goods_frame {
		width: 92vw;
	}
}

.goods_list button {
	width: 100%;
	font-weight: 400;
	color: var(--font);
	background-color: transparent;
	text-align: left;
}

.goods_list button:hover {
	opacity: 0.5;
}

.goods_frame img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 630px) {
	.goods_frame img {
		display: inline-block;
		width: 30%;
		height: auto;
		object-fit: contain;
	}
}

.goods_list .brand_name {
	font-size: 1.4rem;
}

.goods_list .goods_name {
	margin-top: 5px;
	font-size: 1.5rem;
}

.goods_list .size {
	font-size: 1.3rem;
}

.goods_list .price {
	font-size: 1.6rem;
	text-align: right;
	/* 	font-weight: bold;*/
}

.goods_list .expired_on {
	font-size: 1.3rem;
	text-align: right;
	color: var(--green1);
	/* 	font-weight: bold;*/
}

.goods_list .cold, .goods_list .freeze, .goods_list .trailer, .goods_list .limited, .goods_list .sold_out, .goods_list .shipping_free {
	font-size: 1.3rem;
	padding: .2rem 0.4rem;
	margin-left: 0.5rem;
	white-space: nowrap;
}

@media screen and (max-width: 630px) {
	.goods_frame .right {
		display: inline-block;
		width: 66%;
		margin: 5px 0 0 10px;
		vertical-align: top;
	}
	.goods_list .brand_name {
		font-size: 1.3rem;
	}
	.goods_list .goods_name {
		font-size: 1.4rem;
	}
	.goods_list .size {
		font-size: 1.2rem;
	}
	.goods_list .price {
		font-size: 1.4rem;
	}
	.goods_list .expired_on {
		font-size: 1.2rem;
	}
	.goods_list .cold, .goods_list .freeze, .goods_list .trailer, .goods_list .limited, .goods_list .sold_out, .goods_list .shipping_free {
		font-size: 1.2rem;
		padding: 0.1rem 0.4rem;
	}
}

/* 
* osechi_detail
*/
.osechi_detail {
	max-width: 1100px;
	width: 99%;
	margin: 3.0rem auto;
	font-size: 1.4rem;
	/*border: 1px solid var(--gray1);*/
}

@media screen and (max-width: 630px) {
	.osechi_detail {
		width: 96%;
		margin: 2.0rem auto;
		font-size: 1.4rem;
	}
}

.osechi_detail .detail_frame {
	margin-top: 1.0rem;
	padding: 1.0rem;
	display: flex;
	/*	flex-wrap: wrap;
/*	justify-content: center;*/
	vertical-align: top;
	line-height: 2.0;
}

@media screen and (max-width: 630px) {
	.osechi_detail .detail_frame {
		line-height: 1.8;
		margin-top: 0;
		display: block;
	}
}

.detail_frame .image {
	max-width: 500px;
}

.detail_frame .image img {
	width: 100%;
}

@media screen and (max-width: 630px) {
	.detail_frame .image {
		max-width: 400px;
		margin: 0 auto;
	}
}

.detail_frame .right {
	width: 100%;
	margin: 0 1.0rem 0 2.0rem;
	text-align: left;
	font-size: 1.4rem;
}

@media screen and (max-width: 630px) {
	.detail_frame .right {
		margin: 1.0rem 0;
		font-size: 1.3rem;
	}
}

.detail_frame .right .condition {
	padding: 0.2rem 0.5rem;
}

@media screen and (max-width: 630px) {
	.detail_frame .right .condition {
		font-size: 1.3rem;
	}
}

.detail_frame .cold, .detail_frame .freeze, .detail_frame .trailer, .detail_frame .limited, .detail_frame .sold_out, .detail_frame .shipping_free {
	font-size: 1.4rem;
	padding: .2rem 0.4rem;
	margin-left: 0.5rem;
	white-space: nowrap;
}

@media screen and (max-width: 630px) {
	.detail_frame .cold, .detail_frame .freeze, .detail_frame .trailer, .detail_frame .limited, .detail_frame .sold_out, .detail_frame .shipping_free {
		font-size: 1.3rem;
		padding: 0.1rem 0.4rem;
	}
}

.detail_frame .brand_name {
	font-size: 1.6rem;
}

.detail_frame .goods_name {
	font-size: 2.0rem;
}

.detail_frame .supplier_name {
	font-size: 1.5rem;
	text-align: right;
}

.detail_frame .price {
	font-size: 2.0rem;
	text-align: right;
}

@media screen and (max-width: 630px) {
	.detail_frame .brand_name {
		font-size: 1.4rem;
	}
	.detail_frame .goods_name {
		font-size: 1.8rem;
	}
	.detail_frame .supplier_name {
		font-size: 1.3rem;
	}
	.detail_frame .price {
		font-size: 1.8rem;
	}
}

/*
.detail_frame .size {
	font-size: 1.4rem;
}
.detail_frame .description {
	font-size: 1.4rem;
}
.detail_frame .note {
	font-size: 1.4rem;
}
*/
.detail_frame .expired_on {
	text-align: right;
	color: var(--green1);
	/* 	font-weight: bold;*/
}

.detail_frame .deliver_day {
	text-align: right;
	color: var(--red1);
	/* 	font-weight: bold;*/
}

.osechi_detail .cartin {
	margin-top: 3.0rem;
}

/*
 * 承り票(印刷)
 */
.receipt {
	display: block;
	width: 210mm;
	/*	height: 297mm;*/
	margin: 0 auto;
	padding: 0;
	line-height: 1.5;
	font-size: 1.3rem;
	color: var(--font);
}

.receipt .date {
	text-align: right;
}

.receipt .main_title {
	display: flex;
	justify-content: space-between;
	font-size: 2.4rem;
}

.receipt .main_title .title {
	color: var(--white);
	background-color: var(--font);
	padding: 1mm 5mm;
}

.receipt .table-flex {
	display: flex;
	justify-content: space-between;
	margin: 3mm 0;
}

.receipt .table-flex .table-accept {
	width: 30%;
}

.receipt .table-flex .table-accept table {
	width: 100%;
	font-size: 1.3rem;
	text-align: left;
}

.receipt .table-flex .table-accept th {
	font-weight: 400;
}

.receipt .table-flex .table-member {
	width: 70%;
}

.receipt .table-flex .table-member table {
	border: 1px solid var(--font);
	border-collapse: collapse;
	width: 100%;
	font-size: 1.3rem;
	text-align: left;
}

.receipt .table-flex  .table-member th {
	font-weight: 400;
	padding: 1mm 3mm;
	border-right: 1px solid var(--font);
}

.receipt .table-member th>.name {
	font-size: 2.4rem;
}

.receipt .table-member td {
	vertical-align: top;
	padding: 1mm 3mm;
}

.receipt .content {
	text-align: left;
	margin: 1mm 0;
}

.receipt .table-receipt table {
	border-collapse: collapse;
	width: 100%;
	font-size: 1.3rem;
	border: 1px solid var(--font);
	text-align: left;
}

.receipt .table-receipt td {
	vertical-align: top;
	padding: 1mm 3mm;
}

.receipt .table-receipt td:not(:last-of-type) {
	border-right: 1px solid var(--font);
}

.receipt .table-receipt tr:not(:last-of-type) {
	border-bottom: 1px solid var(--font);
}

.receipt .table-receipt .goods_name {
	font-size: 1.5rem;
}

.receipt .table-receipt .shipping {
	text-align: right;
	margin-bottom: 0;
	/*	margin-top: 10px;*/
}

.receipt .table-receipt .barcode {
	text-align: center;
	/*	margin-top: 10px;*/
}

.receipt .table-receipt .barcode div {
	/*	text-align: center;*/
	margin: 1mm auto;
	/*	margin-top: 10px;*/
}

.receipt .table-payment table, .receipt .table-chk-payment table {
	border-collapse: collapse;
	width: 100%;
	font-size: 1.3rem;
	border: 1px solid var(--font);
	text-align: left;
}

.receipt .table-payment td, .receipt .table-chk-payment td {
	padding: 2mm 3mm;
}

.receipt .table-payment td:not(:last-of-type) {
	border-right: 1px solid var(--font);
}

.receipt .table-payment td input {
	margin-right: 1mm;
}

.receipt .table-payment td label {
	margin-right: 5mm;
}

.receipt .caution {
	max-width: 400px;
	width: 100%;
	margin: 0 auto;
	text-align: left;
	border: 1px solid DARKGOLDENROD;
	background-color: papayawhip;
	padding: 5mm;
}

.receipt .caution .important {
	color: var(--font);;
	font-size: 1.8rem;
}

.receipt .caution_error {
	max-width: 500px;
	width: 99%;
	margin: 0 auto;
	text-align: center;
	border: 1px solid RED;
	background-color: lavenderblush;
	padding: 5mm;
}

.receipt .caution_error .important {
	color: RED;
	font-size: 1.8rem;
}

.receipt .chk-payment_method {
	margin-left: 10.0mm;
}

.receipt .table-chk-payment, .receipt .table-chk-payment .payment_store, .receipt .table-chk-payment .payment_reception_id, .receipt .table-chk-payment .payment_method8 {
	display: none;
	opacity: 0;
}

.receipt .payment_method:checked+label {
	font-size: 1.5rem;
}

.receipt #chk-payment_method:checked ~ .table-payment {
	display: none;
	opacity: 0;
}

.receipt #chk-payment_method:checked ~ .table-chk-payment {
	display: block;
	opacity: 1;
}

.receipt #payment_method0:checked ~ .payment_store, .receipt #payment_method0:checked 
	 ~ .payment_reception_id, .receipt #payment_method8:checked ~ .payment_method8 {
	display: block;
	opacity: 1;
}

.receipt .table-chk-payment .payment_store, .receipt .table-chk-payment .payment_reception_id, .receipt .table-chk-payment .payment_method8 {
	margin: 5px 0 0 15px;
}

.receipt .table-chk-payment select {
	padding: 1.5mm 0;
}

.receipt .table-payment .transaction {
	margin-top: 5mm;
}

.receipt .table-payment .transaction input, .receipt .table-payment .transaction select {
	padding: 1mm;
}

.receipt .table-payment .transaction .transaction_store, .receipt .table-payment .transaction .transaction_pos {
	width: 60px;
}

.receipt .table-payment .transaction .transaction_number {
	width: 90px;
}

.receipt .table-payment .transaction .transaction_cd {
	width: 30px;
}

.receipt .table-payment .transaction button[type='submit'] {
	margin-left: 10px;
}