﻿@charset "utf-8";
/*--------------------------------------------------*/
/*  ■z-index のルール                              */
/*       1～：上に戻るボタン・スライダー            */
/*      10～：左メニュー関連                        */
/*     100～：コンテンツのオーバーレイ              */
/*     101～：ドロップダウンメニュー                */
/*     201～：ポップアップ                          */
/*--------------------------------------------------*/


/*--------------------------------------------------*/
/*  リセット                                        */
/*--------------------------------------------------*/
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
header,
footer,
section,
div,
p,
ul,
ol,
li,
dl,
dt,
dd,
article,
table,
th,
td,
img,
form,
input,
textarea,
select,
button {
	margin: 0;
	padding: 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: normal;
	font-style: normal;
	line-height: 1.6;
	list-style: none;
	word-break: break-all;
	border: none;
	border-collapse: collapse;
}

/*
*:not(input):not(textarea):not(select),
input[type=image],
input[type=file],
input[type=submit],
input[type=button],
input[type=reset] {
	-moz-user-select: none;
	-webkit-user-select: none;
}
*/
a:link {
	color: #1010ca;
}

a:visited {
	color: #1010ca;
}

a:hover {
	color: #f00000;
}

a:active {
	color: #f00000;
}

a:hover img {
	opacity: 0.8;
}

/*--------------------------------------------------*/
/*  共通スタイル                                    */
/*--------------------------------------------------*/
.clear:after {
	clear: both;
	display: block;
	height: 0;
	content: ".";
	visibility: hidden;
}

.focus {
	background: #ffffd0 !important;
}
.marker{
	background: linear-gradient(transparent 60%, #eeeeee 60%);
}
.marker.yellow{
	background: linear-gradient(transparent 60%, #ffeeb6 60%);
}
.marker.blue{
	background: linear-gradient(transparent 60%, #99e2ff 60%);
}
.marker.red{
	background: linear-gradient(transparent 60%, #ffa7ae 60%);
}

.colorRed {
	color: #f00 !important;
}

.bold {
	font-weight: bold !important;
}

.hide {
	display: none !important;
}

/* add by hashimoto 2017/09/13 */
.showy2 {
	padding: 0 3px;
	background: #fff352;
}

ul.normal {
	margin-left: 20px;
	padding: 10px 20px 10px 25px;
}

ul.normal li {
	padding: 2px 0;
	list-style: disc;
}

h2[id^="no"] {
	margin-top: 30px !important;
	color: #da0000;
}

/* end */

.clr_000 {
	color: #000 !important;
}

.clr_fff {
	color: #fff !important;
}

.clr_f00 {
	color: #f00 !important;
}

.clr_00f {
	color: #00f !important;
}

.clr_0f0 {
	color: #0f0 !important;
}

.fw_no {
	font-weight: normal !important;
}

.fw_bo {
	font-weight: bold !important;
}

.fs_10 {
	font-size: 10px !important;
}

.fs_11 {
	font-size: 11px !important;
}

.fs_12 {
	font-size: 12px !important;
}

.fs_13 {
	font-size: 13px !important;
}

.fs_14 {
	font-size: 14px !important;
}

.fs_15 {
	font-size: 15px !important;
}

.fs_16 {
	font-size: 16px !important;
}

.fs_17 {
	font-size: 17px !important;
}

.fs_18 {
	font-size: 18px !important;
}

.fs_19 {
	font-size: 19px !important;
}

.fs_20 {
	font-size: 20px !important;
}

.fs_21 {
	font-size: 21px !important;
}

.fs_22 {
	font-size: 22px !important;
}

.fs_23 {
	font-size: 23px !important;
}

.fs_24 {
	font-size: 24px !important;
}

.fs_25 {
	font-size: 25px !important;
}

.fs_26 {
	font-size: 26px !important;
}

.fs_27 {
	font-size: 27px !important;
}

.fs_28 {
	font-size: 28px !important;
}

.fs_29 {
	font-size: 29px !important;
}

.fs_30 {
	font-size: 30px !important;
}

.fs_31 {
	font-size: 31px !important;
}

.fs_32 {
	font-size: 32px !important;
}

.fs_33 {
	font-size: 33px !important;
}

.fs_34 {
	font-size: 34px !important;
}

.fs_35 {
	font-size: 35px !important;
}

.fs_36 {
	font-size: 36px !important;
}

.ta_c {
	text-align: center !important;
}

.ta_l {
	text-align: left !important;
}

.ta_r {
	text-align: right !important;
}


.mt_0 {
	margin-top: 0px !important;
}

.mt_5 {
	margin-top: 5px !important;
}

.mt_10 {
	margin-top: 10px !important;
}

.mt_15 {
	margin-top: 15px !important;
}

.mt_20 {
	margin-top: 20px !important;
}

.mt_25 {
	margin-top: 25px !important;
}

.mt_30 {
	margin-top: 30px !important;
}

.mt_35 {
	margin-top: 35px !important;
}

.mt_40 {
	margin-top: 40px !important;
}

.mt_50 {
	margin-top: 50px !important;
}

.mt_100 {
	margin-top: 100px !important;
}

.mb_0 {
	margin-bottom: 0px !important;
}

.mb_5 {
	margin-bottom: 5px !important;
}

.mb_10 {
	margin-bottom: 10px !important;
}

.mb_15 {
	margin-bottom: 15px !important;
}

.mb_20 {
	margin-bottom: 20px !important;
}

.mb_25 {
	margin-bottom: 25px !important;
}

.mb_30 {
	margin-bottom: 30px !important;
}

.mb_35 {
	margin-bottom: 35px !important;
}

.mb_40 {
	margin-bottom: 40px !important;
}

.mb_50 {
	margin-bottom: 50px !important;
}

.mb_100 {
	margin-bottom: 100px !important;
}

.ml_0 {
	margin-left: 0px !important;
}

.ml_5 {
	margin-left: 5px !important;
}

.ml_10 {
	margin-left: 10px !important;
}

.ml_15 {
	margin-left: 15px !important;
}

.ml_20 {
	margin-left: 20px !important;
}

.ml_30 {
	margin-left: 30px !important;
}

.ml_40 {
	margin-left: 40px !important;
}

.ml_50 {
	margin-left: 50px !important;
}

.ml_100 {
	margin-left: 100px !important;
}

.mr_0 {
	margin-right: 0px !important;
}

.mr_5 {
	margin-right: 5px !important;
}

.mr_10 {
	margin-right: 10px !important;
}

.mr_15 {
	margin-right: 15px !important;
}

.mr_20 {
	margin-right: 20px !important;
}

.mr_30 {
	margin-right: 30px !important;
}

.mr_40 {
	margin-right: 40px !important;
}

.mr_50 {
	margin-right: 50px !important;
}

.mr_100 {
	margin-right: 100px !important;
}

.pt_0 {
	padding-top: 0px !important;
}

.pt_5 {
	padding-top: 5px !important;
}

.pt_10 {
	padding-top: 10px !important;
}

.pt_15 {
	padding-top: 15px !important;
}

.pt_20 {
	padding-top: 20px !important;
}

.pt_30 {
	padding-top: 30px !important;
}

.pb_0 {
	padding-bottom: 0px !important;
}

.pb_5 {
	padding-bottom: 5px !important;
}

.pb_10 {
	padding-bottom: 10px !important;
}

.pb_15 {
	padding-bottom: 15px !important;
}

.pb_20 {
	padding-bottom: 20px !important;
}

.pb_30 {
	padding-bottom: 30px !important;
}

.pl_0 {
	padding-left: 0px !important;
}

.pl_5 {
	padding-left: 5px !important;
}

.pl_10 {
	padding-left: 10px !important;
}

.pl_15 {
	padding-left: 15px !important;
}

.pl_20 {
	padding-left: 20px !important;
}

.pl_30 {
	padding-left: 30px !important;
}

.pr_0 {
	padding-right: 0px !important;
}

.pr_5 {
	padding-right: 5px !important;
}

.pr_10 {
	padding-right: 10px !important;
}

.pr_15 {
	padding-right: 15px !important;
}

.pr_20 {
	padding-right: 20px !important;
}

.pr_30 {
	padding-right: 30px !important;
}

.ime_act {
	ime-mode: active !important;
}

.ime_dis {
	ime-mode: disabled !important;
}

.po_re {
	position: relative !important;
}

.dsp_non {
	display: none !important;
}

.dsp_blc {
	display: block !important;
}

.dsp_tbl {
	display: table !important;
	width: 100%;
}

.dsp_cel {
	display: table-cell !important;
	vertical-align: middle;
}

.wrp_100 {
	width: 1000px;
	margin: 0 auto;
}

.wrp_120 {
	width: 1200px;
	margin: 0 auto;
}

.wrp_130 {
	width: 1300px;
	margin: 0 auto;
}

.tbl_2c {
	display: table;
	width: 1300px;
	margin: 0 auto;
}

.tbl_2c_l {
	display: table-cell;
	width: 200px;
	vertical-align: top;
}

.tbl_2c_r {
	display: table-cell;
	padding: 0 0 0 20px;
	vertical-align: top;
}

.tbl_3c {
    display: table;
    min-width: 1300px;
    margin: 0 auto;
}

.tbl_3c_l {
    display: table-cell;
    width: 240px;
    vertical-align: top;
}

.tbl_3c_c {
	width: 820px;
	display: table-cell;
	padding: 0 20px;
	vertical-align: top;
}
@media screen and (max-width: 1400px) {
    .tbl_3c_c {
        width: 780px;
    }
}

.tbl_3c_r {
	display: table-cell;
	width: 240px;
	vertical-align: top;
}

.ovr_hid {
	overflow: hidden !important;
}

.no_border {
	border: none !important;
}

.link {
	color: #1010ca;
	text-decoration: underline;
	cursor: pointer;
}

.link:hover {
	color: #f00000;
}

.ac_contents {
	display: none;
}

.ls_di li {
	list-style: disc;
}

/*--------------------------------------------------*/
/*  noscript                                        */
/*--------------------------------------------------*/
.warning {
	width: 800px;
	margin: 30px auto;
	padding: 20px 40px;
	font-size: 18px;
	line-height: 30px;
	background: #fffaff;
	border: 6px double #f00000;
}

.warning p {
	color: #f00000;
	margin: 0 0 10px -20px;
	font-size: 24px;
	font-weight: bold;
	line-height: 34px;
}

/*--------------------------------------------------*/
/*  注意喚起（赤背景）								*/
/*--------------------------------------------------*/
.infoma_box{
    background: #e23333;
    margin: 0px 0px 20px;
    text-align: center;
}
.infoma_box p{
	padding: 0;
    margin: 0px;
}
.infoma_box p a{
	padding: 0;
	color: #fff;
	font-weight: bold;
	font-size: 22px;
    margin: 0px;
	text-decoration: underline;
	padding: 12px 30px;
    display: block;
}
.infoma_box p a:hover{
	background: #ff1515;
}
/*--------------------------------------------------*/
/*  注意喚起                                        */
/*--------------------------------------------------*/
.emergency_box {
	width: 100% !important;
    max-width: 100% !important;
    padding: 7px !important;
    box-sizing: border-box;
    text-align: center;
    background: #ffe9e9;
    margin-bottom: 25px;
	border: none !important;
}
.emergency_box p.img_warn {
    position: relative;
    margin: 0 !important;
	padding: 0 !important;
    line-height: 25px;
}
.emergency_box p.title {
    margin: 5px 10px;
    color: #d00000;
    font-size: 17px;
    font-weight: 700;
}
.emergency_box p.img_warn::before {
    display: inline-block;
    vertical-align: middle;
    width: 30px;
    height: 30px;
    margin-right: 15px;
    content: "";
    background-image: url(/img/icon/warn.png);
    background-repeat: no-repeat;
    background-size: contain;
	position: unset;
}
.emergency_box p.img_warn a {
    color: #dd3e3e;
}
/*--------------------------------------------------*/
/*  新着あり                                        */
/*--------------------------------------------------*/
.notice_unread_icon {
	position: absolute;
    top: calc(50% - 24px);
    left: -45px;
    width: 30px;
    height: 36px;
    z-index: 1;
    padding: 4px 8px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
	text-align: center;
	background: #f04070;
	border-radius: 4px;
	-webkit-animation: blink 1.0s ease-in-out infinite alternate;
	-moz-animation: blink 1.0s ease-in-out infinite alternate;
	animation: blink 1.0s ease-in-out infinite alternate;
}

.notice_unread_icon::before {
	position: absolute;
	top: 18px;
	left: 46px;
	z-index: 2;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f04070;
	border-style: solid solid solid solid;
	border-width: 5px 0 5px 8.7px;
}

@-webkit-keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

@-moz-keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

@keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

.notice_unread_num {
	display: block;
	position: absolute;
	top: 0px;
	right: 10px;
	width: 12px;
	height: 12px;
	padding: 2px;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	background: #f00;
	border-radius: 50%;
}

.right_menu .notice_unread_num {
	top: 2px;
    left: 2px;
    width: 9px;
}

.right_menu .notice_unread_icon {
	display: none;
}

.notice_unread_num.double {
	width: 18px;
	border-radius: 8px;
}

/*--------------------------------------------------*/
/*  共通ボタン                                      */
/*--------------------------------------------------*/
a.red_btn,
button.red_btn,
.red_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	text-shadow: -1px -1px 1px #606060;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #ea3030, #ca0000);
	background: -moz-linear-gradient(top, #ea3030, #ca0000);
	background: linear-gradient(to bottom, #ea3030, #ca0000);
	border: 1px solid #b00000;
	border-radius: 4px;
}

.red_btn:hover {
	background: -webkit-linear-gradient(top, #e02a2a, #aa0000);
	background: -moz-linear-gradient(top, #e02a2a, #aa0000);
	background: linear-gradient(to bottom, #e02a2a, #aa0000);
}

a.gray_btn,
button.gray_btn,
.gray_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #2a2a2a;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.gray_btn:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

a.orange_btn,
button.orange_btn,
.orange_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #3a3a3a;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
	background: -moz-linear-gradient(top, #fff090, #f0ca5a);
	background: linear-gradient(to bottom, #fff090, #f0ca5a);
	border: 1px solid #8a8a50;
	border-radius: 4px;
}

.orange_btn:hover {
	background: -webkit-linear-gradient(top, #fae080, #eaba4a);
	background: -moz-linear-gradient(top, #fae080, #eaba4a);
	background: linear-gradient(to bottom, #fae080, #eaba4a);
}

.normal_btn {
	width: 240px;
	padding: 14px 0;
	font-size: 20px;
}

.wide_btn {
	width: 320px;
	padding: 16px 0 !important;
	font-size: 20px;
}

.icon_btn {
	margin: 10px;
	font-size: 0;
	text-align: center;
}

.icon_btn li {
	display: inline-block;
	width: 80px;
	margin: 0 4px 8px 4px;
	font-size: 0;
}

.icon_btn li a {
	display: block;
	position: relative;
	padding: 10px 0 32px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.icon_btn li a i {
	font-size: 36px;
}

.icon_btn li a span {
	display: block;
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	font-size: 12px;
	font-weight: bold;
}

.icon_btn li a:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

/*--------------------------------------------------*/
/*  基本スタイル                                    */
/*--------------------------------------------------*/
body {
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	min-width: 1300px;
}

#body {
	position: relative;
	width: 100%;
}

#body_overlay {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.7);
}

/*--------------------------------------------------*/
/*  固定配置                                        */
/*--------------------------------------------------*/
#return {
	position: fixed;
	right: 10px;
	bottom: 40px;
	z-index: 1;
}
#return.on_chatbot {
	bottom: 180px;
}
#return a {
	display: block;
	position: relative;
	width: 50px;
	height: 14px;
	padding: 30px 0 6px 0;
	color: #fff;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background-color: rgba(0, 0, 0, 0.75);
	border-radius: 4px;
}

#return a::after {
	position: absolute;
	top: 7px;
	left: 16px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent #fff transparent;
	border-style: solid solid solid solid;
	border-width: 0 9px 15.59px 9px;
}

#return a:hover {
	background-color: rgba(0, 0, 0, 0.6);
}

/*--------------------------------------------------*/
/*  入力フォーム共通                                */
/*--------------------------------------------------*/
form .input {
	height: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid #b0b0b0;
}

form .input input {
	display: block;
    width: 100%;
    height: 38px;
    box-sizing: border-box;
    padding: 10px;
    font-size: 18px;
    line-height: 1;
    border: none;
    outline: none;
}

/*--------------------------------------------------*/
/*  ヘッダー                                        */
/*--------------------------------------------------*/
.header_inner {
	max-width: 1300px;
	min-width: 1000px;
	margin: 5px auto 0 auto;
}

#top_logo,
#top_logo img {
	width: 202px;
	height: 72px;
    vertical-align: top;
}

#top_tel {
	text-align: center;
}

#top_tel img {
	width: 280px;
}

#top_btn {
	width: 560px;
	/*	width: 545px; きっちりだとブラウザ縮小で崩れる*/
	height: 64px;
	font-size: 0;
	text-align: right;
}

#top_btn li {
	position: relative;
	display: inline-block;
	width: 75px;
	font-size: 0;
	border-right: 1px solid #eaeaea;
}

#top_btn li.cart {
	width: 180px;
}

#top_btn li:last-child {
	border-right: none;
}

#top_btn li p,
#top_btn li a {
	display: block;
	padding: 2px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

#top_btn li p img,
#top_btn li a img {
	display: block;
	width: 72px;
	height: 46px;
	margin: 0 0 2px
}

#top_btn li.cart a {
	position: relative;
	padding: 50px 10px 2px 72px;
}

#top_btn li.cart a img {
	position: absolute;
	top: 2px;
	left: 10px;
	width: 52px;
	height: 60px;
	margin: 0;
}

#top_btn li.cart a #cart_item {
	display: block;
	position: absolute;
	top: 8px;
	left: 17px;
	width: 48px;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

#top_btn li.cart a #cart_price {
	display: block;
	position: absolute;
	top: 12px;
	right: 10px;
	width: 108px;
	color: #000;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
}

#top_btn li p:hover,
#top_btn li a:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_btn li p:hover img,
#top_btn li a:hover img {
	opacity: 0.7;
}

#top_btn li.cart a:hover #cart_price {
	color: #f00000;
}

.search_desc {
	width: 220px;
	padding-left: 30px;
}

.search_desc div {
	position: relative;
	width: 200px;
	padding: 6px 0 3px 0;
	font-size: 13px;
	line-height: 17px;
	text-align: center;
	background: #fff;
	border: 1px solid #53c3f1;
	border-radius: 2px;
}

.search_desc div.line1{
    margin: 3px 0 !important;
    padding: 10px 0 !important;
}

.search_desc div::before {
	position: absolute;
	right: -24px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    content: "";
	border-color: transparent transparent transparent #53c3f1;
	border-style: solid solid solid solid;
	border-width: 8px 12px 8px 12px;
}

.search_desc div::after {
	position: absolute;
	right: -23px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
	content: "";
	border-color: transparent transparent transparent #fff;
	border-style: solid solid solid solid;
	border-width: 8px 12px 8px 12px;
}

.search_desc div.line1::after,
.search_desc div.line1::before {
    border-width: 7px 12px;
}
.search_desc div.line1::after{
    right: -23px;
    border-color: transparent transparent transparent #fff;
}

.search_body .inner {
	position: relative;
	height: 34px;
	border: 3px solid #53c3f1;
	border-radius: 4px;
}

.search_body .search_input {
	width: calc(100% - 64px);
}

.search_body .search_input input {
    display: block;
    width: calc(100% - 20px);
    height: 34px;
    padding: 7px 10px;
    font-size: 20px;
    line-height: 1;
    border: none;
    border-radius: 4px;
    outline: none;
    box-sizing: border-box;
}

.search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.search_body .search_submit input {
	display: block;
	border: none;
	width: 64px;
	padding: 8px 0px;
    margin: -1px 0;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	text-align: center;
	background: #53c3f1;
	border-radius: 0px;
	-webkit-appearance: none;
	appearance: none
}

.search_body .search_submit input:hover {
	background: #3a88a8;
}


.search_link {
	width: 320px;
	padding-left: 20px;
}

.search_link > p {
	padding: 2px 0;
	font-size: 14px;
	line-height: 18px;
}

.search_link > p span {
	color: #f00000;
	font-weight: bold;
}

.search_link div {
	font-size: 15px;
	font-weight: bold;
	line-height: 23px;
}

.search_link ul {
	font-size: 0;
}

.search_link ul li {
	display: inline-block;
	padding: 0 0 0 10px;
	font-size: 0;
}

.search_link ul li a {
	font-size: 13px;
	line-height: 17px;
}

#top_menu {
	position: relative;
	margin: 10px 0 0 0;
	font-size: 0;
	background: #eaeaea;
}

#top_menu > ul {
    display: flex;
    width: 1300px;
	margin: 0 auto;
	font-size: 0;
	table-layout: fixed;
}

#top_menu > ul > li {
	width: 257px;
    border-left: 1px solid #fff;
    height: 45px;
    min-height: 45px;
    max-height: 45px;
}

#top_menu > ul > li:last-child {
	border-right: 1px solid #fff;
}

#top_menu .open_menu {
	position: relative;
	padding: 15px;
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	cursor: default;
}

#top_menu .open_menu::before {
	position: absolute;
	top: calc(50% - 7px);
	right: 8px;
	content: "\f0d7";
	font-family: FontAwesome;
	font-style: normal;
	font-size: 14px;
}

#top_menu li:hover .open_menu {
	color: #fff;
	background: #53c3f1;
}

#top_menu li:hover .open_menu::before {
	color: #53c3f1;
}

#top_menu li:hover .open_menu::after {
	position: absolute;
	bottom: 0;
	left: calc(50% - 8px);
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent #fff transparent;
	border-style: solid solid solid solid;
	border-width: 8px 8px 8px 8px;
}

#top_menu .link_menu a{
	position: relative;
    height: 45px;
    min-height: 45px;
    max-height: 45px;
    padding: 15px;
    box-sizing: border-box;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    display: block;
    text-decoration: none;
    color: #000;
}
#top_menu .link_menu a:hover{
	background-color: #53c3f1;
	color: #fff;
}

#top_menu .hide_menu {
	display: none;
	position: absolute;
	top: 45px;
	left: 0;
	z-index: 101;
	width: 100%;
	background: #fff;
}

#top_menu .hide_menu .img_menu {
	max-width: 1260px;
	width: 100%;
    margin: 20px auto;
    font-size: 0;
    display: flex;
    flex-wrap: nowrap;
}
#top_menu .hide_menu .img_menu li{
	display: inline-block;
    width: 295px;
    margin: 15px;
    font-size: 0;
    vertical-align: top;
    white-space: pre;
}
#top_menu .hide_menu .img_menu > li > a {
    display: block;
    padding: 10px 10px 0;
    color: #2a2a2a;
    font-size: 16px;
    font-weight: 700;
    line-height: 17px;
    text-align: center;
    text-decoration: underline;
}
#top_menu .hide_menu .img_menu li a:hover {
	color: #f00000;
	text-decoration: underline;
}
#top_menu .hide_menu .img_menu li > a > img {
	display: block;
    width: 100%;
    height: 125px;
    object-fit: contain;
    margin: 0px auto 20px;
    padding: 2px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 5px;
}
#top_menu .hide_menu .img_menu > li > a span {
    text-align: left;
    display: block;
    position: relative;
    padding-left: 12px;
}
#top_menu .hide_menu .img_menu > li > a span::before {
    content: "";
    border: 7px solid transparent;
    border-left: 7px solid red;
    position: absolute;
    width: 0;
    height: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: 0px auto;
    line-height: 0;
}

#top_menu .hide_menu .img_menu > li > ul.hide_menu_sub{
	margin: 7px 10px;
    line-height: 0;
}
#top_menu .hide_menu .img_menu > li > ul.hide_menu_sub li {
	display: block !important;
    margin: -2px 0px;
    white-space: normal;
    text-align: left;
    font-size: 13px;
    line-height: 1;
    white-space: pre;
    position: relative;
    padding: 10px 10px 0px 40px;
    box-sizing: border-box;
    background-color: #fff;
    background: url(/img/icon/menu_arrow_long.png)no-repeat 20px -2px;
}
#top_menu .hide_menu .img_menu > li > ul.hide_menu_sub li:last-child {
    background: url(/img/icon/menu_arrow_long_last.png)no-repeat 20px -2px
}
#top_menu .hide_menu .img_menu > li > ul.hide_menu_sub li a{
	padding: 0px !important;
    text-decoration: none;
    color: #333;
	font-size: 13px;
	font-weight: 400;
    line-height: 17px;
    text-align: left;
	position: relative;
	text-decoration: underline;
}
#top_menu .hide_menu .img_menu > li > ul.hide_menu_sub li a:hover{
	text-decoration: underline;
	color: #e00000;
}


#top_menu .hide_menu .img_menu li.pickup {
	position: relative;
	width: 120px;
	margin: 0;
	padding: 20px 0 0 20px;
}

#top_menu .hide_menu .img_menu li.pickup.title::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	content: "";
	background: #eaeaea;
}

#top_menu .hide_menu .img_menu li.pickup.title::after {
	position: absolute;
	top: 0;
	left: 15px;
	content: "人気の商品";
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
}

#top_menu .hide_menu .img_menu li.pickup a {
	width: 90px;
	padding: 0 15px;
}

#top_menu .hide_menu .img_menu li.pickup a > img {
	margin: 0 0 4px 0;
}

#top_menu .hide_menu .img_menu li.pickup a .name,
#top_menu .hide_menu .img_menu li.pickup a .review {
	display: block;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 14px;
}

#top_menu .hide_menu .img_menu li.pickup a .review {
	font-weight: normal;
}

#top_menu .hide_menu .img_menu li.pickup a .star {
	display: block;
	margin: 2px 0 0 0;
}

#top_menu .hide_menu .img_menu li.pickup a .star img {
	margin: 0;
	vertical-align: bottom;
}

#top_menu .hide_menu .img_menu li.pickup a:hover {
	text-decoration: none;
}

#top_menu .hide_menu .img_menu li.pickup a:hover .name {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .img_menu li.pickup a:hover .star {
	opacity: 0.8;
}

#top_menu .hide_menu .symptom_menu {
	width: 1300px;
	margin: 0 auto;
	font-size: 0;
}

#top_menu .hide_menu .symptom_menu > li {
	display: inline-block;
	width: 219px;
	padding: 20px;
	font-size: 0;
	border-bottom: 1px solid #c0c0c0;
	border-right: 1px solid #c0c0c0;
}

#top_menu .hide_menu .symptom_menu > li:nth-child(5n+1) {
	width: 218px;
	border-left: 1px solid #c0c0c0;
}

#top_menu .hide_menu .symptom_menu .title {
	display: block;
	position: relative;
	margin: 0 0 5px 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: bold;
	line-height: 22px;
	text-decoration: none;
}

#top_menu .hide_menu .symptom_menu .title::after {
	position: absolute;
	top: calc(50% - 6.5px);
	right: 0;
	content: "全て見る";
	font-size: 13px;
	font-weight: normal;
	line-height: 1;
	text-decoration: underline;
}

#top_menu .hide_menu .symptom_menu .title:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .image {
	width: 60px;
	padding: 0 20px 0 0;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .image a,
#top_menu .hide_menu .symptom_menu .dsp_tbl .image a img {
	display: block;
	width: 100%;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text {
	height: 96px;
	vertical-align: top;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li {
	position: relative;
	width: 100%;
	height: 18px;
	margin: 3px 0;
	font-size: 14px;
	line-height: 18px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li::before {
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li a {
	padding: 0 0 0 10px;
	color: #2a2a2a;
	text-decoration: none;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li a:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .menu_tbl {
	display: table;
	table-layout: fixed;
	width: 1260px;
	margin: 30px auto;
}

#top_menu .hide_menu .menu_tbl ul {
	display: table-cell;
	margin: 20px 10px 30px 10px;
	text-align: left;
	vertical-align: top;
}

#top_menu .hide_menu .menu_tbl ul li {
	line-height: 1;
}

#top_menu .hide_menu .menu_tbl ul li.prt {
	position: relative;
	padding: 0 0 3px 8px;
	font-size: 14px;
	font-weight: bold;
}

#top_menu .hide_menu .menu_tbl ul li.prt:not(:first-child) {
	margin: 20px 0 0 0;
}

#top_menu .hide_menu .menu_tbl ul li.prt::before {
	position: absolute;
	top: calc(50% - 5px);
	left: 0;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

#top_menu .hide_menu .menu_tbl ul li.cld {
	padding: 13px 0 0 40px;
	font-size: 13px;
	background: url("/img/icon/menu_arrow_long.png") no-repeat 18px 0;
}

#top_menu .hide_menu .menu_tbl ul li.cld:last-child {
	background: url("/img/icon/menu_arrow_long_last.png") no-repeat 18px 0;
}

#top_menu .hide_menu .menu_tbl ul li,
#top_menu .hide_menu .menu_tbl ul li a {
	color: #2a2a2a;
	line-hegiht: 1;
}

#top_menu .hide_menu .menu_tbl ul li a:hover {
	color: #f00000;
}

/*--------------------------------------------------*/
/*  フッター                                        */
/*--------------------------------------------------*/
footer {
	margin: 40px 0 0 0;
	padding: 10px 0 0 0;
	background: #f4f4f4;
}

footer .dsp_tbl {
	position: relative;
	width: 1200px;
	margin: 20px auto;
}

footer .dsp_tbl .dsp_cel {
	width: 240px;
	vertical-align: top;
}

footer .dsp_tbl .dsp_cel .title {
	padding: 20px 0 0 0;
	font-size: 15px;
	font-weight: bold;
	line-height: 21px;
}

footer .dsp_tbl .dsp_cel li {
	padding: 3px 0;
	line-height: 1;
	position: relative;
}

footer .dsp_tbl .dsp_cel li.prt p,
footer .dsp_tbl .dsp_cel li.prt .popup_btn,
footer .dsp_tbl .dsp_cel li.prt a {
	position: relative;
	padding: 0 0 0 22px;
	color: #2a2a2a;
	font-size: 13px;
	line-height: 15px;
	text-decoration: none;
	cursor: pointer;
}

footer .dsp_tbl .dsp_cel li.prt p::before,
footer .dsp_tbl .dsp_cel li.prt .popup_btn::before,
footer .dsp_tbl .dsp_cel li.prt a::before {
	position: absolute;
	top: calc(50% - 3.2px);
	left: 14px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid;
	border-width: 3.2px;
}

footer .dsp_tbl .dsp_cel li.prt .type_window{
	display: none;
    margin-left: 12px;
    width: 120px;
    top: 20px;
    left: 43px;
    padding: 5px;
    color: #555;
    line-height: 1;
}
footer .dsp_tbl .dsp_cel li.prt .type_window li{
	display: inline-block;
	vertical-align: top;
	width: 50px;
	padding: 0 !important;
}
footer .dsp_tbl .dsp_cel li.prt .type_window li a::before{
    border-color: transparent transparent transparent #74d3fc;
}


footer .dsp_tbl .dsp_cel li.cld {
	height: 12px;
	padding: 5px 0 3px 0;
	line-height: 1;
	background: url("/img/icon/menu_arrow.png") no-repeat 30px 0;
}

footer .dsp_tbl .dsp_cel li:last-child.cld {
	background: url("/img/icon/menu_arrow_last.png") no-repeat 30px 0;
}

footer .dsp_tbl .dsp_cel li:last-child {
	padding-bottom: 20px;
}

footer .dsp_tbl .dsp_cel li.cld p,
footer .dsp_tbl .dsp_cel li.cld a {
	padding: 0 0 0 50px;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-decoration: none;
}

footer .dsp_tbl .dsp_cel li p:hover,
footer .dsp_tbl .dsp_cel li a:hover {
	color: #f00000;
	text-decoration: underline;
}

.footer_logo {
	position: absolute;
	bottom: 10px;
	right: 0;
}

.footer_logo img {
	width: 180px;
}

#copy_right {
	padding: 30px 0 40px 0;
	text-align: center;
	background: #fff;
}

#copy_right p {
	padding: 3px 0;
	color: #404040;
	font-size: 13px;
	line-height: 19px;
}

/*--------------------------------------------------*/
/*  パンくずリスト                                  */
/*--------------------------------------------------*/
.breadcrumb {
	width: 1260px;
	margin: 20px auto;
	font-size: 0;
}

.breadcrumb.prd {
	margin: 5px auto 5px auto;
}

.breadcrumb.prd:first-child {
	margin-top: 20px;
}

.breadcrumb li {
	display: inline-block;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
}

.breadcrumb li:not(:last-child):after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	font-style: normal;
	padding: 0 10px;
	color: #707070;
}

.breadcrumb li a {
	text-decoration: none;
}

.breadcrumb li:first-child a:before {
	display: inline-block;
	content: "\f015";
	font-family: FontAwesome;
	font-style: normal;
}

.breadcrumb li a:hover,
.breadcrumb li:first-child a:hover::before {
	text-decoration: underline;
}

/*--------------------------------------------------*/
/*  左メニュー                                      */
/*--------------------------------------------------*/
.left_title {
	position: relative;
	padding: 12px 15px;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
	background: #fcfcfc;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.left_title::after {
	position: absolute;
	bottom: 10px;
	left: 12px;
	right: 12px;
	/*width: 176px;*/
	height: 2px;
	content: "";
	background: #909090;
}

.left_title.search {
	padding: 16px 20px 22px 44px;
}

.left_title.search::before {
	position: absolute;
	top: calc(50% - 16px);
	left: 17px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f002";
	color: #2a2a2a;
	font-size: 22px;
	font-weight: normal;
	line-height: 1;
}

.left_link_block {
	margin: 0 0 20px 0;
}

.left_link_block a {
	display: block;
	border: 1px solid #b0b0b0;
	border-top: none;
}

.left_link_block a img {
	display: block;
	width: 99%;
	margin: 0 auto;
}

.left_menu {
	position: relative;
	margin: 0 0 20px 0;
}

.left_menu.normal_menu li a,
.left_menu li.main_category > a {
	display: block;
	position: relative;
	padding: 7px 20px;
	font-size: 14px;
	line-height: 1;
	text-decoration: none;
	background: #fafafa;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.left_menu.normal_menu li:last-child a,
.left_menu li.main_category:last-child > a {
	padding: 7px 20px 6px 20px;
	border-bottom: 1px solid #b0b0b0;
}

.left_menu.normal_menu li a::after,
.left_menu li.main_category > a::after {
	position: absolute;
	top: calc(50% - 6px);
	right: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f054";
	color: #b0b0b0;
	font-size: 10px;
	line-height: 12px;
}

.left_menu.normal_menu li:hover a {
	text-decoration: underline;
}

.left_menu:not(.normal_menu) li.main_category:hover > a {
	padding: 6px 20px;
	background: #fff;
	border-top: 1px solid #b0b0b0;
	border-bottom: 1px solid #b0b0b0;
	border-right: 1px solid #fff;
}

.left_menu.normal_menu li:hover a::after,
.left_menu li.main_category:hover > a::after {
	right: 5px;
	color: #f00000;
	font-size: 12px;
}

.left_menu:not(.normal_menu) li.main_category:hover > a::before {
	position: absolute;
	top: 0;
	right: -1px;
	z-index: 11;
	width: 1px;
	height: 26px;
	content: "";
	background: #fff;
}

.left_menu .sub_category {
	display: none;
	position: absolute;
	top: -57px;
	left: 100%;
	z-index: 10;
	width: 460px;
	/*height: 520px;*/
	padding: 20px;
	background: #fff;
	border: 1px solid #b0b0b0;
	box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.4);
}

.left_menu .sub_category.bottom {
	top: auto;
	bottom: 0;
}

/*
.left_menu.category li:nth-child(4)  .sub_category {background: url("/img/menu/zoudai.png") no-repeat right bottom #fff;}
.left_menu.category li:nth-child(5)  .sub_category {background: url("/img/menu/biyaku.png") no-repeat right bottom #fff;}
.left_menu.category li:nth-child(14) .sub_category {background: url("/img/menu/diet.png") no-repeat right bottom #fff;}
*/
.left_menu .sub_category .title {
	padding: 0 0 10px 0;
	color: #e00000;
	font-size: 28px;
	line-height: 1;
}

.left_menu .sub_category a {
	display: block;
	position: relative;
	padding: 4px 20px;
	font-size: 16px;
	line-height: 22px;
	text-decoration: none;
}

.left_menu .sub_category a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.left_menu .main_category:hover > a,
.left_menu .sub_category a:hover {
	color: #f00000;
}

.left_menu .main_category:hover > a {
	font-weight: bold;
}

.left_menu .main_category a:hover {
	text-decoration: underline;
}

.tbl_3c_l .side_banner {
	display: block;
	width: 200px;
	margin: 0 0 10px 0;
}

.tbl_3c_l .side_banner img {
	display: block;
	width: 200px;
}

a.search_img{
    border-left: 1px solid #b0b0b0;
    border-right: 1px solid #b0b0b0;
    border-bottom: 1px solid #b0b0b0;
    background-color: #fafafa;
    display: block;
}
a.search_img img{
    max-width: 100%;
    height: auto;
}

/*--------------------------------------------------*/
/*  右メニュー                                      */
/*--------------------------------------------------*/
.tbl_3c_r .side_banner {
	display: block;
	width: 240px;
	margin: 0 0 10px 0;
}

.tbl_3c_r .side_banner img {
	display: block;
	width: 240px;
}

.right_menu {
	width: 210px;
	padding: 13px 13px;
	background: #f0f0f0;
	border: 2px solid #e0e0e0;
	border-radius: 4px;
}
.right_mn-history{
	display: none;
}

.right_menu .title {
	position: relative;
	padding: 4px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}

.right_menu > .title {
	padding: 3px 50px 3px 0;
	line-height: 20px;
}

.right_menu .title a {
	position: absolute;
	top: calc(50% - 6px);
	right: 0;
	font-size: 12px;
}

.right_menu .title #tgl_caption {
	position: absolute;
	bottom: 6px;
	right: 0;
	color: #1010ca;
	font-size: 12px;
	line-height: 1;
	text-decoration: underline;
}

.right_menu .title #tgl_caption:hover {
	color: #f00000;
}

.right_menu .title #tgl_caption.open::after {
	content: "閉じる▲";
}

.right_menu .title #tgl_caption.close::after {
	content: "開く▼";
}

.right_box {
	margin: 0 0 30px 0;
	padding: 15px 20px;
	background: #fff;
	border-radius: 2px;
}

.right_box .sns_btn {
	width: 100%;
}

.right_box .title {
	margin: 0 0 20px 0;
	font-size: 14px;
	text-align: center;
}

.right_box p {
	font-size: 12px;
	line-height: 18px;
}

.right_box .input {
	height: 25px;
	margin: 0 0 10px 0;
}

.right_box .input input {
    width: 100%;
    height: 25px;
    box-sizing: border-box;
    padding: 6px;
    color: #2a2a2a;
    font-size: 13px;
}

.right_box .gray_btn {
	width: 120px;
	margin: 20px auto 20px auto;
	padding: 10px 0;
	color: #2a2a2a;
	font-size: 14px;
}

.right_box.login {
	padding: 15px 10px;
}

.right_box.login .user_name {
	margin: 10px 0 20px 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.right_box.login .user_point {
	color: #e00000;
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.right_box.login .user_name span,
.right_box.login .user_point span {
	padding: 0 0 0 4px;
	font-size: 13px;
	font-weight: normal;
}

.right_box.login ul {
	margin: 15px 0;
	font-size: 0;
	text-align: center;
}

.right_box.login ul li {
	display: inline-block;
    vertical-align: top;
    width: 75%;
    margin: 3px;
	position: relative;
}

.right_box.login ul li a {
	display: block;
    position: relative;
    width: 100%;
    height: 36px;
    padding: 12px 5px 12px 48px;
    box-sizing: border-box;
    color: #2a2a2a;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    text-decoration: none;
    text-align: left;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 2px;
}
.right_box.login ul li a i {
    position: absolute;
    top: 5px;
    left: 10px;
    font-size: 27px;
    font-weight: normal;
    text-align: center;
}
.right_box.login ul li a.pd-icon::before {
    content: "";
    background-image: url(/img/icon/icon_wishlist.png?ver=20220823_1832);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    display: block;
    width: 27px;
    height: 27px;
    margin: auto;
    position: absolute;
    top: 4px;
    left: 8px;
}
.right_box.login ul li a.fa-mypage::before{
    content: "";
    background-image: url(/img/icon/user-solid.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    position: absolute;
    left: 8px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 27px;
    height: 27px;
}
.right_box.login ul li a:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

.right_box.login ul li.wish-list{
    margin-top: 30px;
}

.ballon-comment{
	font-size: 12px;
    line-height: 1;
    color: #fff;
    background: #40b9e9;
    display: block;
    padding: 6px;
    margin: auto;
    box-sizing: border-box;
    position: absolute;
    top: -29px;
    left: -10px;
    right: -10px;
    width: 160px;
    border-radius: 23px;
    z-index: 2;
}
.ballon-comment::after{
    content: "";
    border: 6px solid transparent;
    border-top: 10px solid #40b9e9;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -14px;
    width: 0;
    height: 0;
    display: block;
}

.right_menu > ul {
	position: relative;
	margin: 0 0 30px 0;
}

.right_menu .check_list li {
	margin: 0 0 2px 0;
}

.right_menu .check_list li a {
	display: table;
	position: relative;
	width: calc(100% - 10px);
	padding: 10px 5px;
	text-decoration: none;
	background: #fff;
	border: 1px solid #fff;
}

.right_menu .check_list li a::after {
	position: absolute;
	bottom: 0;
	right: 10px;
	color: #1010ca;
	font-size: 11px;
	content: "詳細を見る";
	text-decoration: underline;
}

.right_menu .check_list li a .dsp_cel {
	height: 75px;
	padding: 5px 5px 5px 0;
	vertical-align: top;
}

.right_menu .check_list li a .img {
	width: 84px;
	padding: 5px;
	vertical-align: middle;
}

.right_menu .check_list li a .img img {
	display: block;
	width: auto;
	height: auto;
	max-width: 84px;
	max-height: 70px;
	margin: 0 auto;
}

.right_menu .check_list li a .name {
	display: block;
	max-height: 30px;
	margin: 4px 0 8px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 15px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.right_menu .check_list li a .price {
	display: block;
	color: #e00000;
	font-size: 12px;
}

.right_menu .check_list li a:hover {
	border-color: #53c3f1;
}

.right_menu .check_list li a:hover::after {
	color: #f00000;
}

.right_menu .info_list.close {
	max-height: 180px;
	overflow: auto;
}

.right_menu .info_list li a {
	display: block;
	position: relative;
	padding: 12px 20px 8px 10px;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	background: #fff;
	text-decoration: none;
	border-bottom: 1px solid #eaeaea;
}

.right_menu .info_list li a time {
	display: block;
	padding: 0 0 5px 0;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
}

.right_menu .info_list li:last-child a {
	border-bottom: none;
}

.right_menu .info_list li a::after {
	position: absolute;
	top: calc(50% - 7px);
	right: 5px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f054";
	color: #b0b0b0;
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.right_menu .info_list li a:hover {
	background: #fff0ff;
}

.right_menu .info_list li a:hover::after {
	color: #53c3f1;
}

.right_menu .prtect_area{
    padding: 10px 0 5px;
    margin: 20px auto;
    border-top: 5px solid #f0f0f0;
    border-bottom: 5px solid #f0f0f0;
}

/*--------------------------------------------------*/
/*  コンテンツ見出し＋更新日                        */
/*--------------------------------------------------*/
h1:not(#top_logo) {
	position: relative;
	margin: 0 0 10px 0;
	font-size: 26px;
	font-weight: bold;
	line-height: 36px;
	border-bottom: 1px solid #dadada;
}

h2 {
	position: relative;
	margin: 0 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
	border-bottom: 1px solid #dadada;
}

h2.search {
	padding: 0 0 0 36px;
}

h2.search::before {
	position: absolute;
	top: calc(50% - 18px);
	left: 0;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f002";
	color: #2a2a2a;
	font-size: 28px;
	font-weight: normal;
	line-height: 1;
}

h2.obi {
	position: relative;
	margin: 20px -10px 10px -10px;
	padding: 10px 10px 10px 34px;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
	background: #eaeaea;
	border: none;
}

h2.obi::before {
	position: absolute;
	left: 12px;
	top: calc(50% - 14px);
	width: 10px;
	height: 28px;
	content: "";
	background: #53c3f1;
}

h3 {
	margin: 20px 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 26px;
}

h3.square {
	margin: 20px -5px 5px -10px;
	padding: 10px 10px 10px 10px;
	border-bottom: 1px solid #b0b0b0;
}

h3.square::before {
	margin: 0 10px 0 0;
	content: "◆";
	font-weight: normal;
}

.update_date {
	position: absolute;
	bottom: 6px;
	right: 10px;
	font-size: 14px;
	line-height: 1;
}

/*  商品詳細本文                                    */
/*--------------------------------------------------*/
/* 20210910 */
h3.article {
	color: #fff;
	background: #19C0FF;
	font-size: 20px !important;
    padding: 8px 12px !important;
	border-radius: 4px;
    text-shadow: 1px 1px 0px #1a96c5;
	box-shadow: 2px 2px 0px #EBEBEB;
    border: 0px !important;
}
h4.article {
	font-size: 19px;
	font-weight: bold;
    position: relative;
    color: #495254;
    background: #fff;
    border-radius: 4px;
    padding: 7px 7px 7px 20px !important;
    border-left: 0 !important;
    border: 1px solid #D5D5D5 !important;
    box-shadow: 0px 2px 0px #ddd;
}
h4.article::before {
    content: "";
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: 5px 3px;
    width: 7px;
    background: rgb(0,197,255);
    background: linear-gradient(180deg, rgba(0,197,255,1) 0%, rgba(186,239,255,1) 100%);
}
/* ↓20210908追加 */
h5.article{
    font-size: 18px;
    font-weight: bold;
	margin: 10px 0;
    padding: 10px;
    color: #333;
}
h5.article::before{
    content: "■";
    color: #19C0FF;
    margin-right: 5px;
}



/*--------------------------------------------------*/
/*  スライダー                                      */
/*--------------------------------------------------*/
.main_slider {
	width: 820px;
	margin: 0 !important;
	padding: 0 !important;
}

.main_slider img{
	width: 818px !important;
}
.main_slider li{
	border: 1px solid #ccc;
}

.main_slider .slick-prev,
.main_slider .slick-next {
	top: calc(50% - 20px);
	z-index: 1;
	width: 40px;
	height: 40px;
	color: transparent;
	outline: none;
	background-color: rgba(104, 104, 104, 0.6);
	border-radius: 100%;
}

.main_slider .slick-prev {
	left: -10px;
}

.main_slider .slick-next {
	right: -10px;
}

.main_slider .slick-prev::before,
.main_slider .slick-next::before {
	position: absolute;
	top: 2px;
	width: 36px;
	height: 36px;
	font-family: FontAwesome;
	font-style: normal;
	color: #fff;
	font-size: 36px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	opacity: 0.8;
}

.main_slider .slick-prev::before {
	left: 0;
	content: "\f104";
}

.main_slider .slick-next::before {
	right: 0;
	content: "\f105";
}

.main_slider_navi {
	width: 820px;
	margin: 0 auto 20px auto;
	font-size: 0;
}

.main_slider_navi li {
	display: inline-block;
	width: 164px !important;
	padding: 12px 0 0 0;
	font-size: 0;
	outline: none;
}

.main_slider_navi li img{
	display: block;
	width: 100%;
	height: auto;
	cursor: pointer;
}

.main_slider_navi .slick-current p {
	border-color: #53c3f1;
}

/*--------------------------------------------------*/
current p::before {
	position: absolute;
	top: -24px;
	left: calc(50% - 12px);
	width: 0;
	height: 0;
	content: " ";
	border-color: transparent transparent #53c3f1 transparent;
	border-style: solid solid solid solid;
	border-width: 12px 12px 12px 12px;
}

.main_slider_navi li img {
	display: block;
	width: 100%;
}

.main_slider li:not(:first-child),
.main_slider_navi li:not(:first-child) {
	display: none;
}

.prd_slider {
	position: relative;
	/*
	width: 840px;
*/
	width: 730px;
	margin: 10px auto 20px auto;
	padding: 0 35px;
	font-size: 0;
}

.prd_slider > li {
	/*
	width: 168px;
*/
	width: 146px;
	outline: none;
	display: inline-block;
	vertical-align: top;
}

.recommend_category .prd_slider {
	width: 840px;
}

.recommend_category .prd_slider > li {
	width: 168px;
	display: inline-block;
	vertical-align: top;
}

.prd_slider .slick-prev,
.prd_slider .slick-next {
	display: block;
	top: calc(50% - 42px);
	z-index: 1;
	color: transparent;
	width: 28px;
	height: 84px;
	font-size: 0;
	cursor: pointer;
	background: #f0f0f0;
	border: 1px solid #909090;
	border-radius: 2px;
	outline: none;
}

.prd_slider .slick-prev {
	left: 0;
}

.prd_slider .slick-next {
	right: 0;
}

.prd_slider .slick-prev::before,
.prd_slider .slick-next::before {
	position: absolute;
	top: 34px;
	width: 28px;
	font-family: FontAwesome;
	font-style: normal;
	color: #404040;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.prd_slider .slick-prev::before {
	right: 0;
	content: "\f053";
}

.prd_slider .slick-next::before {
	left: 0;
	content: "\f054";
}

.prd_slider .slick-prev:hover,
.prd_slider .slick-next:hover {
	background: #e0e0e0;
}

.prd_slider .slick-prev button,
.prd_slider .slick-next button {
	font-size: 0;
}

.prd_slider .slick-prev.slick-disabled,
.prd_slider .slick-next.slick-disabled {
	cursor: default;
	background: #fefefe;
	border: 1px solid #c0c0c0;
}

.prd_slider .slick-prev.slick-disabled::before,
.prd_slider .slick-next.slick-disabled::before {
	color: #c0c0c0;
}

/*--------------------------------------------------*/
/*  ピックアップ商品                                */
/*--------------------------------------------------*/
.prd_box {
	padding: 0 20px;
	font-size: 0;
}

.ftr_prd {
	display: inline-block;
	width: 154px;
	margin: 0 5px;
	font-size: 0;
	vertical-align: top;
	overflow: hidden;
	outline: none;
}

.ftr_prd a {
	text-decoration: none;
}

.ftr_prd .prd_img,
.ftr_prd .prd_img img,
.ftr_prd .prd_nam,
.ftr_prd .prd_dsc,
.ftr_prd .prd_prc,
.ftr_prd .prd_rev {
	display: block;
}

.ftr_prd .prd_img {
	border: 1px solid #c0c0c0;
}

.ftr_prd .prd_img:hover {
	border: 1px solid #f00000;
}

.ftr_prd .prd_img img {
	width: 100%;
}

.ftr_prd .prd_nam {
	max-height: 40px;
	margin: 6px 4px;
	color: #1010ca;
	font-size: 16px;
	line-height: 20px;
	text-decoration: underline;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ftr_prd .prd_dsc {
	max-height: 72px;
	margin: 0 4px;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}

.ftr_prd .prd_prc {
	padding: 5px 4px;
	color: #e00000;
	font-size: 16px;
	line-height: 20px;
	text-align: center;
	text-decoration: none;
}

.ftr_prd .prd_rev {
	color: #2a2a2a;
	font-size: 11px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ftr_prd .prd_rev span {
	display: block;
}

.ftr_prd .prd_rev span.star img {
	display: block;
	margin: 0 auto;
}

.ftr_prd .prd_nam:hover,
.ftr_prd .prd_prc:hover,
.ftr_prd .prd_rev:hover {
	color: #f00000;
}

.ftr_prd a:hover .prd_nam {
	color: #f00000;
}

.ftr_prd a:hover .prd_img {
	border: 1px solid #f00000;
}

.ftr_prd a:hover .prd_img img {
	opacity: 0.8;
}

/* 使う場所別の設定 */
.recommend_category .ftr_prd {
	width: 148px;
	margin: 0 10px;
}

.prd_slider .ftr_prd .prd_nam {
	height: 36px;
	margin: 4px;
	font-size: 14px;
	line-height: 18px;
}

.prd_slider .ftr_prd .prd_dsc {
	width: 100%;
	max-height: 48px;
	font-size: 12px;
	line-height: 16px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.campaign_list {
	margin: 0 auto 40px auto;
	font-size: 0;
	text-align: center;
}

.campaign_list .ftr_prd {
	display: inline-block;
	width: 170px;
	margin: 0 15px;
	text-align: left;
}

.campaign_list .ftr_prd .prd_prc {
	position: relative;
	padding: 5px 15px 5px 0;
	color: #e00000;
	font-size: 36px;
	font-weight: bold;
	line-height: 1;
	text-align: right;
}

.campaign_list .ftr_prd .prd_prc::after {
	position: absolute;
	right: 0;
	bottom: 10px;
	font-size: 15px;
	content: "円";
}

.prd_box .ftr_prd {
	width: 110px;
	margin: 0 10px;
}

.prd_box .ftr_prd .prd_nam,
.prd_box .ftr_prd .prd_prc {
	font-size: 13px;
	line-height: 15px;
}

.prd_box .ftr_prd .prd_nam {
	max-height: 30px;
}

.ranking_box .ftr_prd .prd_prc {
	padding: 3px 0 0 0;
	font-size: 14px;
	line-height: 18px;
}

/*
.ranking_box .ftr_prd .prd_rev span {
	font-size: 18px;
}
*/
.tab_ranking_box ul {
	text-align: left !important;
}

.tab_ranking_box .ftr_prd {
	width: 90px;
	margin: 0 5px;
	text-align: left;
	vertical-align: top;
}

.tab_ranking_box .ftr_prd .prd_nam {
	height: 28px;
	margin: 3px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 14px;
	text-decoration: none;
}

.tab_ranking_box .ftr_prd .prd_nam:hover {
	color: #f00000;
	text-decoration: underline;
}

.tab_ranking_box .ftr_prd .prd_prc {
	color: #e00000;
	padding: 3px 0;
	font-size: 11px;
	line-height: 13px;
}

/*--------------------------------------------------*/
/*  売れ筋ランキング                                */
/*--------------------------------------------------*/
.tab_ranking_menu {
	font-size: 0;
}

.tab_ranking_menu li {
	display: inline-block;
	max-width: 147px;
	height: 15px;
	margin: 0 4px 4px 0;
	padding: 10px;
	color: #504a4a;
	font-size: 12px;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	border-radius: 3px;
	cursor: pointer;
	background: #fff;
	border: 1px solid #b0b0b0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.tab_ranking_menu li:nth-child(6n) {
	margin: 0 0 4px 0;
}

.tab_ranking_menu li:not(.active):hover {
	background: #c7c7c7;
}

.tab_ranking_menu li.active {
	font-size: 14px;
	color: #fff;
	background: #53c3f1;
	border: 1px solid #53c3f1;
}

.ranking_box {
	margin: 0 0 20px 0;
	padding: 0 9px;
	border: 1px solid #b0b0b0;
}

.ranking_box h3,
.tab_ranking_box h3 {
	position: relative;
	margin: 12px 0 4px 0;
	padding: 0 0 0 32px;
	font-size: 18px;
	background: url("/img/icon/rank_title.png") no-repeat 0 0;
}

.ranking_box .prd_slider {
	width: 730px;
	margin: 10px auto;
	border-bottom: 1px dotted #c0c0c0;
}

.ranking_box .prd_slider:last-child,
.ranking_box .prd_slider.no_border {
	border-bottom: none;
}

.ranking_box li {
	width: 128px;
	margin: 0 10px;
	padding: 0 0 15px 0;
	vertical-align: top;
	outline: none;
}

.tab_ranking_box {
	padding: 0 10px 30px 10px;
}

.tab_ranking_box ul {
	display: none;
	font-size: 0;
	text-align: center;
}

.tab_ranking_box ul.active {
	display: block;
}

.ranking_box li .rank,
.tab_ranking_box li .rank {
	height: 22px;
	padding: 5px 0 2px 0;
	color: #da0000;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	vertical-align: bottom;
}

.ranking_box li .rank strong,
.tab_ranking_box li .rank strong {
	padding: 0 2px 0 0;
	font-size: 22px;
}

/*--------------------------------------------------*/
/*  部位・症状のメニュー                            */
/*--------------------------------------------------*/
.symptom_category {
	margin: 0 0 20px 0;
	font-size: 0;
	vertical-align: top;
}

.symptom_category li {
	display: inline-block;
	width: 280px;
	margin: 0 10px 15px 10px;
	font-size: 0;
	border-top: 4px solid #53c3f1;
}

.symptom_category li a.title {
	position: relative;
	display: block;
	padding: 8px 5px;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
}

.symptom_category li a.title::after {
	position: absolute;
	top: 10px;
	right: 5px;
	content: "全て見る";
	font-size: 13px;
	font-weight: normal;
	text-decoration: underline;
}

.symptom_category .dsp_tbl .dsp_cel {
	vertical-align: top;
	padding: 0 5px 0 10px;
}

.symptom_category .dsp_tbl .image {
	width: 72px;
	padding: 5px 10px 5px 5px;
}

.symptom_category .dsp_tbl .image a,
.symptom_category .dsp_tbl .image a img {
	display: block;
	width: 72px;
}

.symptom_category .dsp_tbl .text {
	line-height: 1;
}

.symptom_category .dsp_tbl .text a {
	position: relative;
	display: block;
	padding: 3px 10px 3px 12px;
	color: #2a2a2a;
	font-size: 13px;
	line-height: 1;
	text-decoration: none;
}

.symptom_category .dsp_tbl .text a::before {
	position: absolute;
	top: calc(50% - 3.2px);
	left: 4px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #53c3f1;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

.symptom_category li a.title:hover,
.symptom_category li a.title:hover::after,
.symptom_category li .dsp_tbl .text a:hover {
	color: #f00000;
	text-decoration: underline;
}

/*--------------------------------------------------*/
/*  おすすめジャンル＋スライダー                    */
/*--------------------------------------------------*/
.recommend_category.dsp_tbl {
	width: 100%;
	margin: 0 0 20px 0;
}

.recommend_category .menu {
	width: 198px;
	padding: 15px 20px;
	vertical-align: top;
	background: #fafafa;
	border: 1px solid #b0b0b0;
}

.recommend_category .body {
	padding: 15px 20px 5px 20px;
	vertical-align: top;
	border: 1px solid #b0b0b0;
	border-left: none;
}

.recommend_category .menu h2 {
	padding: 0 0 8px 0;
	border-bottom: 2px solid #53c3f1;
}

.recommend_category .menu h2 a {
	display: block;
	position: relative;
	padding: 0 0 0 5px;
	color: #2a2a2a;
	text-decoration: none;
}

.recommend_category .menu li a {
	display: block;
	position: relative;
	padding: 4px 0 4px 24px;
	font-size: 16px;
	line-height: 22px;
	text-decoration: none;
}

.recommend_category .menu li a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 12px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.recommend_category .menu a:hover {
	color: #f00000;
}

.recommend_category .menu li a:hover {
	text-decoration: underline;
}

.recommend_category .body .title {
	padding: 0 0 10px 0;
	font-size: 20px;
	font-weight: bold;
}

/*--------------------------------------------------*/
/*  商品一覧                                        */
/*--------------------------------------------------*/
.prd_list.yoko {
	margin: 0 0 30px 0;
}

.prd_list.yoko li {
	display: table;
	width: 100%;
}

.prd_list.yoko li > div {
	display: table-cell;
	min-height: 100px;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #dadada;
}

.prd_list.yoko li .yoko_l {
	width: 120px;
}

.prd_list.yoko li .yoko_c {
	width: 400px;
}

.prd_list.yoko li .yoko_r {
	position: relative;
	width: 240px;
}

.prd_list.yoko .yoko_l img {
	display: block;
	width: 100%;
}

.prd_list.yoko .item_name {
	margin: 0;
	font-size: 16px;
	line-height: 20px;
}

.prd_list.yoko .item_desc {
	height: 34px;
	margin: 5px 0;
	font-size: 13px;
	line-height: 17px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.prd_list.yoko .item_desc span,
.prd_list.yoko .item_desc strong {
	padding: 0 4px 0 0;
}

.prd_list.yoko .item_maker {
	position: relative;
	height: 12px;
	padding: 10px 0 5px 0;
	color: #606060;
	font-size: 12px;
	line-height: 1;
}

.prd_list.yoko .item_maker a {
	display: block;
	position: absolute;
	top: 10px;
	left: 36px;
	max-width: 240px;
	height: 12px;
	color: #606060;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.prd_list.yoko .item_maker a:hover {
	color: #f00000;
}

.prd_list.yoko .item_maker .more_text {
	position: absolute;
	top: 0;
	right: 10px;
	color: #606060;
	font-size: 12px;
	line-height: 1;
	vertical-align: top;
	text-decoration: underline;
	cursor: pointer;
}

.prd_list.yoko .item_review a {
	color: #fa8000;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.yoko .item_review a .star {
	font-size: 0;
}

.prd_list.yoko .item_review a .num {
	color: #2a2a2a;
	font-size: 14px;
}

.prd_list.yoko .item_review a:hover .num {
	color: #f00000;
}

.prd_list.yoko .item_price {
	padding: 10px 0 0 60px;
	color: #da0000;
	font-size: 16px;
	line-height: 1;
	text-align: right;
	vertical-align: bottom;
}

.prd_list.yoko .item_price strong {
	padding: 0 4px;
	font-size: 26px;
}

.prd_list.yoko .item_stock {
	position: absolute;
	top: 20px;
	left: 10px;
	width: 60px;
	height: 12px;
	padding: 6px 0;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border: 1px solid #1010ca;
}

.prd_list.yoko .item_stock.ok {
	color: #fff;
	background: #1010ca;
}

.prd_list.yoko .item_stock.ng {
	color: #da0000;
	background: #fff;
	border-color: #da0000;
}

.prd_list.yoko .yoko_r .gray_btn {
	display: block;
	width: 140px;
	height: 16px;
	margin: 30px auto 0 auto;
	padding: 8px 0;
	font-size: 16px;
	line-height: 1;
}

.prd_list.tate {
	margin: 0 0 20px 0;
	font-size: 0;
}

.prd_list.tate li {
	display: inline-block;
	width: 190px;
	margin: 0 0 10px 0;
	padding: 0 20px 20px 0;
	font-size: 0;
	vertical-align: top;
	border-bottom: 1px solid #c0c0c0;
}

.prd_list.tate li:nth-child(4n) {
	padding: 0 0 20px 0;
}

.prd_list.tate .item_image,
.prd_list.tate .item_image img {
	display: block;
	width: 100%;
}

.prd_list.tate .item_price {
	padding: 5px 0 0 0;
	color: #da0000;
	font-size: 13px;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.prd_list.tate .item_price strong {
	padding: 0 4px;
	font-size: 24px;
}

.prd_list.tate .item_name {
	height: 42px;
	margin: 5px 0;
	padding: 0;
	font-size: 15px;
	line-height: 21px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.prd_list.tate .item_review {
	position: relative;
	margin: 4px 0;
	text-align: right;
}

.prd_list.tate .item_review a {
	color: #fa8000;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.tate .item_review a .star {
	color: #fa8000;
	font-size: 17px;
}

.prd_list.tate .item_review a .num {
	color: #2a2a2a;
	font-size: 11px;
}

.prd_list.tate .item_review a:hover .num {
	color: #f00000;
}

.prd_list.tate .item_stock {
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	width: 50px;
	height: 11px;
	margin: 0 auto;
	padding: 4px 0;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.prd_list.tate .item_stock.ok {
	background: #1010ca;
	border: 1px solid #1010ca;
}

.prd_list.tate .item_stock.ng {
	background: #e00000;
	border: 1px solid #e00000;
}

.prd_list.tate .item_desc {
	height: 96px;
	margin: 5px 0 10px 0;
	font-size: 12px;
	line-height: 16px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
}

.prd_list.tate .item_desc span,
.prd_list.tate .item_desc strong {
	padding: 0 4px 0 0;
}

.prd_list.tate .item_maker {
	width: 100%;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.prd_list.tate .item_maker a {
	color: #606060;
	font-size: 12px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.tate .item_maker a:hover {
	color: #f00000;
}

/*--------------------------------------------------*/
/*  商品詳細                                        */
/*--------------------------------------------------*/
.item_dt_tbl {
	display: table;
	width: 1300px;
	margin: 20px auto 20px auto;
}

.item_dt_tbl .item_dt_l {
	display: table-cell;
	padding: 0 20px 0 0;
	vertical-align: top;
}

.item_dt_tbl .item_dt_r {
	display: table-cell;
	width: 240px;
	vertical-align: top;
}

.item_dt_r .menu_box {
	width: 240px;
}

.item_dt_r .menu_box .order_btn {
	position: relative;
	padding: 20px 10px;
	border: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .order_btn a {
	width: 200px;
}

.item_dt_r .menu_box .order_btn a.go_btn.off {
	color: #808080;
	text-shadow: none;
	background: #f0f0f0;
	border: 1px solid #808080;
}

.item_dt_r .menu_box .order_image {
	display: none;
	position: relative;
	height: 198px;
	overflow: hidden;
	border: 1px solid #c0c0c0;
	border-bottom: none;
}

.item_dt_r .menu_box .order_image img {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}

.item_dt_r .menu_box .dt_btn {
	font-size: 0;
}

.item_dt_r .menu_box .dt_btn li {
	display: inline-block;
	width: 80px;
	height: 80px;
	vertical-align: top;
}

.item_dt_r .menu_box .dt_btn li a {
	display: block;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #f8f8f8;
	border-bottom: 1px solid #c0c0c0;
	border-right: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .dt_btn li:nth-child(3n-2) a {
	border-left: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .dt_btn li.ln1 a {
	height: 14px;
	padding: 33px 0 32px 0;
	line-height: 1;
}

.item_dt_r .menu_box .dt_btn li.ln2 a {
	height: 40px;
	padding: 20px 0 19px 0;
	line-height: 20px;
}

.item_dt_r .menu_box .dt_btn li a:hover {
	color: #fff;
	background: #53c3f1;
	border-color: #53c3f1;
}

.maker_dt .item_desc_tbl,
.item_dt_l .item_desc_tbl {
	display: table;
	width: 100%;
}

.item_desc_tbl .item_desc_l,
.item_desc_tbl .item_desc_r {
	display: table-cell;
	vertical-align: top;
}

.item_desc_tbl .item_desc_l {
	width: 300px;
	padding: 0 20px 0 0;
}

.item_dt .item_desc_l .item_image {
	width: 300px;
	height: 250px;
	overflow: hidden;
}

.item_dt .item_desc_l .item_image img {
	display: block;
	max-width: 300px;
	max-height: 250px;
	object-fit: contain;
	margin: 0 auto;
}

.maker_dt .item_desc_l .item_image {
	display: table;
	width: 298px;
	height: 248px;
	border: 1px solid #c0c0c0;
}

.maker_dt .item_desc_l .item_image .inner {
	display: table-cell;
	width: 298px;
	height: 248px;
	text-align: center;
	vertical-align: middle;
}

.maker_dt .item_desc_l .item_image img {
	max-width: 298px;
	max-height: 248px;
	vertical-align: bottom;
}

.item_desc_l .image_list {
	margin: 15px 0;
	font-size: 0;
}

.item_desc_l .image_list li {
	display: inline-block;
	width: 66px;
	height: 55px;
	margin: 0 9px 8px 0;
	border: 1px solid #c0c0c0;
	overflow: hidden;
	cursor: pointer;
}

.item_desc_l .image_list li:nth-child(4n) {
	margin: 0 0 8px 0;
}

.item_desc_l .image_list li.active,
.item_desc_l .image_list li:hover {
	border-color: #53c3f1;
}

.item_desc_l .image_list li img {
	display: block;
	height: 100%;
	margin: 0 auto;
}

.item_dt .item_title {
	position: relative;
	padding: 0 170px 5px 0;
	border-bottom: 1px solid #dadada;
}

.maker_dt .item_title {
	position: relative;
	padding: 0 0 5px 0;
	border-bottom: 1px solid #dadada;
}

.maker_dt .item_title h1,
.item_dt .item_title h1 {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 24px;
	font-weight: bold;
	line-height: 32px;
	border-bottom: none !important;
}

.maker_dt .item_title .update_date {
	position: static;
	font-size: 14px;
	line-height: 18px;
	text-align: right;
}

.maker_dt .maker_desc,
.item_dt .item_desc {
	position: relative;
	padding: 10px 15px 20px 15px;
	font-size: 16px;
	line-height: 24px;
}

.item_dt .item_desc .item_review {
	/*
	position: absolute;
	top: 5px;
	right: 10px;
*/
	position: relative;
	top: -5px;
	text-align: right;
}

.item_dt .item_desc .item_review a {
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	text-decoration: none;
}

.item_dt .item_desc .item_review a.non {
	text-decoration: underline;
}

.item_dt .item_desc .item_review a:hover {
	color: #f00000;
}

.item_dt .item_desc .ingred {
	padding: 3px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
}

.item_dt .item_desc .effect {
	margin: 10px 0 5px 0;
	font-size: 0;
}

.item_dt .item_desc .effect li {
	display: inline-block;
	margin: 3px 5px 3px 0;
	padding: 6px 6px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	border: 1px solid #b0b0b0;
	border-radius: 2px;
}

.item_dt .item_desc .link {
	font-size: 0;
	cursor: default;
}

.item_dt .item_desc .link li {
	display: inline-block;
	margin: 0 15px 0 0;
}

.item_dt .item_desc .link li a {
	position: relative;
	padding: 0 0 0 8px;
	font-size: 14px;
	line-height: 18px;
}

.item_dt .item_desc .link li a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 2px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.item_dt .item_deal {
	position: relative;
	margin: 10px 15px 20px 15px;
	padding: 40px 15px 10px 15px;
	font-size: 15px;
	font-weight: bold;
	line-height: 23px;
	background: #fffcff;
	border: 3px solid #ea0000;
	border-radius: 4px;
}

.item_dt .item_deal::before {
	position: absolute;
	top: 12px;
	left: 10px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	content: "■お得な豆知識";
}

.item_dt .item_deal .sub {
	display: block;
	padding: 5px 0 0 5px;
	color: #e00000;
	font-size: 14px;
	line-height: 20px;
}

.item_dt h2 {
	position: relative;
	margin: 20px 0 0 0;
	color: #00a4e8;
}

.item_dt h2 #order_arrow {
	display: none;
	position: absolute;
	top: 3px;
	right: 0;
	font-size: 64px;
	color: #00a4e8;
	background: #fff;
	transform: rotate(-30deg);
}

.item_dt .item_text {
	padding: 10px 10px;
	font-size: 16px;
	line-height: 26px;
}

.item_dt .item_text img {
	display: block;
	max-width: 720px;
	border: 1px solid #c0c0c0;
}

.item_list .category_title {
	position: relative;
	margin: 0 0 10px 0;
	padding: 0 160px 0 0;
	border-bottom: 1px solid #dadada;
}

.item_list .category_title h1 {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: none !important;
}

.item_list .review_list,
.item_dt .review_list {
	margin: 10px;
}

.item_list .review_list li,
.item_dt .review_list li {
	padding: 20px 10px;
	border-bottom: 1px solid #dadada;
}

.item_list .review_list li:last-child,
.item_dt .review_list li:last-child {
	margin: 0 0 20px 0;
}

.item_list .review_list .title,
.item_dt .review_list .title {
	padding: 0 0 10px 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 24px;
	vertical-align: bottom;
}

.item_list .review_list .title span,
.item_dt .review_list .title span {
	padding: 0 0 0 5px;
	font-size: 16px;
	font-weight: normal;
}

.item_list .review_list .star,
.item_dt .review_list .star {
	display: inline-block;
	margin: 0 0 8px 0;
	font-size: 0;
}

.item_list .review_list .star i,
.item_dt .review_list .star i {
	margin: 0 3px 0 0;
	color: #ea9a00;
	font-size: 20px;
	line-height: 1;
}

.item_list .review_list time,
.item_dt .review_list time {
	display: inline-block;
	margin: 0 0 0 30px;
	font-size: 16px;
	line-height: 20px;
}

.item_list .review_list .user,
.item_dt .review_list .user {
	display: inline-block;
	margin: 0 0 0 20px;
	font-size: 16px;
	line-height: 20px;
}

.item_list .review_list .user span,
.item_dt .review_list .user span {
	font-size: 13px;
}

.item_list .review_list .comment,
.item_dt .review_list .comment {
	font-size: 16px;
	line-height: 26px;
}

.review_area {
	width: 800px;
	margin: 50px auto 30px auto;
}

.review_tbl {
	width: 798px;
	border: 1px solid #c0c0c0;
}

.review_tbl td {
	background: #f4f4f4;
}

.review_tbl td:first-child {
	width: 450px;
	padding: 30px 30px 0 30px;
}

.review_tbl td:last-child {
	padding: 30px 30px 0 0;
}

.review_tbl tr:last-child td {
	width: calc(100% - 20px);
	padding: 30px;
}

.review_tbl .title {
	font-size: 18px;
	line-height: 1;
}

.review_tbl .input {
	height: 34px;
	margin: 4px 0 0 0;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.review_tbl .input input {
	display: block;
	width: calc(100% - 20px);
	height: calc(100% - 16px);
	padding: 8px 10px;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	border-radius: 4px;
}

.review_tbl .input input[type="number"] {
	width: calc(100% - 10px);
	height: 34px;
	padding: 0 0 0 10px;
	line-height: 34px;
}

.review_tbl select {
	display: block;
	width: 100%;
	height: 34px;
	margin: 4px 0 0 0;
	font-size: 22px;
	line-height: 34px;
	vertical-align: top;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.review_tbl select option {
	color: #000;
	font-size: 18px;
}

.review_tbl textarea {
	display: block;
	width: calc(100% - 22px);
	height: 120px;
	margin: 4px 0 30px 0;
	padding: 8px 10px;
	font-size: 16px;
	line-height: 22px;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.item_dt h3 {
	width: 1000px;
	margin: 20px auto 2px auto;
}

.order_tbl {
	width: 960px;
	margin: 0 0 20px 20px;
}

.order_tbl th {
	padding: 10px 0;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	background: #f0f0f0;
}

.order_tbl td {
	min-height: 48px;
	color: #2a2a2a;
	font-size: 15px;
	line-height: 19px;
	text-align: center;
	vertical-align: middle;
}

.order_tbl th,
.order_tbl td {
	border-top: 1px solid #c0c0c0;
	border-left: 1px solid #c0c0c0;
}

.order_tbl th:last-child,
.order_tbl td:last-child {
	border-right: 1px solid #c0c0c0;
}

.order_tbl tr:last-child td {
	border-bottom: 1px solid #c0c0c0;
}

.order_tbl td:nth-child(1) {
	width: 200px;
}

.order_tbl td:nth-child(2) {
	width: 160px;
	border-right: none;
}

.order_tbl td:nth-child(3) {
	border-left: none;
}

.order_tbl td:nth-child(4) {
	width: 80px;
}

.order_tbl td:nth-child(5) {
	width: 240px;
}

.order_tbl .basic {
	position: relative;
	padding: 24px 40px 8px 0;
	font-size: 16px;
	line-height: 16px;
	text-align: right;
}

.order_tbl .basic del {
	color: #7a7a7a;
}

.order_tbl .basic del span {
	color: #2a2a2a;
}

.order_tbl .basic small {
	padding: 0 0 0 2px;
	font-size: 11px;
}

.order_tbl .basic::after {
	position: absolute;
	top: calc(50% - 4px);
	right: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f061";
	color: #a0a0a0;
	font-size: 14px;
	line-height: 14px;
}

.order_tbl .sale {
	height: 28px;
	padding: 14px 0 6px 20px;
	color: #da0000;
	font-size: 16px;
	font-weight: bold;
	line-height: 28px;
	text-align: left;
	vertical-align: bottom;
}

.order_tbl .sale strong {
	display: inline-block;
	width: 120px;
	padding: 0 4px 0 0;
	font-size: 28px;
	text-align: right;
}

.order_tbl .sale strong small {
	font-size: 14px;
}

.order_tbl .sale .unit {
	position: relative;
	display: inline-block;
	min-width: 80px;
	margin: 0 0 0 6px;
	font-size: 15px;
}

.order_tbl .sale .title {
	position: absolute;
	top: -18px;
	left: 10px;
	font-size: 11px;
	white-space: nowrap;
}

.order_tbl .sale .unit small {
	font-size: 11px;
}

.order_tbl .point {
	position: relative;
	padding: 0 0 10px 0;
}

.order_tbl .point::after {
	position: absolute;
	bottom: 0px;
	right: 8px;
	content: "ポイント";
	font-size: 10px;
	line-height: 1;
}

.order_tbl .btn {
	display: block;
	position: relative;
	width: 160px;
	height: 14px;
	margin: 0 auto;
	padding: 10px 0 10px 20px;
	color: #3a3a3a;
	font-size: 14px;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	text-decoration: none;
	background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
	background: -moz-linear-gradient(top, #fff090, #f0ca5a);
	background: linear-gradient(to bottom, #fff090, #f0ca5a);
	border: 1px solid #8a8a50;
	border-radius: 4px;
}

.order_tbl .btn::before {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	padding: 5px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f07a";
	color: #fff;
	font-size: 20px;
	font-weight: normal;
	line-height: 1;
	background: #505050;
	border-radius: 3px;
}

.order_tbl .btn:hover {
	background: -webkit-linear-gradient(top, #fae080, #eaba4a);
	background: -moz-linear-gradient(top, #fae080, #eaba4a);
	background: linear-gradient(to bottom, #fae080, #eaba4a);
}

.order_tbl td.ng {
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
}

#popup_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 301;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

#popup_box {
	display: none;
	position: absolute;
	top: 50px;
	left: calc(50% - 621px);
	z-index: 302;
	background: #fff;
}

#popup_box .close_btn {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 304;
	width: 118px;
	height: 24px;
	padding: 37px 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #53c3f1;
	cursor: pointer;
	border: 1px solid #53c3f1;
}

#popup_box .close_btn:hover {
	color: #53c3f1;
	background: #ffeae0;
}

#popup_box .main_img {
	position: relative;
	margin: 20px;
	background: #c0c0c0;
	border: 1px solid #c0c0c0;
}

#popup_box .main_img img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	background: #fff;
}

#popup_box .img_list {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 303;
	width: calc(100% - 120px);
	height: 100px;
	margin: 0 120px 0 0;
	font-size: 0;
	height: 100px;
	background: #f0f0f0;
	border-top: 1px solid #c0c0c0;
}

#popup_box .img_list li {
	position: relative;
	display: inline-block;
	width: 120px;
	height: 100px;
	font-size: 0;
	cursor: pointer;
	border-right: 1px solid #c0c0c0;
}

#popup_box .img_list li img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	background: #fff;
}

#popup_box .img_list li.active img {
	opacity: 0.7;
}


/*--------------------------------------------------*/
/*  その他コンテンツ                                */
/*--------------------------------------------------*/
.belt_link {
	width: 100%;
	padding: 20px 0 0 0;
}

.belt_link a {
	display: block;
	width: 100%;
	height: 40px;
	color: transparent;
	text-decoration: none;
	background: url(/img/banner/line_1000_belt.png) repeat-x 0 0;
}

.belt_link a:hover {
	opacity: 0.8;
}

.search_box {
	position: relative;
	width: 600px;
	margin: 20px auto;
	padding: 20px 20px 10px 20px;
	background: #dcf3fc;
	border: 2px solid #53c3f1;
}

.search_box .search {
	position: relative;
	width: 480px;
	height: 38px;
	margin: 10px auto;
	background: #53c3f1;
	border-radius: 5px;
}

.search_box .search input[type="text"] {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: calc(100% - 60px);
	height: 32px;
	padding: 0 10px;
	font-size: 22px;
	line-height: 32px;
	border: none;
	border-radius: 3px 0 0 3px;
}

.search_box .search input[type="image"] {
	display: block;
	position: absolute;
	top: 3px;
	right: 3px;
	width: 60px;
	height: 32px;
	color: #fff;
	font-size: 20px;
	line-height: 32px;
	background: #53c3f1;
	border: none;
	border-radius: 0 3px 3px 0;
}

.search_box .search input[type="image"]:hover {
	background: #3a88a8;
}

.search_box p {
	padding: 10px 20px;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	vertical-align: bottom;
}
.search_box_text {
	padding: 10px 20px 0px !important;
	font-size: 22px !important;
	font-weight: bold !important;
}
.search_box_notice {
	color: #f00;
	font-weight: bold;
}

.search_box p strong {
	color: #f00;
	font-size: 16px;
	font-weight: bold;
}

.contents,
section {
	position: relative;
	margin: 0 0 30px 0;
	padding: 0 15px;
	font-size: 16px;
	line-height: 26px;
}

section.no_padding {
	padding: 0 0 0 0;
}

section > .update_date {
	top: 14px;
}

.contents > h2 {
	margin: 20px 0 10px -10px;
}

section > h2 {
	margin: 0 0 10px -10px;
}

section.no_padding > h2 {
	margin: 0 0 10px 5px;
}

.contents > p,
section > p {
	padding: 8px 0;
}

.contents > p strong,
section > p strong,
strong.bg_pink {
	padding: 0 2px;
	font-size: 17px;
	font-weight: bold;
	background: -webkit-linear-gradient(top, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	background: -moz-linear-gradient(top, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	background: linear-gradient(to bottom, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	/*
	background: -webkit-linear-gradient(top,#fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
	background: -moz-linear-gradient(top,   #fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
	background: linear-gradient(to bottom,  #fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
*/
}

.contents .img_l,
section .img_l {
	float: left;
	max-width: 60%;
	max-height: 400px;
	margin: 10px 10px 10px 0;
}

.contents .img_r,
section .img_r {
	float: right;
	max-width: 60%;
	max-height: 400px;
	margin: 10px 0 10px 10px;
}

.contents .img_c,
section .img_c {
	display: block;
	max-width: 100%;
	max-height: 400px;
	margin: 10px auto;
}

.contents .img_c.border,
section .img_c.border {
	border: 1px solid #c0c0c0;
}

.contents .youtube,
section .youtube {
	display: block;
	margin: 20px auto;
	border: 1px solid #b0b0b0;
}

.agree h2 {
	margin: 0 0 0 -10px;
	border: none;
}

.agree p {
	margin: 0 0 20px 0;
}

.faq > h2 {
	position: relative;
	margin: 20px 0 0 0;
	padding: 10px 10px 10px 50px;
	vertical-align: bottom;
	background: #eaeaea;
	border: none;
}

.faq > h2::before {
	position: absolute;
	top: calc(50% - 12px);
	left: 10px;
	content: "Ｑ";
	color: #ea0000;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

.faq > div {
	position: relative;
	padding: 20px 0 20px 50px;
}

.faq > div::before {
	position: absolute;
	top: 30px;
	left: 10px;
	content: "Ａ";
	color: #1010a0;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

.faq > div p {
	padding: 8px 0;
	font-size: 16px;
	line-height: 26px;
}

.contents_menu {
	width: 640px;
	margin: 20px auto;
	padding: 15px 20px;
	background: #fdfdfd;
	border: 2px solid #a0a0a0;
	border-radius: 4px;
}

.contents_menu li {
	padding: 2px 0;
	font-size: 16px;
	line-height: 20px;
}

.contents_menu li a {
	position: relative;
	text-decoration: none;
}

.faq .contents_menu li a {
	padding: 0 0 0 30px;
	color: #2a2a2a;
	text-decoration: underline;
}

.faq .contents_menu li a:hover {
	color: #f00000;
}

.faq .contents_menu li a::before {
	position: absolute;
	top: calc(50% - 11px);
	left: 0;
	width: 22px;
	height: 14px;
	padding: 4px 0;
	content: "Q";
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #1010a0;
	border-radius: 2px;
}

.contents_menu li a:hover {
	text-decoration: underline;
}

.normal_box,
.pink_box,
.blue_box {
	margin: 20px;
	padding: 10px 15px;
	border-radius: 4px;
}

.normal_box {
	background: #ffffff;
	border: 2px solid #b0b0b0;
}

.pink_box {
	background: #fff7fa;
	border: 2px solid #f0a0c0;
}

.blue_box {
	background: #f7ffff;
	border: 2px solid #90daf0;
}

.normal_box .title,
.pink_box .title,
.blue_box .title {
	padding: 5px 0;
	font-size: 18px;
	font-weight: bold;
}

.normal_box p:not(.title),
.pink_box p:not(.title),
.blue_box p:not(.title) {
	padding: 5px 20px;
	font-size: 16px;
	line-height: 1.6;
}

ul.normal_box,
ul.pink_box,
ul.blue_box,
ol.normal_box,
ol.pink_box,
ol.blue_box {
	padding: 10px 20px 10px 35px;
}

.normal_box ul,
.pink_box ul,
.blue_box ul,
.normal_box ol,
.pink_box ol,
.blue_box ol {
	padding: 0 20px 0 35px;
}

ul.normal_box li,
ul.pink_box li,
ul.blue_box li,
ol.normal_box li,
ol.pink_box li,
ol.blue_box li,
.normal_box ul li,
.pink_box ul li,
.blue_box ul li {
	padding: 2px 0;
}

.list_disc {
	padding: 0 10px 30px 10px;
	font-size: 16px;
	line-height: 24px;
}

.page_disc {
	padding: 0 10px 20px 10px;
	font-size: 16px;
	line-height: 26px;
}

.search_fail {
	position: relative;
	height: 63px;
	margin: 20px 0;
}

.search_fail img {
	position: absolute;
	top: calc(50% - 26px);
	left: 20px;
	width: 72px;
}

.search_fail p {
	position: absolute;
	bottom: 0;
	left: 102px;
	font-size: 18px;
	font-weight: bold;
	line-height: 36px;
	vertical-align: bottom;
}

.search_fail strong {
	font-size: 32px;
}

.info_box {
	position: relative;
	margin: 0 0 20px 0;
	padding: 10px;
	border: 1px solid #b0b0b0;
}

.info_box .title {
	padding: 0 0 5px 0;
	font-size: 15px;
	font-weight: bold;
	line-height: 21px;
}

.info_box p {
	position: relative;
	padding: 2px 15px;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 16px;
}

.info_box p::before {
	position: absolute;
	top: 8px;
	left: 4px;
	width: 4px;
	height: 4px;
	content: "";
	background: #505050;
	border-radius: 100%;
}

.info_box .dsp_cel {
	width: calc(50% - 20px);
	padding: 10px;
	vertical-align: top;
}

.info_box.safety {
	background: url("/img/safety.png") no-repeat right 40px bottom 10px;
}

.select_category {
	margin: 0 0 20px 0;
	font-size: 0;
}

.select_category li {
	display: inline-block;
	width: 144px;
	margin: 0 10px;
}

.select_category li a,
.select_category li a img {
	display: block;
	width: 100%;
}

.select_category li a {
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
	text-decoration: none;
}

.select_category li a:hover {
	color: #f00000;
	text-decoration: underline;
}

.news_list {
	margin: 20px 10px;
}

.news_list > li {
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.news_list > li:last-child {
	border-bottom: 1px solid #b0b0b0;
}

.news_list > li .title {
	position: relative;
	padding: 20px 80px 12px 15px;
	font-size: 20px;
	line-height: 28px;
	cursor: pointer;
	background: #f7f7f7;
}

.news_list > li .title.ac_open {
	font-weight: bold;
	background: #fff0ff;
}

.news_list > li .title time {
	display: block;
	margin: 0 0 8px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}

.news_list > li .title i {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 80px;
	height: 100%;
	font-weight: normal;
	text-align: center;
}

.news_list > li .title i::before {
	position: absolute;
	top: calc(50% - 24px);
	left: 0;
	width: 80px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f055";
	font-size: 36px;
	font-weight: normal;
	line-height: 1;
}

.news_list > li .title i::after {
	position: absolute;
	top: calc(50% + 16px);
	left: 0;
	width: 80px;
	content: "開 く";
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.news_list > li .title.ac_open i::before {
	content: "\f056";
}

.news_list > li .title.ac_open i::after {
	content: "閉じる";
}

.news_list > li .title:hover {
	color: #f00000;
	text-decoration: underline;
}

.news_list > li .title:hover i::after {
	color: #f00000;
	text-decoration: underline;
}

.news_list > li .title:hover i::before {
	color: #f00000;
}

.news_list > li .body {
	padding: 20px 20px 30px 20px;
	font-size: 16px;
	line-height: 26px;
	border-top: 1px solid #e0e0e0;
}

.process {
	font-weight: bold;
	margin: 0 0 20px 0;
}

.process li {
	font-weight: normal;
	padding: 0 0 10px 0;
	font-size: 16px;
	line-height: 22px;
	list-style: decimal;
}

.normal_tbl {
	width: 100%;
	margin: 0 0 20px 0;
}

.normal_tbl th {
	width: 140px;
	padding: 15px;
	font-size: 16px;
	font-weight: bold;
	line-height: 26px;
	text-align: left;
	vertical-align: middle;
	background: #f0f0f0;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.normal_tbl td {
	padding: 15px;
	font-size: 15px;
	line-height: 1.5;
	vertical-align: middle;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.normal_tbl tr:last-child th,
.normal_tbl tr:last-child td {
	border-bottom: 1px solid #b0b0b0;
}

.normal_tbl td p {
	font-size: 15px;
	line-height: 1.5;
	vertical-align: bottom;
}

.normal_tbl td p.calc {
	padding: 4px 0;
	font-size: 16px;
	font-weight: bold;
}

.normal_tbl td p span {
	color: #f00000;
	font-size: 18px;
	font-weight: bold;
}

.normal_tbl th span {
	float: right;
	display: inline-block;
	width: 32px;
	height: 12px;
	padding: 4px 0;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #f00000;
	border: 1px solid #f00000;
}

.normal_tbl input[type="text"],
.normal_tbl select,
.normal_tbl textarea {
	width: 500px;
	padding: 6px 8px;
	font-size: 16px;
	line-height: 1;
	border: 1px solid #b0b0b0;
	border-radius: 2px;
}

.normal_tbl.login input[type="text"] {
	width: 400px;
}

.normal_tbl option,
.normal_tbl select {
	line-height: 22px;
	padding: 6px 8px 8px 8px;
}

.normal_tbl textarea {
	height: 120px;
	line-height: 22px;
}

.normal_tbl.tips {
	width: auto;
	margin: 10px auto;
}

.normal_tbl.login {
	width: 640px;
	margin: 0 auto;
}

.normal_tbl.tips th,
.normal_tbl.contact th,
.normal_tbl.company th {
	width: 180px;
}

.normal_tbl.maker {
	width: calc(100% - 20px);
	margin: 20px 10px 20px 10px;
}

.normal_tbl.maker th {
	width: 60px;
	font-size: 15px;
	text-align: center;
}

.normal_tbl.maker th,
.normal_tbl.maker td {
	padding: 5px 15px;
}

.normal_tbl.tips th {
	padding: 8px 15px;
}

.normal_tbl.tips td {
	padding: 8px 40px 8px 40px;
	font-size: 18px;
	font-weight: bold;
}

.normal_tbl.tips td strong {
	font-size: 24px;
	margin: 0 4px;
}

.company1 {
	height: 286px;
	background: url("/img/images/company_2.png?20211001") no-repeat 0 0;
}

.company2 {
	height: 289px;
	background: url("/img/images/company_3.png?20211001") no-repeat 0 0;
}

.company3 {
	height: 272px;
	background: url("/img/images/company_4.png?20211001") no-repeat 0 0;
}

.company4 {
	height: 332px;
	background: url("/img/images/company_5.png?20211001") no-repeat 0 0;
}

.flow_link {
	margin: 0 0 40px 0;
	font-size: 0;
	text-align: center;
}

.flow_link li {
	display: inline-block;
	width: 148px;
	height: 148px;
	margin: 0 5px;
}

.flow_link li a {
	display: block;
	position: relative;
	width: 120px;
	height: 120px;
	padding: 20px 13px 6px 13px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	border: solid 1px #0080ff;
	border-radius: 4px;
}

.flow_link li a img {
	display: block;
	width: 100%;
}

.flow_link li a::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 0;
	height: 0;
	content: "";
	border-top: 64px solid #0080ff;
	border-right: 64px solid transparent;
}

.flow_link li a .step {
	position: absolute;
	top: 17px;
	left: -3px;
	z-index: 2;
	color: #fff;
	transform: rotate(-45deg);
}

.flow_link li a .title {
	position: absolute;
	top: 18px;
	left: 60px;
	z-index: 2;
	width: 80px;
	font-size: 20px;
	text-align: center;
	color: #0080ff;
}

.flow_link.tracking {
	margin: 20px 0 40px 0;
}

.flow_link.tracking li a .step {
	top: 15px;
	left: 7px;
}

.flow_link.tracking li a .title {
	position: absolute;
	top: 120px;
	left: 0;
	width: 100%;
	height: 20px;
	line-height: 1;
}

.tracking li.jp a {
	border: solid 1px #ff4040;
}

.tracking li.jp a::before {
	border-top: 60px solid #ff4040;
}

.tracking li.jp a .title {
	color: #ff4040;
}

.flow_link li a:hover {
	border: solid 1px #53c3f1;
}

.flow_link li a:hover::before {
	border-top: 60px solid #53c3f1;
}

.flow_link li a:hover .title {
	color: #53c3f1;
}

.flow_list {
	width: 640px;
	margin: 20px auto;
}

.flow_list > .box:not(:last-child) {
	position: relative;
	padding: 0 0 80px 0;
}

.flow_list > .box:not(:last-child)::after {
	position: absolute;
	bottom: 10px;
	left: calc(50% - 30px);
	width: 60px;
	height: 60px;
	content: "";
	background: url("/img/images/flow_5.png") no-repeat 0 0;
}

.flow_list > .box .title {
	padding: 12px;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	background: #0080ff;
}

.flow_list > .box .body {
	padding: 20px;
	border: 2px solid #0080ff;
	border-top: none;
}

.flow_list > .box > .body > a {
	display: block;
	width: 560px;
	max-height: 240px;
	margin: 0 auto;
	overflow: hidden;
}

.flow_list > .box > .body > a > img {
	display: block;
	width: 560px;
}

.flow_list .img_list {
	width: 100%;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}

.flow_list .img_list li {
	display: inline-block;
	width: 180px;
	margin: 0 5px;
}

.flow_list .img_list li a,
.flow_list .img_list li a img {
	display: block;
	width: 100%;
}

.tracking_tbl1 {
	width: 100%;
	margin: 20px auto;
}

.tracking_tbl1 th {
	width: 160px;
	padding: 10px;
	vertical-align: middle;
}

.tracking_tbl1 td {
	padding: 10px;
}

.tracking_tbl1 td a {
	display: block;
	padding: 0 20px;
	max-height: 200px;
	overflow: hidden;
	border: 1px solid #c0c0c0;
}

.tracking_tbl1 th img,
.tracking_tbl1 td a img {
	display: block;
	width: 100%;
}

.tracking_tbl1 td p {
	margin: 10px 0 0 0;
	color: #ea0000;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.tracking_tbl2 {
	margin: 20px auto;
}

.tracking_tbl2 td {
	vertical-align: middle;
}

.tracking_tbl2 td:nth-child(1) {
	width: 300px;
	text-align: right;
}

.tracking_tbl2 td:nth-child(2) {
	width: 60px;
	padding: 0 15px;
	vertical-align: top;
}

.tracking_tbl2 td:nth-child(3) {
	width: 300px;
	font-size: 24px;
	font-weight: bold;
}

.tracking_tbl2 td:nth-child(1) img {
	height: 50px;
}

.tracking_tbl2 td:nth-child(2) img {
	width: 60px;
}

/*--------------------------------------------------*/
/*  コンビニ決済の説明                              */
/*--------------------------------------------------*/
.conveni_warn {
	margin: 0 10px 20px 10px;
	padding: 14px 0;
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #fff0c0;
	border: 1px solid #ffc000;
}

.conveni_select {
	margin: 0 10px;
	font-size: 0;
}

.conveni_select li {
	display: inline-block;
	position: relative;
	width: calc(50% - 22px);
	margin: 0 10px 20px 10px;
	padding: 16px 0 0 0;
	color: #202020;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 24px;
	vertical-align: top;
	cursor: pointer;
	border: 1px solid #808080;
	border-radius: 4px;
}

.conveni_select li:hover {
	color: #f06000;
	font-size: 24px;
	border-color: #f06000;
}

.conveni_select li img {
	display: block;
	width: 80%;
	max-width: 400px;
	margin: 0 auto;
}

/*--------------------------------------------------*/
/*  注文履歴                                        */
/*--------------------------------------------------*/
.order_list > li {
	margin: 20px 20px 40px 20px;
	border: 1px solid #b0b0b0;
}

.order_list.track {
	margin: 20px 20px 0 20px;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.order_list .order_title {
	display: table;
	width: 100%;
	color: #0a0a0a;
	background: #f3f3f3;
	border-bottom: 1px solid #b0b0b0;
}

.order_list.track .order_title {
	border-bottom: none;
}

.order_list .order_title > div {
	display: table-cell;
	padding: 8px 0;
}

.order_list .order_title .order_date {
	width: 180px;
	padding-left: 20px;
}

.order_list .order_title .order_price {
	padding-left: 30px;
}

.order_list .order_title .order_price .use_pt {
	display: block;
	margin-left: -20px;
	font-size: 14px;
}

.order_list .order_title .order_status {
	width: 200px;
	padding-right: 20px;
	font-size: 18px;
	text-align: center;
}

.order_list .order_title .order_status a {
	display: block;
	font-size: 14px;
}

.order_list .order_title > div p.t {
	font-size: 14px;
	font-weight: bold;
	line-height: 24px;
}

.order_list .order_title > div p.b {
	padding: 0 0 0 5px;
	font-size: 18px;
	line-height: 24px;
}

.order_list .order_title > div p strong {
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
}

.order_list .order_pay {
	padding: 20px;
	border-bottom: 1px solid #b0b0b0;
}

.order_list .order_pay p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
}

.order_list .order_pay .payment_btn {
	margin: 10px 0 0 0;
	font-size: 0;
	text-align: center;
	vertical-align: bottom;
}

.order_list .order_pay .payment_btn li {
	display: inline-block;
	width: 160px;
	margin: 0 5px;
	padding: 8px 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.order_list .order_pay .payment_btn li:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

.order_list .order_pay .payment_btn li.active {
	padding: 10px 0;
	font-size: 18px;
	background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
	background: -moz-linear-gradient(top, #fff090, #f0ca5a);
	background: linear-gradient(to bottom, #fff090, #f0ca5a);
	border: 1px solid #8a8a50;
}

.order_list .order_pay .payment_btn li.active:hover {
	background: -webkit-linear-gradient(top, #fae080, #eaba4a);
	background: -moz-linear-gradient(top, #fae080, #eaba4a);
	background: linear-gradient(to bottom, #fae080, #eaba4a);
}

.order_list .payment_info > li {
	display: none;
	padding: 20px;
	background: #ffeafa;
	border: 3px solid #ffa0ba;
	/*
	border-bottom: 1px solid #b0b0b0;
*/
}

.order_list .payment_info > li.active {
	display: block;
}

.order_list .payment_info > li .gray_btn {
	width: 320px;
}

.order_list .payment_info .pay_info {
	margin: 20px 30px 0 30px;
	padding: 10px 10px 10px 30px;
	background: #f7ffff;
	border: 1px solid #80a0f0;
	border-radius: 4px;
}

.order_list .payment_info .pay_info li {
	position: relative;
	margin: 4px 0;
	padding: 0 0 0 0;
	font-size: 14px;
	line-height: 18px;
	list-style: disc;
}

.order_list .bank_tbl {
	width: 290px;
	margin: 0 auto;
}

.order_list .bank_tbl th {
	width: 72px;
	padding: 8px 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.order_list .bank_tbl td {
	position: relative;
	padding: 8px 0 8px 20px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	vertical-align: middle;
}

.order_list .bank_tbl td::before {
	position: absolute;
	top: 9px;
	left: 0;
	content: "：";
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
}

.order_list .select_credit {
	max-width: 600px;
	margin: 0 auto;
	font-size: 0;
	text-align: left;
}

.order_list .select_credit li {
	display: inline-block;
	width: calc(50% - 10px);
	margin: 0 5px 10px 5px;
	font-size: 0;
}

.order_list .select_credit li input,
.order_list .select_credit li img {
	display: block;
	width: 100%;
	cursor: pointer;
}

.order_list .select_credit li:hover {
	opacity: 0.8;
}

.order_list .order_item {
	position: relative;
}

.order_list .order_item .overlay {
	position: absolute;
	top: 10px;
	right: 20px;
	z-index: 1;
	width: 240px;
	height: calc(100% - 20px);
	background-color: rgba(0, 0, 0, 0.8);
}

.order_list .order_item .overlay > div {
	position: absolute;
	top: calc(50% - 44px);
	left: 0;
	z-index: 2;
	width: 100%;
}

.order_list .order_item .overlay > div p {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
}

.order_list .order_item .overlay > div .gray_btn {
	width: 180px;
	margin: 10px auto 0 auto;
	padding: 8px 0;
	font-size: 16px;
	font-weight: normal;
}

.order_list li .item_box {
	padding: 0 20px;
	border-bottom: 1px dotted #b0b0b0;
}

.order_list li .item_box:last-child {
	border-bottom: none;
}

.order_list li .item_box .item_title {
	padding: 20px 0 0 0;
	font-size: 15px;
	line-height: 27px;
}

.order_list li .item_box .item_title strong {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
}

.order_list li .item_box table {
	width: 100%;
}

.order_list li .item_box table .item_img {
	width: 120px;
	padding: 20px 0;
	vertical-align: top;
}

.order_list li .item_box table .item_img a {
	display: block;
	border: 1px solid #b0b0b0;
}

.order_list li .item_box table .item_img a img {
	display: block;
	width: 100%;
}

.order_list li .item_box table .item_info {
	padding: 20px;
	vertical-align: top;
}

.order_list li .item_box table .item_info p {
	position: relative;
	padding: 0 0 8px 42px;
	font-size: 14px;
	line-height: 18px;
}

.order_list li .item_box table .item_info p::before {
	position: absolute;
	top: 0;
	left: 0;
}

.order_list li .item_box table .item_info p.n::before {
	content: "商品：";
}

.order_list li .item_box table .item_info p.p::before {
	content: "金額：";
}

.order_list li .item_box table .item_info p.q::before {
	content: "数量：";
}

.order_list li .item_box table .item_btn {
	width: 200px;
	padding: 20px;
	vertical-align: middle;
}

.order_list li .item_box table .item_btn a {
	margin: 0 auto 10px auto;
	padding: 8px 0;
	font-size: 14px;
	font-weight: normal;
}

.order_list li .item_box table .item_btn a:last-child {
	margin: 0 auto;
}

.track_list > li {
	margin: 0 20px;
	padding: 20px;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
	border-bottom: 1px dotted #b0b0b0;
}

.track_list > li:first-child {
	border-top: 1px solid #b0b0b0;
}

.track_list > li:last-child {
	margin-bottom: 20px;
	border-bottom: 1px solid #b0b0b0;
}

.track_list .track_item {
	display: table;
	width: 100%;
}

.track_list .track_item .track_img {
	display: table-cell;
	width: 120px;
	vertical-align: top;
}

.track_list .track_item .track_img a {
	display: block;
	border: 1px solid #b0b0b0;
}

.track_list .track_item .track_img a img {
	display: block;
	width: 100%;
}

.track_list .track_item .track_name {
	display: table-cell;
	padding: 0 20px;
	vertical-align: top;
}

.track_list .track_item .track_name a {
	font-size: 14px;
	line-height: 18px;
}

.track_list .track_item .track_number {
	display: table-cell;
	width: 220px;
	vertical-align: top;
}

.track_list .track_item .track_number .inner {
	padding: 10px;
	border: 1px solid #dadada;
	border-radius: 2px;
}

.track_list .track_item .track_number .inner p {
	font-size: 14px;
	line-height: 22px;
}

.track_list .track_status {
	margin: 20px 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
}

.track_list .track_graph {
	position: relative;
	margin: 0 20px;
	padding: 60px 0;
}

.track_list .track_graph .graph {
	position: relative;
	height: 24px;
	background: #dadada;
}

.track_list .track_graph .graph::before,
.track_list .track_graph .graph::after {
	position: absolute;
	top: 0;
	z-index: 1;
	content: "";
	border-radius: 50%;
}

.track_list .track_graph .graph::before {
	left: -12px;
	width: 24px;
	height: 24px;
	background: #409a90;
}

.track_list .track_graph .graph::after {
	right: -12px;
	width: 20px;
	height: 20px;
	background: #dadada;
	border: 2px solid #409a90;
}

.track_list .track_graph .graph p {
	position: relative;
	height: 24px;
	background: #409a90;
}

.track_list .track_st1 .track_graph .graph p {
	width: 0;
}

.track_list .track_st2 .track_graph .graph p {
	width: 10%;
	-moz-animation: an_st2 3s ease-out;
	-webkit-animation: an_st2 3s ease-out;
}

.track_list .track_st3 .track_graph .graph p {
	width: 20%;
	-moz-animation: an_st3 3s ease-out;
	-webkit-animation: an_st3 3s ease-out;
}

.track_list .track_st4 .track_graph .graph p {
	width: 40%;
	-moz-animation: an_st4 3s ease-out;
	-webkit-animation: an_st4 3s ease-out;
}

.track_list .track_st5 .track_graph .graph p {
	width: 50%;
	-moz-animation: an_st5 3s ease-out;
	-webkit-animation: an_st5 3s ease-out;
}

.track_list .track_st6 .track_graph .graph p {
	width: 70%;
	-moz-animation: an_st6 3s ease-out;
	-webkit-animation: an_st6 3s ease-out;
}

.track_list .track_st7 .track_graph .graph p {
	width: 80%;
	-moz-animation: an_st7 3s ease-out;
	-webkit-animation: an_st7 3s ease-out;
}

.track_list .track_st8 .track_graph .graph p {
	width: 85%;
	-moz-animation: an_st8 3s ease-out;
	-webkit-animation: an_st8 3s ease-out;
}

.track_list .track_st9 .track_graph .graph p {
	width: 90%;
	-moz-animation: an_st9 3s ease-out;
	-webkit-animation: an_st9 3s ease-out;
}

.track_list .track_st10 .track_graph .graph p {
	width: 95%;
	-moz-animation: an_st10 3s ease-out;
	-webkit-animation: an_st10 3s ease-out;
}

.track_list .track_st11 .track_graph .graph p {
	width: 100%;
	-moz-animation: an_st11 3s ease-out;
	-webkit-animation: an_st11 3s ease-out;
}

@-moz-keyframes an_st2 {
	0% {
		width: 0px;
	}

	100% {
		width: 10%;
	}
}

@-moz-keyframes an_st3 {
	0% {
		width: 0px;
	}

	100% {
		width: 20%;
	}
}

@-moz-keyframes an_st4 {
	0% {
		width: 0px;
	}

	100% {
		width: 40%;
	}
}

@-moz-keyframes an_st5 {
	0% {
		width: 0px;
	}

	100% {
		width: 50%;
	}
}

@-moz-keyframes an_st6 {
	0% {
		width: 0px;
	}

	100% {
		width: 70%;
	}
}

@-moz-keyframes an_st7 {
	0% {
		width: 0px;
	}

	100% {
		width: 80%;
	}
}

@-moz-keyframes an_st8 {
	0% {
		width: 0px;
	}

	100% {
		width: 85%;
	}
}

@-moz-keyframes an_st9 {
	0% {
		width: 0px;
	}

	100% {
		width: 90%;
	}
}

@-moz-keyframes an_st10 {
	0% {
		width: 0px;
	}

	100% {
		width: 95%;
	}
}

@-moz-keyframes an_st11 {
	0% {
		width: 0px;
	}

	100% {
		width: 100%;
	}
}

@-webkit-keyframes an_st2 {
	0% {
		width: 0px;
	}

	100% {
		width: 10%;
	}
}

@-webkit-keyframes an_st3 {
	0% {
		width: 0px;
	}

	100% {
		width: 20%;
	}
}

@-webkit-keyframes an_st4 {
	0% {
		width: 0px;
	}

	100% {
		width: 40%;
	}
}

@-webkit-keyframes an_st5 {
	0% {
		width: 0px;
	}

	100% {
		width: 50%;
	}
}

@-webkit-keyframes an_st6 {
	0% {
		width: 0px;
	}

	100% {
		width: 70%;
	}
}

@-webkit-keyframes an_st7 {
	0% {
		width: 0px;
	}

	100% {
		width: 80%;
	}
}

@-webkit-keyframes an_st8 {
	0% {
		width: 0px;
	}

	100% {
		width: 85%;
	}
}

@-webkit-keyframes an_st9 {
	0% {
		width: 0px;
	}

	100% {
		width: 90%;
	}
}

@-webkit-keyframes an_st10 {
	0% {
		width: 0px;
	}

	100% {
		width: 95%;
	}
}

@-webkit-keyframes an_st11 {
	0% {
		width: 0px;
	}

	100% {
		width: 100%;
	}
}

.track_list .track_graph .graph p::after {
	position: absolute;
	top: 0;
	right: -12px;
	z-index: 2;
	width: 24px;
	height: 24px;
	content: "";
	background: #104a40;
	border-radius: 50%;
}

.track_list .track_graph .start,
.track_list .track_graph .ship,
.track_list .track_graph .end,
.track_list .track_graph .current {
	position: absolute;
	font-size: 13px;
	line-height: 19px;
}

.track_list .track_graph .start {
	top: 90px;
	left: -10px;
	text-align: center;
}

.track_list .track_graph .ship {
	top: 90px;
	left: calc(20% - 30px);
	text-align: center;
}

.track_list .track_graph .ship::before {
	position: absolute;
	top: -6px;
	left: 26px;
	width: 0;
	height: 0;
	content: "";
	border-color: #409a90 transparent transparent transparent;
	border-style: solid solid solid solid;
	border-width: 4px 4px 4px 4px;
}

.track_list .track_graph .end {
	top: 90px;
	right: -10px;
	max-width: 400px;
	text-align: right;
}

.track_list .track_graph .current {
	top: 0;
	padding: 5px;
	color: #104a40;
	background: #eafffa;
	border: 2px solid #104a40;
	border-radius: 4px;
}

.track_list .track_st1 .track_graph .current {
	left: -15px;
}

.track_list .track_st2 .track_graph .current {
	left: calc(10% - 52px);
}

.track_list .track_st3 .track_graph .current {
	left: calc(20% - 75px);
}

.track_list .track_st4 .track_graph .current {
	left: calc(40% - 75px);
}

.track_list .track_st5 .track_graph .current {
	left: calc(50% - 90px);
}

.track_list .track_st6 .track_graph .current {
	right: calc(30% - 67px);
}

.track_list .track_st7 .track_graph .current {
	right: calc(20% - 52px);
}

.track_list .track_st8 .track_graph .current {
	right: calc(15% - 67px);
}

.track_list .track_st9 .track_graph .current {
	right: calc(10% - 52px);
}

.track_list .track_st10 .track_graph .current {
	right: -15px;
}

.track_list .track_st11 .track_graph .current {
	right: -15px;
}

.track_list .track_graph .current::after {
	position: absolute;
	bottom: -16px;
	left: calc(50% - 8px);
	width: 0;
	height: 0;
	content: "";
	border-color: #104a40 transparent transparent transparent;
	border-style: solid solid solid solid;
	border-width: 8px 8px 8px 8px;
}

.track_list .track_st1 .track_graph .current::after {
	left: 4px;
}

.track_list .track_st10 .track_graph .current::after {
	left: 58px;
}

.track_list .track_st11 .track_graph .current::after {
	left: 52px;
}

.track_list .track_graph strong {
	display: block;
	font-size: 15px;
	font-weight: bold;
}


.history_list > li {
	margin: 20px 0 40px 0;
	padding: 0 20px 20px 20px;
}

.history_list > li:not(:last-child) {
	border-bottom: 1px solid #d0d0d0;
}

.history_list li h2 {
	position: relative;
	margin: 0 0 0 -5px;
	color: #e00000;
	border: none;
}

.history_list li h2 a {
	position: absolute;
	right: 0;
	top: calc(50% - 7px);
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.history_tbl1 {
	width: 100%;
	margin: 10px 0 20px 0;
}

.history_tbl1 th {
	padding: 8px 0;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	background: #fafafa;
}

.history_tbl1 td {
	padding: 10px;
	font-size: 15px;
	text-align: center;
	vertical-align: middle;
}

.history_tbl1 th,
.history_tbl1 td {
	border-top: 1px solid #b0b0b0;
	border-left: 1px solid #b0b0b0;
}

.history_tbl1 th:last-child,
.history_tbl1 td:last-child {
	border-right: 1px solid #b0b0b0;
}

.history_tbl1 tr:last-child td {
	border-bottom: 1px solid #b0b0b0;
}

.history_tbl1 .img {
	width: 80px;
}

.history_tbl1 .img a,
.history_tbl1 .img a img {
	display: block;
	width: 100%;
}

.history_tbl1 .name {
	text-align: left;
	border-left: none;
}

.history_tbl1 .name a {
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	text-decoration: none;
}

.history_tbl1 .name a:hover {
	color: #f00000;
}

.history_tbl1 .unit {
	width: 80px;
	text-align: right;
}

.history_tbl1 .num {
	width: 50px;
}

.history_tbl1 .total {
	width: 120px;
	font-size: 16px;
	text-align: right;
}

.history_list .pay_select {
	margin: 0 0 20px 0;
	font-size: 0;
	text-align: center;
}

.history_list .pay_select li {
	display: inline-block;
	position: relative;
	width: 220px;
	margin: 0 10px;
	padding: 12px 0;
	color: #2a2a2a;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
	vertical-align: bottom;
}

.history_list .pay_select li:hover,
.history_list .pay_select li.active {
	color: #fff;
	font-weight: bold;
	background: #404040;
}

.history_list .pay_select li.active {
	width: 300px;
	padding: 18px 0;
	font-size: 18px;
	font-weight: bold;
}

.history_list .pay_select.btn3 li {
	width: 160px;
}

.history_list .pay_select.btn3 li.active {
	width: 240px;
}

.history_list .pay_select.btn4 li {
	width: 140px;
	margin: 0 10px 0 0;
}

.history_list .pay_select.btn4 li:last-child {
	margin: 0 0 0 0;
}

.history_list .pay_select.btn4 li.active {
	width: 180px;
}

.history_list .dis_tbl {
	width: 590px;
	margin: 0 auto;
}

.history_list .dsp_cel.payment {
	width: 290px;
	vertical-align: middle;
}

.history_list .dsp_cel.price {
	width: 280px;
	padding: 0 0 0 20px;
	vertical-align: top;
}

.history_list .bank_tbl {
	width: 290px;
	margin: 0 auto;
}

.history_list .bank_tbl th {
	width: 72px;
	padding: 8px 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.history_list .bank_tbl td {
	position: relative;
	padding: 8px 0 8px 20px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	vertical-align: middle;
border:none !important;
}

.history_list .bank_tbl td::before {
	position: absolute;
	top: 9px;
	left: 0;
	content: "：";
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
}

.history_list .select_credit {
	font-size: 0;
	text-align: left;
}

.history_list .select_credit li {
	display: block;
	width: 270px;
	margin: 0 0 5px 0;
}

.history_list .select_credit li:last-child {
	margin: 0 0 0 0;
}

.history_list .select_credit li input,
.history_list .select_credit li img {
	display: block;
	width: 100%;
}

.history_list .select_credit li:hover {
	opacity: 0.8;
}

.history_list .price_tbl {
	width: 100%;
}

.history_list .price_tbl th {
	width: 100px;
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1;
	background: #f0f0f0;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.history_list .price_tbl td {
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1;
	text-align: right;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child th {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child td {
	color: #e00000;
	font-weight: bold;
	border-bottom: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child td span {
	font-size: 22px;
}

.history_list .pay_info {
	width: 560px;
	margin: 20px auto 40px auto;
	padding: 10px 10px 10px 30px;
	background: #f7ffff;
	border: 1px solid #80a0f0;
	border-radius: 4px;
}

.history_list .pay_info li {
	position: relative;
	margin: 4px 0;
	padding: 0 0 0 0;
	font-size: 14px;
	line-height: 18px;
	list-style: disc;
}

.history_list .pay_payeasy,
.history_list .pay_conveni,
.history_list .pay_credit {
	display: none;
}

.history_list .gray_btn {
	width: 250px;
	padding: 12px 0;
	font-weight: bold;
}
/* 2022/02/09 */
.history_list li .order_label{
	display: flex;
	justify-content: space-between;
    width: 100%;
}
.history_list li .order_label .order_label_right{
    width: 400px;
    text-align: right;
}
.history_list li .reorder{
    width: 220px;
    display: inline-block;
    vertical-align: top;
    margin: 0px 0px 0px 5px;
}
.history_list li .reorder a.orange_btn{
	font-size: 16px;
	padding: 13px 0;
}
.history_list li .can-btn{
	display: inline-block;
    vertical-align: top;
    border: 1px solid #a9a9a9;
    background: #eee;
    color: #333;
    border-radius: 4px;
    padding: 7px;
    width: 114px;
    font-size: 13px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
	margin: 0px 0px 0px 5px;
}

.receipt {
	width: 600px;
	margin: 0 auto 20px auto;
	padding: 20px;
	background: #fff;
	border: solid 1px #505050;
	border-radius: 4px;
}

.receipt table {
	width: 600px;
	margin: 0 auto;
}

.receipt table td:last-child {
	width: 220px;
}

.receipt table td div {
	padding: 4px 0;
	font-size: 18px;
	line-height: 1;
}

.receipt table input[type="text"] {
	width: 260px;
	margin: 0 10px;
	padding: 4px 6px;
	font-size: 16px;
	border: 1px solid #b0b0b0;
}

.receipt table input[type="submit"] {
	width: 180px;
}

/*--------------------------------------------------*/
/*  登録情報の変更                                  */
/*--------------------------------------------------*/
.reg_tbl {
	width: 100%;
	margin: 10px 0 0 0;
}

.reg_tbl tr {
	background: #ffeaff;
}

.reg_tbl.check tr,
.reg_tbl tr.ok {
	background: #fff;
}

.reg_tbl th {
	width: 180px;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
	vertical-align: middle;
	border: 1px solid #b0b0b0;
	border-top: 1px solid #b0b0b0;
	border-left: 1px solid #b0b0b0;
}

.reg_tbl.check th {
	width: 120px;
	padding-right: 15px;
}

.reg_tbl td {
	padding: 0 0 0 15px;
	vertical-align: middle;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.reg_tbl th,
.reg_tbl td {
	border-bottom: 1px solid #b0b0b0;
}

.reg_tbl th span {
	display: inline-block;
	width: 30px;
	height: 12px;
	margin: 0 10px 0 15px;
	padding: 4px 0;
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	background: #e00000;
}

.reg_tbl tr.ok th span {
	background: #009a3a;
}

.reg_tbl td .inner {
	position: relative;
	padding: 10px 0;
}

.reg_tbl td .mailMB,
.reg_tbl td .mailPC {
	position: relative;
}

.reg_tbl td .inputHelp {
	position: absolute;
	top: -36px;
	z-index: 2;
	padding: 8px 10px;
	color: #fff;
	font-size: 14px;
	line-height: 20px;
	cursor: pointer;
	background: #000;
	border: 2px solid #dadada;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-webkit-box-shadow: 3px 4px 5px #606060;
	-moz-box-shadow: 3px 4px 5px #606060;
	box-shadow: 3px 4px 5px #606060;
}

.reg_tbl td .inputHelp:before {
	display: block;
	position: absolute;
	left: 15px;
	bottom: -8px;
	content: "";
	width: 0;
	border: 8px solid transparent;
	border-top-color: #dadada;
	border-bottom-width: 0;
}

.reg_tbl td .inputHelp:after {
	display: block;
	position: absolute;
	left: 17px;
	bottom: -6px;
	content: "";
	width: 0;
	border: 6px solid transparent;
	border-top-color: #000;
	border-bottom-width: 0;
}

#help_family_name {
	left: -6px;
}

#help_first_name {
	left: 176px;
}

#help_family_name_kana {
	left: -6px;
}

#help_first_name_kana {
	left: 176px;
}

#help_post_code {
	left: -6px;
}

#help_address1 {
	left: -6px;
}

#help_address2 {
	left: -6px;
	top: -1px !important;
}

#help_address3 {
	left: 176px;
	top: 40px !important;
}

#help_mail_address1 {
	left: -6px;
}

#help_mail_address {
	left: -6px;
}

#help_tel_no {
	left: -6px;
}

#help_passwd {
	left: -6px;
}

.reg_tbl td .errorMessage {
	position: absolute;
	top: 50%;
	left: 370px;
	z-index: 1;
	width: 280px;
	padding: 8px 10px;
	color: #fff;
	font-size: 14px;
	line-height: 20px;
	white-space: nowrap;
	cursor: pointer;
	background: #d00000;
	border: 2px solid #dadada;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-webkit-box-shadow: 3px 4px 5px #606060;
	-moz-box-shadow: 3px 4px 5px #606060;
	box-shadow: 3px 4px 5px #606060;
}

.reg_tbl td .errorMessage:before {
	display: block;
	position: absolute;
	top: 8px;
	left: -8px;
	content: "";
	width: 0;
	border: 8px solid transparent;
	border-right-color: #dadada;
	border-left-width: 0;
}

.reg_tbl td .errorMessage:after {
	display: block;
	position: absolute;
	top: 10px;
	left: -6px;
	content: "";
	width: 0;
	border: 6px solid transparent;
	border-right-color: #d00000;
	border-left-width: 0;
}

#error_kanji {
	margin-top: -22px;
}

#error_kana {
	margin-top: -22px;
}

#error_sex {
	margin-top: -22px;
}

#error_zip {
	margin-top: -32px;
}

#error_address1 {
	margin-top: -61px;
}

#error_address2 {
	margin-top: -18px;
}

#error_address3 {
	margin-top: 20px;
}

#error_mail1 {
	margin-top: -36px;
}

#error_mail2 {
	margin-top: -36px;
}

#error_tel {
	margin-top: -22px;
}

#error_password {
	margin-top: -22px;
}

#error_birth {
	margin-top: -22px;
}

#error_payment {
	margin-top: -22px;
}

/*
.reg_tbl td .changeForm {
	color: #1010ca;
	font-size: 16px;
	font-weight: normal;
	text-decoration: underline;
	cursor: pointer;
}
*/
.reg_tbl td input[type="text"] {
	display: inline-block;
	height: 26px;
	padding: 0 8px;
	font-size: 16px;
	line-height: 26px;
	background: #f0fffa;
	border: 1px solid #00aa4a;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.reg_tbl td input[type="text"].ok {
	background: #fff;
	border: 1px solid #b0b0b0;
}

.reg_tbl td input[type="text"].ng {
	background: #ffdaea;
	border: 1px solid #e04040;
}

.reg_tbl td input[type="text"].no {
	background: #eaeaea;
	border: 1px solid #b0b0b0;
}

.reg_tbl td select {
	display: inline-block;
	height: 26px;
	padding: 0 6px;
	font-size: 16px;
	line-height: 26px;
	background: #f0fffa;
	border: 1px solid #00aa4a;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.reg_tbl td select.ok {
	background: #fff;
	border: 1px solid #b0b0b0;
}

.reg_tbl td select.ng {
	background: #ffdaea;
	border: 1px solid #e04040;
}

.reg_tbl td label {
	line-height: 30px;
}

.reg_tbl td .notice {
	color: #f00000;
	font-size: 13px;
	font-weight: bold;
	line-height: 17px;
}

.reg_tbl td .addressList li {
	display: table;
	width: 100%;
	border-top: 1px solid #b0b0b0;
}

.reg_tbl td .addressList li:first-child {
	border-top: none;
}

.reg_tbl td .addressList li .td1 {
	display: table-cell;
	width: 40px;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #b0b0b0;
}

.reg_tbl td .addressList li .td1 label {
	position: relative;
	display: block;
	padding: 10px 0;
}

.reg_tbl td .addressList li .td1 label.selected span {
	width: 36px;
	position: absolute;
	top: 50%;
	left: 2px;
	margin-top: 8px;
	color: #f00;
	font-size: 10px;
	font-weight: bold;
	line-height: 12px;
}

.reg_tbl td .addressList li .td2 {
	display: table-cell;
	padding: 18px 8px;
	vertical-align: middle;
}

.reg_tbl td .addressList li .td2 p {
	font-size: 15px;
	line-height: 23px;
}

.reg_tbl td .addressList li .td3 {
	display: table-cell;
	width: 36px;
	padding: 5px 0;
	text-align: center;
	vertical-align: middle;
}

.reg_tbl td .addressList li .td3 p,
.reg_tbl td .addressList li .td3 a,
.reg_tbl #addAddress {
	color: #1010ca;
	font-size: 12px;
	line-height: 30px;
	text-decoration: underline;
	cursor: pointer;
}

.reg_tbl #addAddress {
	display: inline;
}

.reg_tbl.check td .addressList li {
	display: block;
	padding: 10px 15px;
}

.reg_tbl.check td .addressList li p {
	font-size: 15px;
	line-height: 23px;
}

#inputConfirm {
	width: 240px;
	margin: 30px auto;
	padding: 14px 0;
	font-size: 20px;
}

.reg_tbl td .w36 {
	width: 36px;
}

.reg_tbl td .w48 {
	width: 48px;
}

.reg_tbl td .w64 {
	width: 64px;
}

.reg_tbl td .w80 {
	width: 80px;
}

.reg_tbl td .w96 {
	width: 96px;
}

.reg_tbl td .w120 {
	width: 120px;
}

.reg_tbl td .w150 {
	width: 150px;
}

.reg_tbl td .w180 {
	width: 180px;
}

.reg_tbl td .w310 {
	width: 310px;
}

.gobackBtn {
	position: relative;
	height: 52px;
	margin: 30px 0;
}

.gobackBtn .red_btn {
	position: absolute;
	top: 0;
	left: 50%;
	width: 240px;
	margin: 0;
	padding: 15px 0;
	font-size: 20px;
}

.gobackBtn .gray_btn {
	position: absolute;
	top: 7px;
	right: calc(50% + 50px);
	width: 140px;
	margin: 0;
	padding: 10px 0;
	color: #000;
	font-size: 16px;
}

/*--------------------------------------------------*/
/*  LINE注文                                        */
/*--------------------------------------------------*/
.line_flow h2 {
	margin: 40px 0 30px 0;
	padding: 14px 0;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
	background: #00b000;
}

.step_flow {
	position: relative;
	margin-top: 20px;
	padding: 10px 0;
	font-size: 0;
	text-align: center;
}

.step_flow li {
	display: inline-block;
	position: relative;
	width: 154px;
}

.step_flow li:not(:last-child)::after {
	position: absolute;
	top: 50%;
	right: -17px;
	width: 0;
	height: 0;
	margin-top: -15px;
	content: "";
	border-color: transparent transparent transparent #b0b0b0;
	border-style: solid solid solid solid;
	border-width: 15px 10px 15px 10px;
}

.step_flow li a {
	display: block;
	position: relative;
	width: 120px;
	margin: 0 15px;
	padding: 4px 0 0 0;
	color: #000;
	font-size: 20px;
	line-height: 32px;
	text-align: center;
	text-decoration: none;
	border: 2px solid #a0a0a0;
	border-radius: 2px;
}

.tel_flow .step_flow li a:hover {
	background: #ffeaaa;
	border-color: #f06000;
}

.line_flow .step_flow li a:hover {
	background: #eaffea;
	border-color: #01b302;
}

.step_flow li a span {
	display: block;
	padding-bottom: 4px;
	font-size: 16px;
	line-height: 20px;
	text-align: center;
}

.step_box {
	position: relative;
	margin: 30px 0 50px 0;
}

.step_box .mark {
	position: absolute;
	top: -27px;
	left: 30px;
	width: 84px;
	height: 56px;
	padding: 14px 0;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border: 4px solid #fff;
	border-radius: 100%;
}

.tel_flow .step_box .mark {
	background: #f06000;
}

.line_flow .step_box .mark {
	background: #01b302;
}

.step_box .mark span {
	display: block;
	height: 16px;
	padding-bottom: 8px;
	font-size: 16px;
	line-height: 1;
}

.box_title {
	height: 18px;
	padding: 10px 0;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border-radius: 4px 4px 0 0;
}

.tel_flow .box_title {
	background: #f06000;
}

.line_flow .box_title {
	background: #01b302;
}

.box_body {
	padding: 30px 20px;
	color: #000;
	font-size: 16px;
	line-height: 1.6;
	border-top: none;
	border-radius: 0 0 4px 4px;
}

.tel_flow .box_body {
	border: 2px solid #f06000;
}

.line_flow .box_body {
	border: 2px solid #01b302;
}

.box_inner {
	display: table;
	width: 100%;
	margin: 10px 0;
}

.box_txt {
	display: table-cell;
	padding: 0 20px 0 0;
	vertical-align: top;
}

.box_img {
	display: table-cell;
	width: 300px;
	vertical-align: top;
}

.box_img img {
	display: block;
	width: 288px;
	padding: 5px;
	background: #fafafa;
	border: 1px solid #c0c0c0;
}

.box_body p {
	padding-bottom: 10px;
}

.border .box_img,
.border .box_txt {
	padding-top: 10px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #01b302;
}

.line_box {
	position: relative;
	margin: 30px 0 50px 0;
}

.line_inner {
	display: table;
	width: 100%;
}

.line_left {
	display: table-cell;
	padding: 0 20px 60px 0;
	vertical-align: top;
	font-size: 16px;
	line-height: 1.6;
}

.line_right {
	display: table-cell;
	width: 380px;
	padding: 20px 0;
	font-size: 16px;
	line-height: 1.6;
	vertical-align: middle;
	background: #d8dce4;
	border-left: 1px solid #464e66;
	border-right: 1px solid #464e66;
}

#step_line_1 .line_right {
	padding: 0 0 0 0;
}

#step_line_4 .line_right {
	border-bottom: 1px solid #464e66;
}

.line_right img {
	display: block;
	width: 380px;
}

.line_title {
	height: 84px;
	margin: 0 0 20px 0;
}

.line_title .mark {
	display: inline-block;
	width: 84px;
	height: 56px;
	padding: 14px 0;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #01b302;
	border: 4px solid #fff;
	border-radius: 100%;
}

.line_title .mark span {
	display: block;
	height: 16px;
	padding-bottom: 8px;
	font-size: 16px;
	line-height: 1;
}

.line_title .text {
	display: inline-block;
	height: 24px;
	padding: 50px 0 10px 5px;
	color: #000;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

/*--------------------------------------------------*/
/*  SPモーダルウィンドウ                            */
/*--------------------------------------------------*/
.scroll_lock4,
.scroll_lock3,
.scroll_lock2,
.scroll_lock {
	overflow: hidden;
}

#sp_modal_overlay4,
#sp_modal_overlay3,
#sp_modal_overlay2,
#sp_modal_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 901;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.7);
}

.scroll_wrap4,
.scroll_wrap3,
.scroll_wrap2,
.scroll_wrap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 902;
	width: 100%;
	height: 100%;
	overflow: auto;
}

.sp_modal_box4,
.sp_modal_box3,
.sp_modal_box2,
.sp_modal_box {
	display: none;
	position: relative;
	z-index: 903;
	width: 80%;
	max-width: 960px;
	margin: 40px auto;
	padding: 0 0 86px 0;
	background: #fff;
	border: 4px solid #53c3f1;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.sp_modal_box::before {
	position: absolute;
	left: 0;
	top: 180px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box::after {
	position: absolute;
	left: 0;
	bottom: 126px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box2::before {
	position: absolute;
	left: 0;
	top: 96px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box2::after {
	position: absolute;
	left: 0;
	bottom: 86px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box4::before,
.sp_modal_box3::before {
	position: absolute;
	left: 0;
	top: 96px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box4::after,
.sp_modal_box3::after {
	position: absolute;
	left: 0;
	bottom: 86px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box4 .close_btn,
.sp_modal_box3 .close_btn,
.sp_modal_box2 .close_btn,
.sp_modal_box .close_btn {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 905;
	width: 48px;
	height: 36px;
	padding: 6px 0;
	color: #fff;
	font-size: 36px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	background: #53c3f1;
}

.sp_modal_box4 .close_btn:hover,
.sp_modal_box3 .close_btn:hover,
.sp_modal_box2 .close_btn:hover,
.sp_modal_box .close_btn:hover {
	opacity: 0.8;
}

.sp_modal_box3 .menu,
.sp_modal_box2 .menu,
.sp_modal_box .menu {
	height: 64px;
	margin: 0 auto 20px auto;
	font-size: 0;
	text-align: center;
}

.sp_modal_box3 .menu li,
.sp_modal_box2 .menu li,
.sp_modal_box .menu li {
	display: inline-block;
	width: 140px;
	height: 48px;
	margin: 0 10px;
	padding: 7px 0;
	color: #202020;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.sp_modal_box3 .menu,
.sp_modal_box2 .menu {
	height: 64px;
	margin: 20px auto 30px auto;
}

.sp_modal_box3 .menu li,
.sp_modal_box2 .menu li {
	width: 200px;
}

.sp_modal_box4 .title,
.sp_modal_box3 .title,
.sp_modal_box2 .title,
.sp_modal_box .title {
	position: relative;
	padding: 30px;
	font-size: 28px;
	font-weight: bold;
	line-height: 36px;
	text-align: center;
}

.sp_modal_box4 .body,
.sp_modal_box3 .body,
.sp_modal_box2 .body,
.sp_modal_box .body {
	padding: 30px 50px;
	overflow-y: scroll;
}

.sp_modal_box4 .body p,
.sp_modal_box3 .body p,
.sp_modal_box2 .body p,
.sp_modal_box .body p {
	padding: 4px 0;
	font-size: 20px;
	line-height: 32px;
}

.sp_modal_box4 .body p.mini,
.sp_modal_box3 .body p.mini,
.sp_modal_box2 .body p.mini,
.sp_modal_box .body p.mini {
	font-size: 18px;
	line-height: 26px;
}

.sp_modal_box4 .body p strong,
.sp_modal_box3 .body p strong,
.sp_modal_box2 .body p strong,
.sp_modal_box .body p strong {
	padding: 0 3px;
	font-size: 22px;
}

.sp_modal_box3 .body p .icon_img,
.sp_modal_box2 .body p .icon_img,
.sp_modal_box .body p .icon_img {
	display: inline;
	width: 24px;
	margin: 0 5px;
	padding: 0;
}

.sp_modal_box3 .body p .icon_img.border,
.sp_modal_box2 .body p .icon_img.border,
.sp_modal_box .body p .icon_img.border {
	padding: 1px;
	border: 1px solid #dadada;
}

.sp_modal_box3 .body p .block_img,
.sp_modal_box2 .body p .block_img,
.sp_modal_box .body p .block_img {
	display: block;
	width: 80%;
	max-width: 600px;
	margin: 10px auto;
	padding: 1px;
	border: 1px solid #dadada;
}

.sp_modal_box3 .body p .block_img img,
.sp_modal_box2 .body p .block_img img,
.sp_modal_box .body p .block_img img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.sp_modal_box3 .body .num,
.sp_modal_box2 .body .num,
.sp_modal_box .body .num {
	display: inline-block;
	width: 36px;
	height: 24px;
	margin: 0 10px 0 0;
	padding: 6px 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 24px;
	text-align: center;
	border-radius: 2px;
	background: #f04060;
}

.sp_modal_box3 .body .t,
.sp_modal_box2 .body .t,
.sp_modal_box .body .t {
	position: relative;
	padding: 0 0 0 46px;
}

.sp_modal_box3 .body .t .num,
.sp_modal_box2 .body .t .num,
.sp_modal_box .body .t .num {
	position: absolute;
	top: 0;
	left: 0;
}

.sp_modal_box4 p.gray_btn,
.sp_modal_box3 p.gray_btn,
.sp_modal_box2 p.gray_btn,
.sp_modal_box p.gray_btn {
	width: 240px;
	margin: 70px auto 40px auto;
	padding: 11px 0;
}

.sp_modal_box4 .red_btn,
.sp_modal_box3 .red_btn,
.sp_modal_box2 .red_btn,
.sp_modal_box .red_btn {
	width: 540px;
	padding: 18px 0;
	font-size: 28px;
	line-height: 1;
}

.sp_modal_box4 .ok_btn,
.sp_modal_box3 .ok_btn,
.sp_modal_box2 .ok_btn,
.sp_modal_box .ok_btn {
	position: absolute;
	left: calc(50% - 271px);
	bottom: 20px;
	width: 540px;
	padding: 18px 0;
	font-size: 28px;
	line-height: 1;
}

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

.sp_modal_box3 .conveni_tbl,
.sp_modal_box2 .conveni_tbl {
	width: 100%;
}

.sp_modal_box3 .conveni_tbl th,
.sp_modal_box2 .conveni_tbl th {
	padding: 0 20px 6px 0;
	font-size: 22px;
	font-weight: normal;
	line-height: 28px;
	text-align: right;
	vertical-align: bottom;
}

.sp_modal_box3 .conveni_tbl td,
.sp_modal_box2 .conveni_tbl td {
	padding: 6px 0;
	font-size: 24px;
	line-height: 28px;
	text-align: right;
	vertical-align: bottom;
}

/*--------------------------------------------------*/
/*  モーダルウィンドウ                              */
/*--------------------------------------------------*/
#modal_overlay {
	display: none;
	z-index: 200;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

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

.modal_box {
	display: none;
	position: absolute;
	z-index: 202;
	width: 720px;
	text-align: left;
	background: #fff;
	border: 4px solid #53c3f1;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.modal_box.scroll_box {
	position: relative;
	width: 80%;
	max-width: 960px;
	margin: 40px auto;
	padding: 0 0 20px 0;
}

.modal_box.scroll_box::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
}

.modal_box .close_btn {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 48px;
	height: 36px;
	padding: 6px 0;
	color: #fff;
	font-size: 36px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	background: #53c3f1;
}

.modal_box .close_btn:hover {
	opacity: 0.8;
}

.modal_box .title {
	padding: 30px 60px 20px 30px;
	font-size: 28px;
	font-weight: bold;
	line-height: 36px;
	text-align: center;
}

.modal_box .body {
	padding: 20px 30px;
}

.modal_box.scroll_box .body {
	overflow-y: scroll;
}

.modal_box .body p {
	padding: 4px 0;
	font-size: 18px;
	line-height: 26px;
}

.modal_box .body form {
	width: 540px;
	margin: 0 auto 20px auto;
}

.modal_box .body form p {
	margin: 0;
	padding: 0;
	line-height: 1;
}

.modal_box .body form .input {
	margin: 0 0 15px 0;
}

.modal_box .red_btn {
	width: 240px;
	margin: 30px auto 10px auto;
	padding: 14px 0;
}

.modal_box .gray_btn {
	width: 240px;
	margin: 30px auto 10px auto;
	padding: 13px 0;
}

.modal_box .payment .red_btn {
	width: 320px;
	margin: 30px auto 20px auto;
	padding: 18px 0;
	font-size: 22px;
}

.modal_box .payment .gray_btn {
	width: 240px;
	margin: 0 auto 20px auto;
	padding: 16px 0;
}

.modal_box .btn_area {
	position: relative;
	margin: 20px 0 0 0;
	font-size: 0;
	text-align: center;
}

.modal_box .btn_area a,
.modal_box .btn_area p {
	display: inline-block;
	margin: 10px 20px;
}

.modal_box .btn_area .gray_btn {
	width: 160px;
}

.modal_box .btnArea {
	position: relative;
	height: 46px;
	margin: 30px 0 10px 0;
}

.modal_box .btnArea .red_btn {
	position: absolute;
	top: 0;
	right: 100px;
	margin: 0;
	padding: 13px 0;
}

.modal_box .btnArea .gray_btn {
	position: absolute;
	top: 6px;
	left: 80px;
	width: 90px;
	margin: 0;
	padding: 10px 0;
	color: #000;
	font-size: 14px;
}

.modal_box .reg_tbl {
	width: 540px;
	margin: 0 auto;
}

.modal_box .reg_tbl th {
	width: 104px;
	text-align: center;
}

.modal_box .reg_tbl th span {
	display: block;
	margin: 5px auto 0 auto;
}

.modal_box .reg_tbl td {
	padding: 15px 0 15px 15px;
}

.modal_box .inputHelp {
	z-index: 202;
}

.modal_box #help_address1,
.modal_box #help_address0_1,
.modal_box #help_address1_1,
.modal_box #help_address2_1,
.modal_box #help_address3_1 {
	top: -56px !important;
}

.modal_box #help_address2,
.modal_box #help_address0_2,
.modal_box #help_address1_2,
.modal_box #help_address2_2,
.modal_box #help_address3_2 {
	top: -18px !important;
}

.modal_box #help_address3,
.modal_box #help_address0_3,
.modal_box #help_address1_3,
.modal_box #help_address2_3,
.modal_box #help_address3_3 {
	top: 20px !important;
	left: 176px !important;
}

.modal_box .reg_tbl .errorMessage {
	left: 360px;
	z-index: 201;
}

.modal_box #error_zip,
.modal_box #error_zip0,
.modal_box #error_zip1,
.modal_box #error_zip2,
.modal_box #error_zip3 {
	margin-top: -32px;
}

.modal_box #error_address1,
.modal_box #error_address0_1,
.modal_box #error_address1_1,
.modal_box #error_address2_1,
.modal_box #error_address3_1 {
	margin-top: -61px;
}

.modal_box #error_address2,
.modal_box #error_address0_2,
.modal_box #error_address1_2,
.modal_box #error_address2_2,
.modal_box #error_address3_2 {
	margin-top: -18px;
}

.modal_box #error_address3,
.modal_box #error_address0_3,
.modal_box #error_address1_3,
.modal_box #error_address2_3,
.modal_box #error_address3_3 {
	margin-top: 20px;
}




.modal_box .body.mainte {
	height: 430px;
	padding: 20px 30px 20px 360px;
	background: url(/img/mainte.png) no-repeat left 20px bottom 0;
}

.modal_box .body.mainte p {
	padding: 8px 0;
	font-size: 20px;
	line-height: 32px;
}

.modal_box .body.mainte p strong {
	font-size: 24px;
}

/*---------------
	追記
---------------*/
.step_area {
	width: 790px;
	clear: both;
}

.step_area .step_left {
	float: left;
	width: 380px;
}

.step_area .step_left img {
	width: 100%;
	border: 2px solid #53c3f1;
}

.step_area .step_right {
	float: right;
	width: 370px;
	padding-left: 30px;
}

.step_area .step_right span {
	font-weight: bold;
	font-size: 18px;
}

.step_area .step_right .title_step1:before {
	content: url(/img/images/maru1.png);
	margin: 0 10px 5px 0;
	position: relative;
	top: 5px;
}

.step_area .step_right .title_step2:before {
	content: url(/img/images/maru2.png);
	margin: 0 10px 5px 0;
	position: relative;
	top: 5px;
}

.step_area .step_right .title_step3:before {
	content: url(/img/images/maru3.png);
	margin: 0 10px 5px 0;
	position: relative;
	top: 5px;
}

.step_area .step_right .title_step4:before {
	content: url(/img/images/maru4.png);
	margin: 0 10px 5px 0;
	position: relative;
	top: 5px;
}

.step_area .step_right .title_step5:before {
	content: url(/img/images/maru5.png);
	margin: 0 10px 5px 0;
	position: relative;
	top: 5px;
}

.step_area .step_right p {
	margin-bottom: 20px;
}

/*qanda*/

.qanda {
	margin: 20px 20px;
	font-size: 14px;
	/*全体のフォントサイズ*/
}
.qanda dt {
	background: #444;
	/* 「Q」タイトルの背景色 */
	color: #fff;
	/* 「Q」タイトルの文字色 */
	padding: 8px;
	border-radius: 2px;
}

.qanda dt:before {
	content: "Q.";
	font-weight: bold;
	margin-right: 8px;
}

.qanda dd {
	margin: 24px 16px 40px 32px;
	line-height: 140%;
	text-indent: -24px;
}

.qanda dd:before {
	content: "A.";
	font-weight: bold;
	margin-right: 8px;
}

.right_box2 {
	margin: 0 0 30px 0;
	padding: 15px 10px;
	background: #fff;
	border-radius: 2px;
}

.right_box2 .sns_btn {
	width: 100%;
}

.right_box2 .title {
	margin: 0 0 20px 0;
	font-size: 14px;
	text-align: center;
}

.right_box2 p {
	font-size: 12px;
	line-height: 18px;
}

/*---------------
 youtube埋め込み
---------------*/
.movie-wrap {
	text-align: center;
}

.movie-wrap iframe {
	top: 0;
	left: 0;
	width: 560px;
	height: 315px;
	border: 1px solid #b0b0b0;
}

/*---------------
 商品詳細/商品の特長
---------------*/
.box_merit{
    margin: 40px 0px;
    border: 3px solid #f18052;
    border-radius: 10px;
    padding: 22px 18px 15px;
    position: relative;
    background: #fff;
	line-height: 0;
}
.box_merit .box-title {
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    padding: 10px 20px;
    color: #f18052;
    background: #fff;
    display: block;
    position: absolute;
    left: 10px;
    top: -30px;
}
.box_merit .box-title::before{
    content: "\f058";
    font-family: FontAwesome;
    font-size: 30px;
    font-weight: normal;
    margin-right: 10px;
}
.box_merit p {
    margin: 7px 0;
    padding: 0px 15px 2px;
    line-height: 2.4em;
    font-size: 16px;
    background-image: linear-gradient(
180deg,rgba(204,204,204,0) 0%,rgba(204,204,204,0) 98.5%,rgba(100,100,100,100) 100%);
    background-repeat: repeat-y;
    background-size: 100% 2.4em;
}
/*---------------
 商品詳細/参考リンク
---------------*/
div[class^="box_reference"] {
    position: relative;
    margin: 0 0 30px 0;
    padding: 10px 10px 7px;
    background: #e3f9ff;
    border: solid 1px #C3D5FF;
    border-radius: 4px;
	line-height: 0;
}
div[class^="box_reference"] .box-title {
    display: block;
    padding: 0 9px;
    line-height: 25px;
    font-size: 17px;
    background: transparent !important;
    color: #46BCE9;
    font-weight: bold;
}
/*div[class^="box_reference"] .box-title {
    position: absolute;
    display: inline-block;
    top: -1px;
    left: -1px;
    margin: 10px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: transparent !important;
    color: #46BCE9;
    font-weight: bold;
}*/
div[class^="box_reference"] p {
	margin: -10px 0 0 !important;
    padding: 10px;
    color: #2a2a4b;
    line-height: 1.5em;
}
/* div[class^="box_reference"] p {
    margin: -20px 0 0 !important;
    padding: 10px;
    color: #2a2a4b;
    line-height: 1.5em;
}*/
div[class^="box_reference"] p a{
    color: #1010ca;
}
div[class^="box_reference"] p a:hover{
	color: #f71b13;
}

/*---------------
 商品詳細/サイズ表
---------------*/
table.sizechart {
	width: 440px;
	margin: 0 0 30px 0 !important;
	border: solid 1px #c0c0c0;
}

table.sizechart tr {
	border: solid 1px #c0c0c0;
}

table.sizechart th,
td {
	text-align: left;
	border: solid 1px #c0c0c0;
}

table.sizechart th {
	width: 200px;
	padding: 10px;
	background: #f0f0f0;
}

table.sizechart td {
	width: 200px;
	padding: 10px;
}

/*---------------
 商品詳細2/サイズ表2
---------------*/
table.sizechart2 {
	width: 440px;
	margin: 0 0 30px 0 !important;
	border: solid 1px #c0c0c0;
}

table.sizechart2 tr {
	border: solid 1px #c0c0c0;
}

table.sizechart2 th,
td {
	text-align: left;
	border: solid 1px #c0c0c0;
}

table.sizechart2 th {
	width: 200px;
	padding: 10px;
	background: #f0f0f0;
	text-align: center;
	font-weight: bold;
}

table.sizechart2 td {
	width: 200px;
	padding: 10px;
}

/*---------------
 商品詳細/サイズ表
---------------*/
table.sizechart_col3 {
	max-width: 640px;
	margin: 0 0 30px 0 !important;
	border: solid 1px #c0c0c0;
}

table.sizechart_col3 tr {
	border: solid 1px #c0c0c0;
}

table.sizechart_col3 th,
td {
	text-align: left;
	border: solid 1px #c0c0c0;
}

table.sizechart_col3 th {
	min-width: 80px;
	padding: 10px;
	background: #f0f0f0;
}

table.sizechart_col3 td {
	width: 200px;
	padding: 10px;
}

/*---------------
 商品詳細/サイズ表4
---------------*/
table.sizechart4 {
	max-width: 600px;
	margin: 0 0 30px 0 !important;
	border: solid 1px #c0c0c0;
}

table.sizechart4 tr {
	border: solid 1px #c0c0c0;
}

table.sizechart4 th,
td {
	text-align: left;
	border: solid 1px #c0c0c0;
}

table.sizechart4 th {
	width: 15%;
	padding: 10px;
	text-align: center;
	background: #f0f0f0;
}

table.sizechart4 td {
	padding: 10px;
}

/*---------------
 犬の薬の飲ませ方へのリンク
---------------*/
.howto_OralMedication{
    border: 3px solid #EE6B61 !important;
    margin: 20px 0px !important;
    padding: 0px !important;
    background: #fffbf4;
    border-radius: 5px;
}
.howto_OralMedication p{
    margin: -1px;
    font-size: 18px !important;
    font-weight: bold;
    color: #fff !important;
    background: #EE6B61 !important;
    padding: 10px !important;
    position: relative;
}
.howto_OralMedication p:first-of-type::before{
    content: "";
    position: absolute;
    left: 30px;
    bottom: -18px;
    width: 0;
    border: 10px solid transparent;
    border-top: 10px solid #EE6B61;
}
.howto_OralMedication ul{
    margin: 0px !important;
    padding: 20px !important;
}
.howto_OralMedication ul li{
    font-size: 17px !important;
    line-height: 1.5;
    padding: 7px 15px !important;
    list-style-type: none !important;
    border-bottom: 1px dashed #999;
    text-indent: -20px;
    padding-left: 20px !important;
}
.howto_OralMedication ul li:last-child{
    border-bottom: none;
}
.howto_OralMedication ul li::before{
    font-family: FontAwesome;
    content: "\f0da";
    font-weight: 400;
    position: relative !important;
    left: 0px !important;
    margin-right: 10px;
}
.howto_OralMedication ul li a{
    color: #1010CA;
    text-decoration: underline;   
}
.howto_OralMedication .link a.arrow::before{
    font-family: FontAwesome;
    content: "\f0da";
    font-weight: 400;
    position: relative !important;
    left: 0px !important;
    padding-right: 10px;
}
.howto_OralMedication ul li a:hover{
    color: #f71b13;
}
.howto_OralMedication ul.link{
    cursor: default;
    text-decoration: none;
}
.howto_OralMedication ul.link:hover{
    color: unset !important;
}

/*---------------
 FTのL梱包について/商品詳細の注意書き
---------------*/

.shipping_notice {
	padding: 0.5em 1em;
	margin: 1em 0;
	background: #ffebe9;
	border-top: solid 10px #ff7d6e;
}

.shipping_notice p {
	margin: 0;
	padding: 0;
	color: #ff7d6e !important;
	font-size: 13px !important;
	line-height: 1.2;
}


/*---------------------------------- 
続きを読むパーツ（アコーディオン）
---------------------------------- */
.acroll_tbl_row3 th.border,
.acroll_tbl_row3 td.border {
	border-left-width: 4px;
	border-right-width: 4px;
}

.acroll_tbl_row3 th.border-f,
.acroll_tbl_row3 td.border-f {
	/*	position: relative;*/
	border-top-width: 4px;
	border-left-width: 4px;
	border-right-width: 4px;
}

.acroll_tbl_row3 th.border-l,
.acroll_tbl_row3 td.border-l {
	border-bottom-width: 4px;
	border-left-width: 4px;
	border-right-width: 4px;
}

.acroll_tbl_row3 th .bf-tag,
.acroll_tbl_row3 td .bf-tag {
	display: block;
	position: relative;
	min-width: 70%;
	max-width: 90%;
	background: #ff8000;
	color: #fff;
	text-align: center;
	font-size: 13px;
	padding: 2px 5px;
	top: -33px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 10px;
	z-index: 1;
}

.acroll_tbl_row3 th .bf-tag::before,
.acroll_tbl_row3 td .bf-tag::before {
	content: "\f0a7";
	font-family: FontAwesome;
	padding-right: 5px;
	font-size: 20px;
}


.cp_box *,
.cp_box *:before,
.cp_box *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.cp_box {
	width: auto;
	margin: 2em auto;
}

.cp_box label {
	font-weight: bold;
	position: relative;
	display: block;
	width: 80%;
	margin: auto;
	padding: 0.3em 1em;
	cursor: pointer;
	transition: all 0.3s;
	text-align: center;
	color: #da3c41;
	border: 2px solid #da3c41;
	border-radius: 3px;
}

.cp_box label:hover {
	transition: all 0.3s;
	color: #ffffff;
	background: #da3c41;
}

.cp_box label::after {
	font-family: 'FontAwesome';
	content: ' \f067';
	color: #da3c41;
}

.cp_box label:hover::after {
	color: #ffffff;
}

.cp_box input:checked ~ label::after {
	font-family: 'FontAwesome';
	content: ' \f068';
	color: #da3c41;
}

.cp_box input:checked ~ label:hover::after {
	color: #ffffff;
}

.cp_box input {
	display: none;
}

.cp_box .cp_container {
	position: relative;
	z-index: 10;
	overflow: hidden;
	height: 0;
	margin-top: -1px;
	transition: height 0.3s ease-in-out, box-shadow 0.6s linear;
	background: rgba(255, 255, 255, 0.5);
}

.cp_box input:checked ~ div {
	transition: height 0.5s ease-in-out, box-shadow 0.1s linear;
}

/* 続きを読むを押すと表示されるテキストの高さ */
.cp_box input:checked ~ div.cp_container {
	height: 300px;
}

/*----------------------------------
TOPページFAQ
---------------------------------- */
.faq_list .faq_item {
	margin: 20px 0 0;
	padding-bottom: 20px;
	cursor: pointer;
	border-bottom: 1px dotted #c0c0c0;
}

.faq_list .faq_item dt {
	margin: 0;
	padding: 0;
	font-weight: bold;
	display: flex;
	position: relative;
}

.faq_list .faq_item dt::before {
	content: "Q";
	color: #53c3f1;
	font-weight: bold;
	margin-right: 10px;
}

.faq_list .faq_item dt::after {
	content: "\f107";
	font-family: FontAwesome;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	display: block;
	color: #53c3f1;
}

.faq_list .faq_item dd {
	padding: 15px;
	margin-top: 20px;
	background: #fff1fa;
	border: 1px solid #ffdae7;
	display: flex;
}

.faq_list .faq_item dd::before {
	content: "A";
	color: #f153a7;
	font-weight: bold;
	margin-right: 10px;
}

.faq_list .faq_open dt::after {
	content: "\f106";
	font-family: FontAwesome;
}

/*---------------------------------- 
犬の薬の飲ませ方 topics_OralMedications_b.php
---------------------------------- */
.banner_topics {
	text-align: center;
}

ul.beginning_list {
	margin: 1.5em 2em;
	border: 2px solid #f89174;
	background: #fffbf4;
	padding: 1em 2.5em;
	border-radius: 5px;
	width: 90%;
	box-sizing: border-box;
}

ul.beginning_list li {
	list-style: disc;
	line-height: 2;
}

.btn_topics a {
	background: #53c3f1;
	color: #fff;
	width: 320px;
	display: block;
	text-align: center;
	line-height: 50px;
	margin: 1em auto 2em;
	border-radius: 10px;
	text-decoration: none;
	font-weight: 600;
	transition: 0.5s;
	border-bottom: 3px solid #1789b7;
	max-width: 90%;
}

.btn_topics a.line2 {
	line-height: 30px;
	padding: 10px 0;
}

.btn_topics a:hover {
	opacity: 0.6;
}

.btn_topics a:after {
	font-family: FontAwesome;
	content: "\f054\f054";
	margin-left: 5px;
	font-weight: 400;
	font-size: 0.8em;
}

.link_topics {
	text-align: right;
	margin: 1em 0 3em;
}

.link_topics a {
	border-bottom: 1px solid #1010ca;
	text-decoration: none;
	transition: 0.5s;
}

.link_topics a:hover {
	border-bottom: 1px solid #f00000;
}

.link_topics a:before {
	content: ">>";
	margin-right: 5px;
}

.topics_table {
	margin: 2em 0 3em;
	table-layout: fixed;
}

.topics_table th {
	width: 20%;
	background: #53c3f1;
	color: #fff;
	vertical-align: middle;
	border-bottom: 1px solid #fff;
	padding: 15px;
}

.topics_table td {
	padding: 15px;
	width: 40%;
	box-sizing: border-box;
	font-size: 14px;
}

.topics_table td ul {
	padding: 0 1em 0 1.8em;
	position: relative;
	font-size: 14px;

}

.topics_table td ul li {
	font-size: 14px;
	padding: 0.5em 0;
}

.topics_table td ul li:before {
	font-family: FontAwesome;
	content: "\f00c";
	font-weight: 400;
	position: absolute;
	left: 0.3em;
	color: #53c3f1;
}

.topics_table td ol {
	counter-reset: number;
	list-style-type: none !important;
}

.topics_table td ol li {
	position: relative;
	padding: 0.5em 0.5em 0.5em 30px;
	line-height: 1.5em;
	font-size: 14px;
}

.topics_table td ol li:before {
	position: absolute;
	counter-increment: number;
	content: counter(number);
	display: inline-block;
	background: #53c3f1;
	color: white;
	font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
	font-weight: bold;
	border-radius: 50%;
	left: 0;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

a.topics_table_button {
	background: #fd9535;
	display: block;
	color: #fff;
	text-align: center;
	line-height: 40px;
	border-radius: 10px;
	text-decoration: none;
	border-bottom: 3px solid #ce690b;
	transform: 0.5s;
}

a.topics_table_button:hover {
	opacity: 0.6;
}

.topics_table td img {
	width: 100%;

}

/*---------------------------------- 
ご利用ガイド guide.php
---------------------------------- */
.guide_mokuji{
	margin: 10px auto;
	text-align: center;
}
.guide_mokuji li {
    width: calc(16% - 4px);
    display: inline-block;
    vertical-align: top;
    margin: 2px;
}
.guide_mokuji li a {
    display: block;
}
.guide_mokuji li a img {
    width: 100%;
    height: auto;
}

/* 比較表 */
.hikaku-tbl{
    margin: 20px;
}
.hikaku-tbl th,
.hikaku-tbl td{
    padding: 13px;
    border: 1px solid #dacba2;
}
/* テーブル画像 */
.hikaku-tbl img{
    max-width: 45% !important;
    height: auto;
	margin: 0px auto;
}
.hikaku-tbl.col5 img{
    max-width: 80% !important;
    height: auto;
	margin: 0px auto;
}


/* 内部リンク（ブログカード風デザイン） */
.l-card{
    background: #FAFAFA;
    margin: 30px 10px;
	max-width: 700px;
    box-shadow: 0px 0px 5px #ccc;
}
.l-card a{
    display: block;
    padding: 15px;
    text-decoration: none;
}
.l-card a:hover{
    opacity: 0.5;
}
.l-c_img{
    display: inline-block;
    vertical-align: top;
    width: 200px;
    /*height: 180px;*/
    /*background: #fff;*/
}
.l-c_img img{
    width: 100%;
    max-width: 200px !important;
    object-fit: contain;
    height: auto;
}
.l-c_txt{
    display: inline-block;
    vertical-align: top;
	padding: 25px;
    width: calc(100% - 260px);
}
.l-c_txt .l-c_name{
    font-size: 20px;
    font-weight: bold;
    text-decoration: underline;
    color: #1010CA;
    display: block;
}
.l-c_txt .l-c_price{
    font-weight: bold;
    color: #888;
    font-size: 13px;
    display: block;
	margin: 10px 0;
}
.l-c_txt .l-c_price price{
    color: #D90303;
    font-size: 20px;
}
.l-c_txt .l-c_desc{
    font-size: 13px;
    line-height: 22px;
}

/* ↓20210908追加　チェックリスト付きボックス */
.check-box{
    margin: 40px 20px;
    border: 3px solid #f18052;
    border-radius: 10px;
    padding: 22px 18px 15px;
    position: relative;
}
.check-box .check-box-title{
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    padding: 10px 20px;
    color: #f18052;
    background: #fff;
    display: block;
    position: absolute;
    left: 10px;
    top: -30px;
}
.check-box .check-box-title i.fa{
    font-size: 30px;
    font-weight: normal;
    margin-right: 10px;
}
.check-box .check-box-list{
    list-style: none;
}
.check-box .check-box-list li{
    padding: 7px 15px;
    font-size: 16px;
    border-bottom: 1px solid #d5d5d5;
}
.check-box .check-box-list li i.fa::before{
    font-size: 30px;
}
.check-box .check-box-list li:last-child{
    border-bottom: none;
}
.check-box .check-box-list li::before{
    content: "●";
    font-size: 18px;
    margin-right: 10px;
    color: #f18052;
}


/*---------------------------------- 
目次 mailcase.php
---------------------------------- */
.mokuji_mailcase{
	margin: 10px auto;
}
.mokuji_mailcase ul{
	display: table;
    border-collapse: separate;
    border-spacing: 10px;
}
.mokuji_mailcase ul li{
    width: 33%;
    display: table-cell;
    border: 1px solid #9eddf7;
    border-radius: 5px;
    margin: 3px;
}
.mokuji_mailcase ul li a{
	position: relative;
    display: block;
    color: #555;
    text-decoration: none;
    border-radius: 5px;
    padding: 15px 10px 20px 85px;
    font-weight: bold;
    background-color: #fff;
}
.mokuji_mailcase ul li a:hover{
	opacity: 0.5;
}
.mokuji_mailcase ul li.sendmail a{
	background-image:url("/img/images/mailcase_icon1.png");
    background-repeat: no-repeat;
    background-position: -15px -15px;
    background-size: 95px;
}
.mokuji_mailcase ul li.adcheck a{
	background-image:url("/img/images/mailcase_icon2.png");
    background-repeat: no-repeat;
    background-position: -15px -15px;
    background-size: 95px;
	letter-spacing: -0.75px;
}
.mokuji_mailcase ul li.spamlift a{
	background-image:url("/img/images/mailcase_icon3.png");
    background-repeat: no-repeat;
    background-position: -15px -15px;
    background-size: 95px;
}
.mokuji_mailcase ul li a::after{
	content: "";
    position: absolute;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    line-height: 0;
    bottom: -3px;
    margin: auto;
    border: 8px solid transparent;
    border-top: 8px solid #9eddf7;
}

/* 鑑定書枠 */
.box_report{
    margin: 0px auto;
}
.box_report .box_report_img{
    display: inline-block;
    vertical-align: top;
    width: 120px;
    margin-right: 10px;
    position: relative;
    z-index: 1;
}
.box_report .box_report_img a{
    display: block;
    position: relative;
    border: 1px solid #a8a8a8;
}
.box_report .box_report_img a::before{
    content: "\f00e";
    font-family: FontAwesome;
    position: absolute;
    top: -1px;
    left: -1px;
    z-index: 2;
    color: #fff;
    background: #555;
    font-size: 22px;
    line-height: 1;
    font-weight: normal;
    padding: 5px;
}
.box_report .box_report_img a:hover::before{
    opacity: 0.75;
}
.box_report .box_report_img a img{
    width: 120px;
    height: 150px;
    object-fit: contain;
	border: none !important;
}
/* レコメンドパーツ共通パーツ */
.ppz_title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
}
.ppz_item ul li.ppz_prd a{
    display: block;
    text-decoration: none;
}
.ppz_item ul li.ppz_prd a .image{
    border: 1px solid #c0c0c0;
    display: block;
    min-height: 100px;
}
.ppz_item ul li.ppz_prd a .image img{
    max-width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}
.ppz_item ul li.ppz_prd a .name{
    display: block;
    padding: 5px;
    text-decoration: underline;
    font-size: 14px;
    line-height: 18px;
}
.ppz_item ul li.ppz_prd a .price{
    display: block;
    text-align: center;
    color: #ff0000;
    padding: 7px;
    font-size: 14px;
    line-height: 18px;
}

/* レコメンドパーツ（TOPページ）
.ppz_top ⇒ #ppz_recommend05 */

#ppz_recommend05{
    border-bottom: 1px dotted #c0c0c0;
}
#ppz_recommend05 .ppz_title{
    background: url(/img/icon/reco_star.png) no-repeat 10px 0;
    background-color: transparent;
    background-size: 30px;
    background-position: 0px -6px;
    padding-top: 5px;
}
#ppz_recommend05 .ppz_item ul{
    width: 730px;
    margin: 20px auto 10px;
}
#ppz_recommend05 .ppz_item ul li.ppz_prd{
    width: 126px;
    margin: 0 10px;
    padding: 0 0 15px 0;
    vertical-align: top;
    outline: none;
}
#ppz_recommend05 .ppz_item ul li.ppz_prd a .name{
    height: 65px;
    font-size: 13px;
    line-height: 18px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    padding: 5px;
    margin: 0px 0 5px;
}
#ppz_recommend05 .ppz_item ul li.ppz_prd a .price{
    padding: 3px 0 0 0;
    font-size: 14px;
    line-height: 18px;
}
/* レコメンドパーツ（商品ページ） */
#ppz_recommend03{
    width: 90%;
    max-width: 860px;
    border: 1px solid #c0c0c0;
    padding: 20px;
    margin: 0px auto 0px 35px;
    border-radius: 3px;
}
.ppz_detail .ppz_title{
    margin: 5px auto 19px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
}
.ppz_detail .ppz_title{
    color: #00a4e8;
}
.ppz_detail .ppz_item ul li.ppz_prd{
    display: inline-block;
    width: calc(20% - 20px);
    margin: 5px;
    padding: 5px;
    background: #E4F6FF;
}
.ppz_detail .ppz_item ul li.ppz_prd a .image{
    display: block;
    max-width: 100%;
    min-height: 90px;
}
.ppz_detail .ppz_item ul li.ppz_prd a .name{
	height: 50px;
	margin-top: 5px;
    margin-bottom: 10px;
    font-size: 13px;
    line-height: 19px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.ppz_detail .ppz_item ul li.ppz_prd a .price span{
    font-size: 130%;
}

/* お友達紹介キャンペーン */
.campbox{
    display: table;
    border-collapse: separate;
    border-spacing: 20px 20px;
}
.campbox .campbox_col{
    display: table-cell;
    /* table-layout: fixed; */
    width: 50%;
    padding: 15px;
    border-collapse: separate;
    border-spacing: 10px 10px;
    background: #555;
    color: #fff;
    border-radius: 10px;
    position: relative;
}
.campbox .campbox_col.camp_you{
    background: #00B1FF;
    box-shadow: 0px 8px 0px #128CC2;
}
.campbox .campbox_col.camp_fri{
    background: #FF8800;
    box-shadow: 0px 8px 0px #CC6805;
}
.campbox .campbox_col .campbox_icon{
    position: absolute;
    top: -25px;
    width: 105px;
    height: 105px;
    /*background: #fff;
    border: 3px solid #555;*/
    border-radius: 50%;
}
.campbox .campbox_col.camp_you .campbox_icon{
    left: -15px;
    border-color: #00B1FF;
}
.campbox .campbox_col.camp_fri .campbox_icon{
    right: -15px;
    border-color: #FF8800;
}
.campbox .campbox_main .campbox_terms{
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    text-align: center;
}
.campbox .campbox_col .campbox_label{
    font-size: 23px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin-bottom: 15px;
}
.campbox .campbox_main,
.campbox .campbox_main p{
    color: #fff !important;
}
.campbox .campbox_main .campbox_pricebox {
    display: inline-block;
    width: 100%;
    height: 100px;
    color: #fff;
    text-align: center;
    font-size: 30px;
    text-shadow: 3px 3px 0px rgba(0, 0, 0, .16);
    line-height: 1;
    padding: 5px 0px;
    font-weight: bold;
}
.campbox .campbox_main .campbox_pricebox .price_num{
    font-size: 360%;
    color: #fff000;
}
.campbox .campbox_main .campbox_txt{
    background: #fff000;
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
    text-align: center;
    padding: 12px;
    margin: 0px auto 10px;
    border-radius: 5px;
}
.campbox .campbox_col.camp_you .campbox_main .campbox_txt{
    color: #0057cc;
}
.campbox .campbox_col.camp_fri .campbox_main .campbox_txt{
    color: #ff4000;
}
.campbox .campbox_main .campbox_notice{
    font-size: 12px;
    text-align: center;
    line-height: 1;
    color: #fff;
}
.campbox .campbox_main .campbox_bg-white{
    background: #fff;
    padding: 10px;
    font-size: 13px;
    border-radius: 5px;
    margin-top: 20px;
}
.campbox .campbox_main .campbox_bg-white .camp-invite,
.campbox .campbox_main .campbox_bg-white .camp-invite-icon,
.campbox .campbox_main .campbox_bg-white .camp-invite-get{
    font-size: 13px;
    display: inline-block;
    vertical-align: middle;
}
.campbox .campbox_main .campbox_bg-white .camp-invite-icon{
    width: 110px;
    line-height: 0;
}
.campbox .campbox_main .campbox_bg-white .camp-invite-icon img{
    width: 33px;
    height: auto;
}
.campbox .campbox_main .campbox_bg-white .camp-invite-get {
    text-align: right;
    width: calc(100% - 165px);
}
.campbox .campbox_main .campbox_bg-white .camp-invite-get{
    text-align: right;
}
.campbox .campbox_main .campbox_bg-white .campbox_detail{
    font-size: 0;
    line-height: 1;
}
.campbox .campbox_main .campbox_bg-white .campbox_detail .camp-invite{
    font-weight: bold;
}
.campbox .campbox_main .campbox_bg-white .campbox_detail .camp-invite .num{
    font-size: 140%;
}
.campbox .campbox_main .campbox_bg-white .campbox_detail .camp-invite-get{
    font-weight: bold;
    font-size: 17px;
}
.campbox .campbox_main .campbox_bg-white .campbox_detail .camp-invite-get .r-marker{
    font-size: 12px;
    background:linear-gradient(transparent 60%, rgb(255, 122, 122) 60%);
}
.campbox .campbox_main .campbox_bg-white .campbox_detail .camp-invite-get .num{    font-size: 21px;
}

.campbox .camp_fri .campbox_detail p{
    width: 50%;
    padding: 7px;
}
.campbox .camp_fri .campbox_main .campbox_detail{
    background-image:url("/img/friend/friend_cart_icon.png");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-position: 115%;
    background-size: 216px;
}

/* お友達紹介キャンペーンページ */
/* ご紹介方法 */
h1.campaign img{
    max-width: 100%;
    height: auto;
}
h2.ta_c{
    color: #fff;
    background: #3EBFF3;
    padding: 10px;
    font-size: 23px;
    line-height: 32px;
    text-align: center;
}
.invite-tab{
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    margin: 20px auto;
}
.invite-tab input{
    display: none;
}
.invite-tab .invite-btn{
    width: 25%;
    color: #0293cf;
    background: #B8EAFF;
    margin: 10px;
    padding: 15px;
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    border-radius: 5px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    order: -1;
    margin: auto;
}
.invite-tab .invite-btn:hover{
    color: #0CACEE;
    background: #81d6fa;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-line:hover{
    color: #fff;
    background: #009719;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-line:hover:before{
    border-top-color: #009719;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-mail:hover{
    color: #fff;
    background: #328ad6;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-mail:hover:before{
    border-top-color: #328ad6;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-tel:hover{
    color: #fff;
    background: #ca3f69;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-tel:hover:before{
    border-top-color: #ca3f69;
}
.invite-tab input[type="radio"]:checked + .invite-btn{
    color: #fff;
    background-color: #333;
}
.invite-tab input[type="radio"]:checked + .invite-btn::before{
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0px;
    right: 0px;
    margin: auto;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top: 10px solid #333;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-line{
    background-color: #00B41E;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-line:before{
    border-top-color: #00B41E;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-mail{
    background-color: #53A7F1;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-mail:before{
    border-top-color: #53A7F1;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-tel{
    background-color: #ee5a86;
}
.invite-tab input[type="radio"]:checked + .invite-btn#btn-tel:before{
    border-top-color: #ee5a86;
}

/* 紹介方法 メールで紹介と電話紹介は初期は非表示 */
.iclick-line, .iclick-mail, .iclick-tel{
    display: none;
}
@keyframes invite-anime {
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}
@-webkit-keyframes invite-anime {
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}
.invite-tab input[type="radio"]:checked + #btn-line ~ .invite-bd .iclick-line,
.invite-tab input[type="radio"]:checked + #btn-mail ~ .invite-bd .iclick-mail,
.invite-tab input[type="radio"]:checked + #btn-tel ~ .invite-bd .iclick-tel{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    animation: invite-anime 1.5s linear 0s;
}
/* 紹介方法　共通 */
.invite-tab .invite-bd{
    width: 96%;
    border: 5px solid #333;
    margin: 20px auto;
    padding: 45px 30px 20px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 10px;
}
.invite-tab input[type="radio"]:checked + #btn-line ~ .invite-bd{
    border-color: #00B41E;
}
.invite-tab input[type="radio"]:checked + #btn-mail ~ .invite-bd{
    border-color: #53A7F1;
}
.invite-tab input[type="radio"]:checked + #btn-tel ~ .invite-bd{
    border-color: #ee5a86;
}

.invite-tab .invite-box{
    text-align: left;
    transition: .5s;
}
.invite-tab .invite-box > .invite-detail{
    width: 47%;
    border: 7px solid transparent;
    position: relative;
    border-radius: 10px;
    align-items: center;
    padding: 0px;
    margin-bottom: 30px;
    box-sizing: border-box;
}
.invite-tab .invite-box > .invite-detail.detail_me::after {
    content: "";
    border: 24px solid transparent;
    border-left: 21px solid #bcbcbc;
    position: absolute;
    right: -62px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
    line-height: 0;
}
.invite-tab .invite-box > .invite-detail .invite-detail_me_name{
    font-size: 21px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_me_icon{
    width: 105px;
    height: 105px;
    /*background: #fff;
    border: 5px solid transparent;*/
    border-radius: 50%;
    position: absolute;
    top: -40px;
}
.invite-tab .invite-box > .invite-detail.detail_friend,
.invite-tab .invite-box > .invite-detail.detail_friend .invite-detail_me_icon{
    border-color: #FC7F48;
}
.invite-tab .invite-box > .invite-detail.detail_friend .invite-detail_me_name{
    background-color: #FC7F48;
}
.invite-tab .invite-box > .invite-detail.detail_me,
.invite-tab .invite-box > .invite-detail.detail_me .invite-detail_me_icon{
    border-color: #0CACEE;   
}
.invite-tab .invite-box > .invite-detail.detail_me .invite-detail_me_name{
    background-color: #0CACEE;
}
.invite-tab .invite-box > .invite-detail.detail_me .invite-detail_me_icon{
    left: -30px
}
.invite-tab .invite-box > .invite-detail.detail_friend .invite-detail_me_icon{
    right: -30px
}
.invite-tab .invite-box > .invite-detail .invite-detail_me_name{
    background: #333;
    padding: 12px;
    color: #fff;
    margin: -2px;
    font-size: 21px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    border-radius: 5px 5px 0 0;
}
.invite-tab .invite-box > .invite-detail.detail_me .invite-detail_me_name{
    padding-left: 40px;
}
.invite-tab .invite-box > .invite-detail.detail_friend .invite-detail_me_name{
    padding-right: 100px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text{
    padding: 15px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text p{
    font-size: 18px;
    line-height: 29px;
    margin-bottom: 20px;
}
.invite-tab .invite-box > .invite-detail.detail_me .invite-detail_text p:first-of-type{
    text-indent: 70px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text p:last-of-type{
    margin-bottom: 0px;    
}
.invite-tab .invite-box > .invite-detail.detail_friend .invite-detail_text p:first-child{
    padding-right: 70px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text img{
    max-width: 100%;
    height: auto;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text .invite-login_btn{
    display: block;
    border-radius: 5px;
    border: 1px solid #888;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(203,203,203,1) 77%);
    box-shadow: 2px 2px 0px #d3d3d3;
    margin: 10px auto;
    padding: 10px;
    text-indent: 0px;
    text-align: center;
    text-shadow: 1px 1px 0px #fff;
    cursor: pointer;
    font-size: 19px;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text .invite-login_btn:hover{
    background: rgb(158, 215, 248);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgb(158, 215, 248) 77%);
}
.iv-code-btn{
	margin: 20px auto;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text .invite-login_after a.invite_btn,
.iv-code-btn button{
	text-decoration: none;
    display: block;
    text-align: center;
    border: 1px solid #b5b5b5;
    border-radius: 7px;
    padding: 15px;
    background: #fff;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(203,203,203,1) 68%);
    color: #333;
}
.invite-tab .invite-box > .invite-detail .invite-detail_text .invite-login_after a.invite_btn:hover,
.iv-code-btn button:hover{
	color: #888;
	background: rgb(255,255,255);
		background: linear-gradient(180deg, rgba(255,255,255,1) 34%, rgba(228,228,228,1) 89%);
}
.invite-tab .invite-box > .invite-detail .invite-detail_text .invite-login_after.iv-code{
    text-align: center;
    font-size: 29px;
    font-weight: bold;
    border: 1px solid #ccc;
    padding: 10px;
    margin: 0px;
}
.invite-tab .invite-notice{
    background: #eee;
    display: block;
    padding: 25px;
    margin: 10px 0px;
    text-align: left;
}
.invite-tab .invite-notice .invite-notice-label{
    text-align: center;
    align-items: center;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}
.invite-tab .invite-notice ul{
    padding-left: 20px;
}
.invite-tab .invite-notice ul li{
    list-style: disc;
}
.invite-tab .invite-linkbtn{
    width: 650px;
    font-size: 0;
    text-align: center;
    margin: 0px auto;
    border: 1px solid #00b900;
}
.invite-tab .invite-linkbtn .invite-comment{
    color: #00b900;
    font-size: 17px;
    font-weight: bold;
    padding: 5px;
}
.invite-tab .invite-linkbtn .invite-comment::before,
.invite-tab .invite-linkbtn .invite-comment::after{
    content: "▼";
    margin: 0px 10px;
}
.invite-tab .invite-linkbtn img{
    max-width: 100%;
    height: auto;
    margin: 0px auto;
}

/* 読み物ページ一覧 */
h2.more{
    position: relative;
}
h2.more i{
    margin-right: 10px;
}
h2.more a{
    position: absolute;
    right: 0;
    font-size: 15px;
    line-height: 1;
    padding: 6px;
}
h2.more a::before{
    content: "\f0da";
    font-family: 'FontAwesome';
    margin-right: 5px;
}

.column_box{
    padding: 0px 9px;
}
.column_box .column_list{
    display: inline-block;
    width: calc((100% / 3) - 21px);
    margin: 7px;
    box-sizing: border-box;
}
.column_box .column_list .column_text{
    display: block;
    font-size: 15px;
    font-weight: bold;
    line-height: 25px;
    color: #1010ca;
    margin: 5px 0;
    text-decoration: underline;
}
.column_box .column_list .column_img{
    display: block;
    width: 100%;
    height: 150px;
    padding: 0px;
    box-sizing: border-box;
    /*background: #ccc;*/
}
.column_box .column_list .column_img a{
    display: block;
}
.column_box .column_list .column_img a img{
    width: 100%;
    height: auto;
}

/* YouTube埋め込み動画枠 */
.youtube_box{
	border: 3px solid #54c2f1;
    padding: 2px;
    display: block;
    margin: 30px auto;
    font-size: 0;
	box-sizing: border-box;
    width: fit-content;
}
.youtube_box iframe{
    margin: 0;
    max-width: 100%;
    border: none;
}

/* 背景装飾 */
.bg-ly{
    background: #FFF2CC;
}
.bg-y{
    background: #FFFF00;
}
.w200{
    width: 200px;
}

/* 文字寄せ */
.left {
    text-align: left;
}
.center {
    text-align: center;
}
.right {
    text-align: right;
}

/* 画像サイズの横幅の統一 */
.img-w398{
	max-width: 398px !important;
	height: auto;
}

/* テーブル比較表 幅設定 */
.w100{ width: 100px; }
.w150{ width: 150px; }
.w200{ width: 200px; }
.w250{ width: 250px; }
.w300{ width: 250px; }
.w350{ width: 250px; }

/* テーブル比較表 幅設定(PC only) */
.pcwd75{ width: 75px; }
.pcwd80{ width: 80px; }
.pcmin80{ min-width: 80px; }
.pcmin90{ min-width: 90px; }

/* テーブル比較表 枠太さ */
.bg-wd3{ border-width: 3px !important; }

.bg-right_wd2{ border-right-width: 2px !important; }
.bg-right_wd3{ border-right-width: 3px !important; }

/* テーブル罫線色装飾 */
.bd-gray,
.bd-gray tr, .bd-gray th, .bd-gray td{
    border-color: #d2d2d2 !important;
}
.bg-gray{
    background-color: #efefef;
}

/* フォントサイズ変更 */
.fs13{ font-size: 13px; }
.fs14{ font-size: 14px; }
.fs15{ font-size: 15px; }
.fs16{ font-size: 16px; }
.fs17{ font-size: 17px; }
.fs18{ font-size: 18px; }
.fs19{ font-size: 19px; }

.fs13 th,
.fs13 td{ font-size: 13px; }
.fs14 th,
.fs14 td{ font-size: 14px; }
.fs15 th,
.fs15 td{ font-size: 15px; }
.fs16 th,
.fs16 td{ font-size: 16px; }
.fs17 th,
.fs17 td{ font-size: 17px; }
.fs18 th,
.fs18 td{ font-size: 18px; }
.fs19 th,
.fs19 td{ font-size: 19px; }

.icon_zoom {
    position: relative;
}
a.icon_zoom{
	display: block;
}
.icon_zoom::before {
    content: "クリックで拡大";
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    padding: 7px 7px 4px 25px;
    background: #575252;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    background-image: url(https://pochitama.pet/img/icon/img_icon_zoom.png);
    background-repeat: no-repeat;
    background-size: 16px;
    background-position: 3% 50%;
}
.icon_zoom:hover::before{
	opacity: 1;
}

/* カテゴリリニューアル用 */
/* カテゴリグループ用タブ */
.cat_group_menu{
	width: 240px;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
	padding: 5px;
	background: #fcfcfc;
	justify-content: center;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}
.cat_group_menu .cat_group_list{
	width: calc((100%/2) - 15px);
	height: 73px;
	box-sizing: border-box;
	background: #ddd;
	margin: 5px;
	padding: 55px 7px 5px;
	text-align: center;
	font-size: 13px;
	line-height: 1;
	cursor: pointer;
	border-radius: 5px;
	background-repeat: no-repeat;
	background-position: 50% 15%;
	background-size: 45px;
}
.cat_group_menu .cat_group_list.active{
	color: #fff;
}
.cat_group_menu .cat_group_list.dog{
    background-image: url(/img/icon/menu/tab_icon_dog_bk.png);
}
.cat_group_menu .cat_group_list.dog.active{
    background-color: #66c0f5;
    background-image: url(/img/icon/menu/tab_icon_dog_wh.png);
}
.cat_group_menu .cat_group_list.cat{
    background-image: url(/img/icon/menu/tab_icon_cat_bk.png);
}
.cat_group_menu .cat_group_list.cat.active{
    background-color: #f6979b;
    background-image: url(/img/icon/menu/tab_icon_cat_wh.png);
}
.cat_group_menu .cat_group_list.human{
    background-image: url(/img/icon/menu/tab_icon_human_bk.png);
}
.cat_group_menu .cat_group_list.human.active {
    background-color: #4ed63c;
    background-image: url(/img/icon/menu/tab_icon_human_wh.png);
}
.cat_group_menu .cat_group_list.other{
    background-image: url(/img/icon/menu/tab_icon_other_bk.png);
}
.cat_group_menu .cat_group_list.other.active {
    background-color: #d6843c;
    background-image: url(/img/icon/menu/tab_icon_other_wh.png);
}

.cat_group_category{
	display: none;
	border-top: 5px solid #555;
}
.cat_group_category.group_dog{
	border-color: #66c0f5;
}
.cat_group_category.group_cat{
	border-color: #f6979b;
}
.cat_group_category.group_human{
	border-color: #4ed63c;
}
.cat_group_category.group_other{
	border-color: #d6843c;
}
.cat_group_category.active{
	display: block;
}
.cat_group_category ul{
	position: relative;
	margin: 0 0 20px;
}
.cat_group_category ul .main_category{
	position: relative;
}
.cat_group_category ul .main_category:first-child > a{
	padding-top: 15px !important;
}
.cat_group_category ul .main_category > a {
	display: block;
	position: relative;
	padding: 7px 20px;
	font-size: 14px;
	line-height: 1;
	text-decoration: none;
	background: #fafafa;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}
.cat_group_category ul .main_category > a::after{
	position: absolute;
	top: calc(50% - 6px);
	right: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "";
	color: #b0b0b0;
	font-size: 10px;
	line-height: 12px;
}
.cat_group_category ul .main_category:last-child > a{
	padding: 7px 20px 6px;
	border-bottom: 1px solid #b0b0b0;
}
.cat_group_category ul .main_category .sub_category{
	display: none;
	position: absolute;
	top: -57px;
	left: 100%;
	z-index: 10;
	width: 460px;
	/*height: 520px;*/
	min-height: 220px;
	padding: 20px;
	background: #fff;
	border: 1px solid #b0b0b0;
	box-shadow: 4px 4px 4px 0 #ccc;
}

.cat_group_category ul .main_category .sub_category .title {
	padding: 0 0 10px;
	color: #e00000;
	font-size: 28px;
	line-height: 1;
}
.cat_group_category ul .main_category .sub_category a {
	display: block;
	position: relative;
	padding: 4px 20px;
	font-size: 16px;
	line-height: 22px;
	text-decoration: none;
}
.cat_group_category ul .main_category .sub_category a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

/* 特定商法取引表記テーブル */
.specified_tbl{
	width: 98%;
	margin: 20px 0;
	display: flex;
    flex-wrap: wrap;
}
.specified_tbl dt, .specified_tbl dd{
	border: 1px solid #ccc;
    padding: 15px;
    box-sizing: border-box;
}
.specified_tbl dt{
	font-size: 15px;
	line-height: 24px;
	font-weight: 700;
    width: 180px;
    background: #eee;
}
.specified_tbl dd{
	width: calc(100% - 180px);
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 22px;
}

/* ヘッダー用新検索フォーム */
.new_search_body {
	position: relative;
    margin-top: -15px;
}
.new_search_body .inner {
	position: relative;
	height: 34px;
	border: 3px solid #53c3f1;
	border-radius: 4px;
}

.new_search_body .search_input {
	width: calc(100% - 64px);
}

.new_search_body .search_body{
    vertical-align: bottom !important; 
}

.new_search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.new_search_body .search_input input {
	display: block;
	width: 100%;
	height: 34px;
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 20px;
	line-height: 1;
	border: none;
	border-radius: 4px 0 0 4px;
	outline: none;
}

.new_search_body .search_input input::placeholder {
	line-height: 30px !important;
}

.new_search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.new_search_body .search_desc,
.new_search_body .search_link{
    vertical-align: bottom !important;
}

.new_search_body .search_submit input {
	display: block;
	border: none;
	width: 64px;
    height: 35px;
	padding: 8px 0;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	text-align: center;
	background: #53c3f1;
	cursor: pointer;
    border-radius: 0 2px 2px 0;
}

.search_area form {
	margin: 0;
}

.search_option {
	margin: 5px 0;
}

.search_menu {
	font-size: 15px;
	font-weight: 700;
	margin: 2px 0;
}

.search_menu input {
	display: none;
}

.search_menu label {
	font-size: 15px;
	margin-right: 10px;
	cursor: pointer;
}

.search_menu label span {
	border: 1px solid #53c3f1;
	background-color: #fff;
	width: 16px;
	height: 16px;
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-right: 5px;
	border-radius: 50%;
	line-height: 0;
	position: relative;
	z-index: 1;
}

.search_menu input[name^=search_select]:checked+label span::before {
	content: "";
	display: block;
	background-color: #53c3f1;
	border-radius: 50%;
	line-height: 0;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	margin: 13%;
}

/* 検索失敗ページ */
.new_search_box_result {
	position: relative;
	width: 600px;
	margin: 20px auto;
	padding: 20px 20px 10px 20px;
	background: #dcf3fc;
	border: 2px solid #53c3f1;
    border-radius: 5px;
}

.new_search_box_result p {
	padding: 10px 20px;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	vertical-align: bottom;
}

.new_search_box_result p strong {
	color: #f00;
	font-size: 16px;
	font-weight: bold;
}

.new_search_box_result .search_menu {
	width: 480px;
	margin: 5px auto !important;
}

.new_search_box_result .search_area {
	position: relative;
	width: 480px;
	height: 40px;
	margin: 10px auto;
	background: #53c3f1;
	border-radius: 5px;
}

.new_search_box_result input[type="text"] {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 414px;
	height: 34px;
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 22px;
	line-height: 32px;
	border: none;
	border-radius: 3px 0 0 3px;
}

.new_search_box_result .search_submit label {
	display: block;
	position: absolute;
	top: 3px;
	right: 3px;
	width: 60px;
	height: 32px;
	color: #fff;
	font-size: 20px;
	line-height: 32px;
	background: #53c3f1;
	border: none;
	border-radius: 0 3px 3px 0;
}

.new_search_box_result .search_submit label img {
	width: 100%;
	height: auto;
}

/* 再注文ボタン */
.reorder_btn{
    width: 600px;
    margin: auto;
    padding: 0;
    text-align: center;
}
.reorder_btn span,
.reorder_btn a{
    display: block;
    text-decoration: none;
    background: #53c3f1;
    padding: 17px 17px 15px;
    border-radius: 50px;
    color: #3a3a3a;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    position: relative;
    background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
    background: -moz-linear-gradient(top, #fff090, #f0ca5a);
    background: linear-gradient(to bottom, #fff090, #f0ca5a);
    border: 2px solid #fad359;
    box-shadow: 0px 0px 2px #daa910 inset;
}
.reorder_btn span::before,
.reorder_btn a::before{
    content: "";
    line-height: 0;
    margin-right: 18px;
    width: 48px;
    height: 48px;
    display: inline-block;
    vertical-align: middle;
    margin-top: -3px;
    background-image: url(/img/icon/icon_reorder.png);
    background-repeat: no-repeat;
    background-size: contain;
}
.reorder_btn span:hover,
.reorder_btn a:hover{
    opacity: .75;
    background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
    background: -moz-linear-gradient(top, #fff090, #f0ca5a);
    background: linear-gradient(to bottom, #fff090, #f0ca5a);
}

/* 250227 */
/* キャンペーンボックス */
.common__camp_banabox{
    max-width: 90%;
    margin: 0 auto 40px;
}
.common__camp_banabox_mini{
    width: 100%;
    min-width: 100%;
}
.common__camp_banabox a,
.common__camp_banabox_mini a{
    display: block;
}
.common__camp_banabox img,
.common__camp_banabox_mini img{
    width: 100%;
    height: auto;
    display: block;
    margin: auto;
}

.search_desc div.line1{
    margin: 0;
}

/* header */
.new_search_body.renewal{
    margin-top: 0;
}
.new_search_body.renewal .new_search_box{
    padding: 0;
}
.new_search_body.renewal .search_body{
    vertical-align: middle !important;
}
.card_tbl .detail_card_point img{
    width: 240px;
    height: auto;
}
.card_tbl .detail_card_point .modal_open{
    cursor: pointer;
    margin-bottom: 7px;
}
.card_tbl .detail_card_point .modal_open:hover{
    opacity: .75;
}
.modal_inner .modal-content-h {
    padding: 30px 60px 20px 30px;
    font-size: 28px;
    font-weight: 700;
    line-height: 36px;
    text-align: center;
}
.modal_inner p.ml_txt {
    margin: 20px 30px;
}

.new_search_box{
    padding: 20px;
}
.new_search_box .search {
    position: relative;
    width: 480px;
    height: 38px;
    margin: 0px auto;
    background: #53c3f1;
    border-radius: 3px;
}
.new_search_box .search input[type=text] {
    left: 3px;
    width: 394px;
    padding: 0 10px;
    font-size: 18px;
    border-radius: 3px 0 0 3px;
}
.new_search_box .search input[type=image] {
    right: 3px;
    width: 60px;
    color: #fff;
    font-size: 20px;
    background: #53c3f1;
    border-radius: 0 3px 3px 0;
}

.new_search_box_text{
    font-size: 19px;
    padding: 10px 20px 0px;
    text-align: center;
    font-weight: 700;
}
.reorder_btn{
    width: 450px;
    margin: auto;
    padding: 0;
    text-align: center;
}
.reorder_btn a, .reorder_btn span{
    display: block;
    text-decoration: none;
    padding: 11px 17px 11px;
    border-radius: 10px;
    color: #3a3a3a;
    font-size: 17px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    position: relative;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(238,238,238,1) 35%, rgba(219,219,219,1) 100%);
    border: 2px solid #d9d9d9;
    box-shadow: 0 0 2px #e3e3e3 inset;
}
.reorder_btn a:before, .reorder_btn span:before{
    content: "";
    line-height: 0;
    margin-right: 8px;
    width: 2.25pc;
    height: 2.2pc;
    display: inline-block;
    vertical-align: middle;
    margin-top: -3px;
    background-image: url(/img/icon/icon_reorder.png);
    background-repeat: no-repeat;
    background-size: contain;
}
.reorder_btn span:hover, .reorder_btn a:hover {
    opacity: .75;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(238,238,238,1) 35%, rgba(219,219,219,1) 100%);
}

/* サイドバナー */
.sidebana_box > .sidebana img{
	cursor: pointer;
}	
.sidebana_box > .sidebana img:hover{
	opacity: .75;
}
.bana_modal_win_ol{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 110901;
    width: 100%;
    height: 120%;
    background-color: rgba(0, 0, 0, 0.7);
}
.bana_modal_win{
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 110903;
    width: 100%;
    max-width: 1000px;
    max-height: 595px;
    height: 85%;
    margin: auto;
    padding: 0px;
    background: #fff;
    border-radius: 10px;
    box-sizing: border-box;
	overflow: hidden;
    /*overflow-y: auto;*/
}
.bana_modal{
	overflow: hidden;
    overflow-y: auto;
    height: 100%;
}
.btn-close{
	background-color: #fff;
	padding: 20px;
	box-sizing: border-box;
}
.btn-close div{
    font-size: 16px;
    border: 1px solid #a4a4a4;
    background-color: #eee;
    color: #333;
    display: block;
    width: 70%;
    max-width: 300px;
    box-shadow: 2px 2px 0px #c4c4c4ad;
    padding: 10px;
	margin: 0 auto;
    text-align: center;
    border-radius: 5px;
	cursor: pointer;
}
.btn-close div:hover{
	background-color: #ddd;
}

/* モーダル画面 */
/* ↓ブラックフライデー 2025年用 */
.bfriday2025_modal{
	background: #fff;
}
.bfriday2025_md_label{
	font-size: 0;
	text-align: center;
}
.bfriday2025_md_label img{
	width: 100%;
    height: auto;
}
.bfriday2025_md_txt{
    margin: 0 auto;
	font-family: 'Noto Sans JP';
	background-color: #fcdd21;
}
.bfriday2025_md_txt p{
	font-size: 20px;
    line-height: 1.5;
}
.bfriday2025_md_coupon{
	padding: 20px;
    margin: 20px 0;
    box-sizing: border-box;
    background: #000;
}
.bfriday2025_md_coupon img{
	max-width: 100%;
    width: 30%;
    height: auto;
    margin: 3px;
}

/* バナースペース */
.left_banabox a{
    width: 240px;
    height: auto;
    display: block;
    /* background: #eee; */
    box-sizing: border-box;
    position: relative;
	margin-bottom: 5px;
}
.left_banabox a span{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 200px;
    height: 50px;
    margin: auto;
    text-align: center;
    color: #333;
}