/*Common Item Style*/
.item__img img {
	max-width: 100%;
}
.col-item .btn {
    padding: .65rem 1rem;
    background: rgb(12, 54, 101);
    color: #FFF;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    border-radius: 1.85rem;
}
.col-item .btn .af_icon {
    margin-left: 4px;
    font-size: 85%;
}
.col-item .btn .bf_icon {
    margin-right: 12px;
}
.col-item .btn .af_icon svg, .col-item .btn svg {
	fill: #FFF;
}
.bf_offlbl + .amount {
    padding-left: 8px;
}

.bf_offlbl {
    font-size: 1.25rem;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
}
.bf_offlbl .lbl_off, .bf_offlbl .lbl_soto {
    font-size: 70%;
}
.bf_offlbl .lbl_soto {
    padding-left: 1px;
}

.bf_offlbl .lbl_off {
    font-weight: 500;
}

.bf_offlbl > span {
    line-height: 1;
}
.lbl_style01 {
    padding: 0px 4px 0px 6px;
    height: 24px;
    position: relative;
	z-index: 1;
    color: #FFF;
    overflow: hidden;
}
.lbl_style01 .end_lbl, .lbl_style01:before {
	z-index: -1;
	
}
.item__style02 .item__price .amount {
	color: rgb(201, 17, 64);
}
.lbl_style01 .end_lbl:after, .lbl_style01:before {
	content: "";
	position: absolute;
	background: rgb(194, 15, 55);
    background-image: -webkit-repeating-linear-gradient(45deg, rgb(201, 17, 64), rgb(201, 17, 64) 15px, transparent 15px, transparent 30.4px);
    background-image: repeating-linear-gradient(45deg, rgb(201, 17, 64), rgb(201, 17, 64) 2px, transparent 2px, transparent 5px);
}
.lbl_style01:before {
	/* Firefox */
	width: -moz-calc(100% - 14px);
	/* WebKit */
	width: -webkit-calc(100% - 14px);
	/* Opera */
	width: -o-calc(100% - 14px);
	width: calc(100% - 14px);
	height: 100%;
	left: 0;
	top: 0;
	 
}
.lbl_style01 .end_lbl {
	margin-left: -8px;
	height: 18px;
    width: 18px;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	-o-transform:rotate(45deg);
    transform: rotate(45deg);
	position: relative;
	overflow: hidden;
}
.lbl_style01 .end_lbl:after {
	width: 200%;
    height: 200%;
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
    transform: rotate(-45deg);
    right: -100%;
    top: -100%;
    
}
.catch_up p {
    line-height: 1.35;
}
.item_img_inner .catch_up + .item__img {
    padding-top: 14px;
}

.item_img_inner .catch_up {
    padding: 2rem .5rem 0;
}
/*theme colors*/
.bf_offlbl * {
    color: rgb(255, 247, 156);
}
.full-container > .sm-container + .sm-container, .full-container > .mid-container + .sm-container {
    margin-top: 6rem;
}
/*Style Grid*/
.style-grid-01 .row.item__style02 {
    margin-left: 0;
    margin-right: 0;
	    border-radius: 1.65rem;
    background: #FFF;
}
.style-grid-01 .item_img_inner .catch_up {
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 500;
	color: rgb(233, 130, 74);
}
.style-grid-01 .item__img.portrait {
    max-width: 180px;
	margin: 0 auto;
}
.item__img.landscape {
    padding-left: 2rem;
    padding-right: 2rem;
}
.style-grid-01 .item__col-img {
    border-top-left-radius: 1.65rem;
    border-top-right-radius: 1.65rem;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.style-grid-01 .info_inner, .style-grid-01 .row_price {
	border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 1.65rem;
    border-bottom-right-radius: 1.65rem;
}
.style-grid-01 .btn_row .btn {
    width: 100%;
    max-width: 100%;
    height: 56px;
	font-size: 1.25rem;
	background: rgb(219, 62, 14);
}
.style-grid-01 .ttl_inner .brand__name {
	font-family: "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", YuGothic, "æ¸¸ã‚´ã‚·ãƒƒã‚¯", "Yu Gothic", "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: #757575;
}

.row__item.style-grid-01 {
    margin-left: -6px;
    margin-right: -6px;
}
.row__item.style-grid-01 .col-item {
    padding: 3px 6px;
}
.style-grid-01 .item__ttl-wrap, .style-grid-01 .item__style02 .price_grid {
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}
.style-grid-01 .item__ttl-wrap {
    text-align: left;
    padding-top: 1rem;
	padding-bottom: 1rem;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.style-grid-01 .item__style02 .row_price {
	border-top: none;
}
.style-grid-01 .item__style02 .price_grid {
    padding-top: 0;
    
}
.style-grid-01 .item__style02 .price_grid p {
	text-align: left;
}
.style-grid-01 .ttl_inner .item__name {
    font-size: 1.1rem;
}

.style-grid-01 .ttl_inner {
    max-width: 100%;
    width: 100%;
}

.style-grid-01 .ttl_inner .brand__name + .item__name {
    margin-top: 4px;
}
.style-grid-01 .def_price .n_price {
	font-size: 1.15rem;
}
.style-grid-01 .def_price .n_price .tax {
	font-size: 60%;
}
.style-grid-01 .def_price .n_price_lbl + .n_price {
    padding-left: 6px;
}
.row__item.style-grid-01 > .col-item + .col-item {
    margin-top: 0;
}
.row__item.style-grid-01 > .col-item:nth-child(1), .row__item.style-grid-01 > .col-item:nth-child(2) {
    margin-top: 0;
}
@media only screen and (min-width: 62em) {
	.row__item.style-grid-01 > .col-item:nth-child(1), .row__item.style-grid-01 > .col-item:nth-child(2), .row__item.style-grid-01 > .col-item:nth-child(3), .row__item.style-grid-01 > .col-item:nth-child(4) {
    margin-top: 0;
	}
}
.btn {
    text-decoration: none;
    outline: none;
}
.remodal {
    padding: 1rem;
    margin: 0;
    background: none;
}
.remodal-overlay {
	background: rgba(205, 231, 236, .9);
}
.remodal_wraper {
    padding: 0 1rem;
}
.remodal-close {
    background: #CCC;
    border-radius: 100%;
    width: 48px;
    height: 48px;
	z-index: 2;
}
.remodal-close:before, .remodal-close:after {
	content: ' ';
    position: absolute;
    top: 12px;
    left: 24px;
    height: 25px;
    width: 2px;
    background-color: #FFF;
}
.remodal-close:before {
	transform: rotate(45deg);
}
.remodal-close:after {
	transform: rotate(-45deg);
}
.pop-up .item__col-img {
    position: relative;
}
.pop-up .item__col-img:before {
    content: "";
    width: 100%;
    height: 30%;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #FFF;
    /* border-top-left-radius: 1.65rem;
    border-top-right-radius: 1.65rem;
    -webkit-box-shadow: -8px -30px 45px -18px rgba(165,165,165,0.2);
    -moz-box-shadow: -8px -30px 45px -18px rgba(165,165,165,0.2);
    box-shadow: -8px -30px 45px -18px rgba(165,165,165,0.2); */
}
.remodal .catch_up p {
    font-size: 1.05rem;
}
.remodal .item__col-desc * {
    text-align: center;
}
.remodal .item__ttl-wrap {
    padding-top: 1.5rem;
}
.remodal .def_price {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
}
.remodal .special_price > .flex {
	-ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
}
.remodal .item__style02 .special_price {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
	-ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
}
.remodal .item__style02 .special_price .item__price {
    position: relative;
}
.remodal .item__style02 .special_price + div {
    margin-top: 1rem;
}
.remodal .special_price .bf_offlbl {
    padding: 8px 0;
	font-size: 1.15rem;
    position: absolute;
	bottom: 6px;
    left: -52px;
    width: 52px;
    height: 52px;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: visible;
}
.remodal .special_price .bf_offlbl .lbl_num {
    font-size: 125%;
}
.pop-up .special_price .lbl_style01:before {
    width: 100%;
    border-radius: 100%;
}
.remodal .special_price .bf_offlbl:after {
    content: '';
    position: absolute;
    right: 0;
    top: 70%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left-color: rgb(194, 15, 55);
    border-right: 0;
    border-bottom: 0;
    margin-top: -3px;
    margin-right: -3px;
}
.pop-up .item__img.square {
	margin-top: 1.25rem;
    height: 0;
    width: 100%;
    position: relative;
    padding-bottom: 50%;
}
.pop-up .item__img.square img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    font-family: "object-fit: contain;";
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center center;
    object-position: center center;
}
.pop-up div + .btn_row {
    margin-top: 1.5rem;
}
/*Modal Item Style*/
.image_swatch {}

.swatch_img {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
	-ms-flex: 0 1 auto;
  -webkit-box-flex: 0;
  flex: 0 1 auto;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
  text-align: center;
}

.swatch_img .radio_img {
    padding: 0 10px;
}
.swatch_img .radio_img > label {
    width: 30px;
    height: 30px;
    position: relative;
    display: block;
    cursor: pointer;
}
.swatch_img .radio_img > label > .image_swatch {
    background-size: cover;
	background-position: center;
    position: absolute;
    width: 90%;
    height: 90%;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

.swatch_img .radio_img > label {
	border: 1px solid transparent;
	margin: 0 auto;
}

.swatch_img .radio_color > label, .swatch_img .radio_img.radio_color > label > .image_swatch {
    border-radius: 100%;
    overflow: hidden;
}
.radio_img {
    position: relative;
    z-index: 1;
}
.radio_img .opt_name {
    padding-top: 5px;
    font-size: .75rem;
    display: inline-block;
    text-align: center;
    max-width: 80px;
    line-height: 1.15;
}
.radio_img label {
    position: relative;
    z-index: -1;
}
.radio_img input[type=radio] {
   margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}
.radio_img input[type=radio]:checked {
	
}
.radio_img input[type=radio]:checked + label {
	
    border-color: #CCC;
}
.pop-up .item__img.portrait > a {
    position: relative;
    height: 40vh;
}

.pop-up .item__img.portrait > a > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    font-family: "object-fit: contain;";
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center center;
    object-position: center center;
}
@media only screen and (min-width: 768px) {
    #items_2008{
        margin: 0 auto;
    }
}

@media only screen and (max-width: 520px) {
	.style-grid-01 .ttl_inner .brand__name + .item__name {
    font-size: 3.88888vw;
	}
	.sec_grid_listing .style-grid-01.data_items {
	    padding-left: 3px;
    padding-right: 3px;
    margin-left: 0;
    margin-right: 0;
	}
	.row__item.style-grid-01 .col-item {
    padding: 3px;
	}
	.style-grid-01 .item__img.portrait {
		max-width: 110px;
	}
	.sec_grid_listing .mid-container {
    padding: 0;
	}
	.style-grid-01 .item__ttl-wrap, .style-grid-01 .item__style02 .price_grid {
    padding-left: .5rem;
    padding-right: .5rem;
	}
	.style-grid-01 .ttl_inner .brand__name {
    font-size: 3.222222vw;
	}
	.remodal .catch_up p {
    font-size: 4.333333333vw;
	}
	.radio_img .opt_name {
    font-size: 2.444444vw;
	}
	.style-grid-01.remodal .ttl_inner .brand__name + .item__name {
    font-size: 4.66666vw;
	}
	.style-grid-01.remodal .item__ttl-wrap {
    padding-left: 1rem;
    padding-right: 1rem;
	    padding-bottom: 1rem;
	}
	.style-grid-01.remodal .item__price .amount {
    font-size: 6.444444444vw;
	}
	.style-grid-01 .btn_row .btn {
    font-size: 3.666666vw;
    letter-spacing: 0px;
	height: 45px;
	}
	.style-grid-01 .price_grid .n_price_lbl {
    font-size: 3vw;
	}
	.bf_offlbl {
    font-size: 4.222222vw;
	}
	.style-grid-01 .def_price .n_price {
		font-size: 3.8888888vw;
	}
	.style-grid-01 .item__price .amount {
        font-size: 5.6vw;
        padding-left: 0.5vw;
        letter-spacing: -1px;
	}
	.style-grid-01 .item__ttl-wrap {
    padding-bottom: 6px;
	}
	.style-grid-01 .special_price {
    margin-top: 3px;
	}
	.style-grid-01 .item__style02 .price_grid {
    padding-bottom: 1.25rem;
	}
	.style-grid-01 .item_img_inner .catch_up {
    padding-top: 1.25rem;
	}
	.style-grid-01 div + .btn_row {
    margin-top: 8px;
	}
	.item__img.landscape {
    padding-left: 12px;
    padding-right: 12px;
	}
	.remodal .special_price .bf_offlbl {
    width: 40px;
    height: 40px;
    font-size: 4vw;
    left: -42px;
	}
}
@media only screen and (max-width: 380px) {
	.bf_offlbl {
    padding-left: 4px;
	}
	.style-grid-01 .btn_row .btn {
	padding: 0;
    font-size: 3.666666vw;
    height: 45px;
	}
	.style-grid-01 .ttl_inner .brand__name {
    font-size: 3.11111vw;
	}
	.lbl_style01 .end_lbl {
		margin-left: -4vw;
        border: none;
	}
	.style-grid-01 div + .btn_row {
    margin-top: 8px;
	}
	.style-grid-01 .btn_row .btn {
		height: 38px;
	}
	.style-grid-01 .item__price .amount {
    padding-left: 4px;
	}
	.style-grid-01 .item__price .amount {
    padding-left: 4px;
    font-size: 5.666666vw;
    letter-spacing: -1px;
	}
	.style-grid-01 .item__price .amount .tax {
    padding-left: 2px;
	}
}
@media only screen and (max-width: 320px) {
	.style-grid-01 .item__price .amount {
    letter-spacing: -1px;
	}
	.lbl_style01 .end_lbl {
    margin-left: -16px;
	}
	.lbl_style01:before {
    -moz-width: calc(100% - 10px);
    -webkit-width: calc(100% - 10px);
    width: calc(100% - 10px);
    height: 100%;
    left: 0;
    top: 0;
	}
	.bf_offlbl {
    padding-left: 4px;
    padding-right: 2px;
	}
    .style-grid-01 .item__price .amount {
    padding-left: 2px;
	}
}