@charset 'EUC-JP';

/* **********************************************************************
 *
 *       Title:   pc.css
 *
 ********************************************************************** */

/* ranking_slider
======================================================= */

.ranking_slider ~ .swiper-button-prev_out {
    left: -40px;
    z-index: 1;
}

.ranking_slider ~ .swiper-button-next_out {
    right: -40px;
    z-index: 1;
}

/* find_purpose
======================================================= */
.find_purpose .content {
    margin-bottom: 40px;
}
.find_purpose .wrap {
    display: flex;
    margin: 0 0 0 -20px;
}
.find_purpose .wrap > div {
    width: 50%;
    margin: 0 0 0 20px;
}
.find_purpose .find_category ul.items_cat {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    padding: 15px 30px 30px 15px;
    background: #F5F3EF;
    box-sizing: border-box;
}
.find_purpose .find_category ul.items_cat li {
    flex: 0 0 160px;
    text-align: left;
    border: 0;
    margin-left: 15px;
    margin-top: 15px;
    position: relative;
    background: #fff;
}
.find_purpose .find_category ul.items_cat li a {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    font-size: 1.2rem;
    line-height: 1.4;
    padding: 0 8px 0 58px;
    margin: 0;
    height: 50px;
    position: relative;
    z-index: 1;
}
.find_purpose .find_keywords .find_item {
    display: flex;
    flex-direction: column;
    background-color: rgba(134, 135, 139, 0.1);
    padding: 30px;
}
.find_purpose .find_keywords .find_item .search_wrap {
    position: relative;
    width: 100%;
    border: 1px solid #DADBDC;
    border-radius: 3px;
    margin: 0 0 30px;
    line-height: 0;
}
.find_purpose .find_keywords .find_item .search_wrap > input[type="text"] {
    width: 100%;
    height: 40px;
    padding: 10px;
    font-size: 1.4rem;
    position: relative;
    border: none;
}
.find_purpose .find_keywords .find_item .search_wrap > input[type="text"]::placeholder {
    color: #ADADAD;
}
.find_purpose .find_keywords .find_item .search_wrap > input[type="text"]::-ms-input-placeholder {
    color: #ADADAD;
}
.find_purpose .find_keywords .find_item .search_wrap>input[type="text"]:-ms-input-placeholder {
    color: #ADADAD;
}
.find_purpose .find_keywords .find_item .search_wrap > button {
    position: absolute;
    right: 0;
    height: 40px;
    width: 40px;
    border: none;
    background-color: #E1DCD0;
    cursor: pointer;
    transition: all 0.2s;
}
.find_purpose .find_keywords .find_item .search_wrap>button:hover {
    opacity: 0.8;
}
.find_purpose .find_keywords .find_item .search_wrap > button > img {
    display: block;
    margin: auto;
}
.find_purpose .find_keywords .find_item .subTitle {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 1.5;
}
.find_purpose .find_keywords .find_item .keywords_list {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 -10px -10px;
}
.find_purpose .find_keywords .find_item .keywords_list li{
    margin: 0 0 10px 10px;
}
.find_purpose .find_keywords .find_item .keywords_list li a {
    border: 1px solid #DADBDC;
    border-radius: 10px;
    background-color: #fff;
    font-size: 1.3rem;
    padding: 7px;
    display: block;
}
.find_purpose .find_keywords .find_item .keywords_list li a:hover {
    text-decoration: none;
}
.find_purpose .find_keywords .find_item .keywords_list li a.acitve {
    background-color: #000;
    border: 1px solid #000;
    color: #fff;
}
.find_purpose .find_prices .items_cat {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}
.find_purpose .find_prices .items_cat li {
    flex: 0 0 49.7%;
    border: 1px solid #DADBDC;
    margin-left: -1px;
    margin-top: -1px;
    position: relative;
}
.find_purpose .find_prices .items_cat li a {
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    padding: 15px 7px;
    margin: 0;
}
.find_purpose .find_prices .items_cat li a:hover {
    text-decoration: underline;
}
.find_purpose .find_municipality .items {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
}
.find_purpose .find_municipality .items .item {
    align-self: flex-start;
    flex: 0 0 33.4%;
    border: 1px solid #DADBDC;
    margin-left: -1px;
    margin-top: -1px;
    position: relative;
}
.find_purpose .find_municipality .items .item div{
    border: 1px solid #DADBDC;
    margin: -1px;
    position: relative;
}
.find_purpose .find_municipality .items .item dl {
    display: flex;
    height: 100%;
}
.find_purpose .find_municipality .items>div dl:not(:last-child) {
    border-bottom: 1px solid #DADBDC;
}
.find_purpose .find_municipality .items .item dl dt {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #F5F3EF;
    font-weight: bold;
    padding: 15px;
    width: 35%;
    font-size: 1.4rem;
    line-height: 1.5;
}
.find_purpose .find_municipality .items .item dl dd {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 15px;
    text-align: left;
    width: 65%;
}
.find_purpose .find_municipality .items .item dl dd a {
    display: inline-block;
    margin-right: 10px;
    font-size: 1.4rem;
    color: #2A6BB7;
    line-height: 1.5;
    text-decoration: underline;
}
.find_purpose .find_municipality .items .item dl dd a:hover {
    text-decoration: none;
}
.find_purpose .find_municipality .items .item a {
    margin: 0;
}


/* guides
======================================================= */
.guides .items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 -20px -1%;
}
.guides .items li {
    flex-basis: 49%;
    margin: 0 0 20px 1%;
}
.guides .items li.banner {
    background-color: #AF0714;
}
.guides .items li.banner div.btnSet {
    position: relative;
    height: 115px;
}
.guides .items li.banner div.btnSet:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto 0;
    width: 10px;
    height: 10px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.guides .items li.banner div.btnSet.icn_beginner:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_beginner_w.svg');
    background-repeat: no-repeat;
}
.guides .items li.banner div.btnSet.icn_simulation:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_simulation_w.svg');
    background-repeat: no-repeat;
}
.guides .items li.banner div.btnSet.icn_catalog:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_catalog_w.svg');
    background-repeat: no-repeat;
}
.guides .items li.banner div.btnSet.icn_question:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 20px;
    margin: auto 0;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_question_w.svg');
    background-repeat: no-repeat;
}
.guides .items li.banner div.btnSet dl {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    height: 115px;
}
.guides .items li.banner div.btnSet dl dt {
    margin: 0 auto 15px;
    background-color: #fff;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    color: #AF0714;
    text-align: center;
    display: flex;
    justify-content: center;
    line-height: 1;
    padding: 5px 10px;
    font-size: 1.2rem;
    font-weight: bold;
    position: relative;
}
.guides .items li.banner div.btnSet dl dt:before {
    content: "";
    position: absolute;
    bottom: -10px;
    z-index: 1;
    width: 0;
    height: 0;
    border-top: solid 5px transparent;
    border-right: solid 5px transparent;
    border-bottom: solid 5px transparent;
    border-left: solid 5px #fff;
    transform: rotate(90deg);
}
.guides .items li.banner div.btnSet dl dd {
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
    text-align: center;
}
.guides .items li.banner div.btnSet dl dd span {
    font-size: 1.2rem;
    display: block;
}
.guides .items li.banner a {
    display: block;
}
.guides .items li.banner a:hover {
    text-decoration: none;
}

/* news
======================================================= */
.news dl {
     border-bottom: 1px dotted #DADBDC;
     display: flex;
     text-align: left;
     margin-bottom: 20px;
     padding-bottom: 20px;
}
.news dl dt {
     flex-basis: 150px;
     color: #86878B;
     font-size: 2.0rem;
     line-height: 1.75;
}
.news dl dd {
     width: 770px;
     font-size: 2.0rem;
     line-height: 1.8;
}

/* credit
======================================================= */
.credit h2{
    font-size: 2.0rem;
}

.credit .cards{
    justify-content: space-between;
}

/* recente_gifts
======================================================= */
.recente_gifts {
    margin-top: 30px;
    margin-bottom: 80px;
}
.recente_gifts .container {
    width: 1200px;
    margin: 0 auto;
}
.recente_gifts .items {
    margin: 0 auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 -30px -30px;
}
.recente_gifts .items > *{
    margin: 0 0 30px 30px;
}
.recente_gifts .heading:before {
    display: none;
}

.recente_gifts .items li a {
    position: relative;
    display: block;
    width: 122px;
    height: 122px;
    overflow: hidden;
}
.recente_gifts .items li a .soldout {
    width: 100%;
    height: inherit;
}
.recente_gifts .items li a .soldout::after {
    text-align: center;
    position: absolute;
    content: "売り切れ";
    bottom: 0;
    left: 0;
    background: #1C1C1C;
    color: #fff;
    padding: 10px;
    width: 100%;
}
.recente_gifts .items li a img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    max-width: 100%;
    max-height: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: contain ) {
    .recente_gifts .items li a img {
        -o-object-fit: contain;
        object-fit: contain;
    }
}

@supports (-ms-ime-align: auto) { /* Edge */
    .recente_gifts .items li a img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        max-width: 100%;
        max-height: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}
.recente_gifts .heading h2 {
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1;
    text-align: left;
    color: #1c1c1c;
}
.recente_gifts .content {
    margin-top: 30px;
}


/* breadcrumb
======================================================= */
.breadcrumb .container {
    max-width: 1200px;
    width: 100%;
    margin: 30px auto;
    color: #86878B;
    font-size: 1.2rem;
}
.breadcrumb .container a {
    display: inline-block;
    color: #86878B;
    text-decoration: underline;
}
.breadcrumb .container a:hover {
    text-decoration: none;
}


/* detail_info
======================================================= */
.detail_info{
    width: 100%;
    margin-bottom: 20px;
}

.detail_info > div {
    border: 1px solid #DADBDC;
    margin-left: -1px;
    margin-top: -1px;
    position: relative;
}
.detail_info > div > dl {
}
.detail_info > div > dl:not(:last-child) {
    border-bottom: 1px solid #DADBDC;
}
.detail_info > div > dl dt {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(134, 135, 139, 0.1);
    font-weight: bold;
	color:#202020;
    padding: 15px;
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.5;
}
.detail_info > div > dl dd {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 15px;
    text-align: left;
}

.detail_info > div > dl dd span{
    color: #A7052F;
}

/* cart
======================================================= */
.cart {
    padding: 30px;
}
.cart.full {
    width: 1200px;
    padding: 30px 50px;
}
.cart .cart_text > p {
    font-size: 1.4rem;
    color: #333;
}
.cart .cart_items {
    margin: 0;
    padding: 0;
    list-style: none;
}
.cart .cart_items > li {
    margin-top: 20px;
    background-color: #fff;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: 100%;
}
.cart .cart_items > li > div{
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
.cart .cart_items>li>div:nth-child(1) > div{
    flex-shrink: 0;
    position: relative;
    width: 145px;
    height: 145px;
    margin-right: 15px;
}

.cart .cart_items>li>div:nth-child(1) img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    .cart .cart_items>li>div:nth-child(1) img {
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
@supports (-ms-ime-align: auto) { /* Edge */
    .cart .cart_items>li>div:nth-child(1) img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}
.cart .cart_items>li>div:nth-child(2) {
    padding: 0 30px 0 0;
    flex-grow: 1;
    border-right: 1px dotted #DADBDC;
    width: 474px
}
.cart .cart_items>li>div:nth-child(2)>div {
    width: 444px
}
.cart .cart_items>li>div:nth-child(2) .title {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 10px;
    color: #202020;
}
.cart .cart_items>li>div:nth-child(2) .num{
    display: flex;
    align-items: center;
}
.cart .cart_items>li>div:nth-child(2) .number {
    color: rgba(128, 128, 128, 0.9);
    font-size: 1.5rem;
    text-indent: -5em;
    margin: 0 2em 0 0;
    padding: 0 0 0 5em;
}
.cart .cart_items>li>div:nth-child(2) .number span {
    margin-left: 1em;
}
.cart .cart_items>li>div:nth-child(2) .point{
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_items>li>div:nth-child(2) .point span{
    font-weight: bold;
    font-size: 2.4rem;
}

.cart .cart_items>li>div:nth-child(2) .warning{
    margin: 15px 0 0;
    font-size: 1.4rem;
    line-height: 1.8;
    color: #AF0714;    
}
.cart .cart_items>li>div:nth-child(2) .number + .txt {
    margin: 15px 0 0;
}
.cart .cart_items>li>div:nth-child(2) .txt {
    font-size: 1.5rem;
}
.cart .cart_items>li>div:nth-child(3) {
    border-right: 1px dotted #DADBDC;
    padding: 0 25px;
    width: 275px;
}
.cart .cart_items>li>div:nth-child(3)>div {
    width: 224px;
}
.cart .cart_items>li>div:nth-child(3) .price {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
    justify-content: flex-end;
}
.cart .cart_items>li>div:nth-child(3) .price > span {
    font-weight: bold;
    font-size: 2.4rem;
    margin-left: 20px;
    position: relative;
}
.cart .cart_items>li>div:nth-child(3) .price>span:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 3px;
    left: -15px;
    margin: auto 0;
    font-size: 2rem;
}
.cart .cart_items>li>div:nth-child(3) .tax{
    text-align: right;
}
.cart .cart_items>li>div:nth-child(3) .tax>span:before {
    content: "\";
    font-weight: normal;
}
.cart .cart_items>li>div:nth-child(4) {
    padding: 0 0 0 30px;
    width: 150px;
}
.cart .cart_items>li>div:nth-child(4)>div {
    width: 120px;
}
.cart .cart_items>li>div .quantity {
    display: flex;
    justify-content: flex-end;
    font-size: 1.5rem;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_items>li>div .quantity .wrap_select {
    background-color: #f3f3f3;
    overflow: hidden;
    min-width: 70px;
    margin: 10px 0 10px 10px;
    text-align: center;
    display: block;
    position: relative;
    border: 1px solid #f3f3f3;
    border-radius: 2px;
}
.cart .cart_items>li>div .quantity .wrap_select select {
    width: 100%;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 10px 30px 9px 12px;
    color: #202020;
    font-size: 1.5rem;
}
.cart .cart_items>li>div .quantity .wrap_select select::-ms-expand {
    display: none;
}
.cart .cart_items>li>div .quantity .wrap_select::before {
    position: absolute;
    top: 19px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #9B8F72;
    pointer-events: none;
}
.cart .cart_items>li>div .quantity label {
	margin: 22px 0 0;
	font-size: 1.5rem;
}
.cart .cart_items>li>div .quantity label.end {
	margin: 0;
	width: 150px;
	text-align: center;
}
.cart .cart_items>li>div .quantity .wrap_input {
    margin: 10px 0 10px 10px;
}
.cart .cart_items>li>div .quantity .wrap_input input[type="text"] {
    width: 100%;
    background: #eee;
    border: 1px solid #eee;
}
.cart .cart_items>li>div .quantity .wrap_input .notes {
    display: block;
    margin: 10px 0 0;
    font-size: 1.2rem;
    color: #808080;
    white-space: normal;
}

.cart .cart_items>li>div.course {
    padding-right: 0;
    border-right: none;
    width: 425px;
}

.cart .cart_items>li>div.course>div {
    width: 400px;
}
.cart .cart_items>li>div.course .quantity .wrap_select,
.cart .cart_items>li>div .quantity .wrap_input {
    width: 318px;
}
.cart .cart_items>li>div.course .quantity .wrap_select.auto {
    width: auto;
}
.cart .cart_items .cutlery {
     display: flex;
     align-items: center;
     padding: 15px 0 0;
}
.cart .cart_items .cutlery .price {
     display: flex;
     align-items: center;
     font-size: 1.5rem;
     flex-wrap: nowrap;
     white-space: nowrap;
     color: #333;
     margin: 0 2em 0 0
}
.cart .cart_items .cutlery .price > span {
     font-weight: bold;
     font-size: 2.4rem;
     margin-left: 20px;
     position: relative;
}
.cart .cart_items .cutlery .price>span:before {
     content: "\";
     font-weight: normal;
     position: absolute;
     bottom: 3px;
     left: -15px;
     margin: auto 0;
     font-size: 2rem;
}
.cart .cart_items .cutlery .tax{
     text-align: right;
}
.cart .cart_items .cutlery .tax>span:before {
     content: "\";
     font-weight: normal;
}

.cart .cart_items>li.cart_select>div:nth-child(2){
    border-right: 0;
}
.cart .cart_items>li>div.item_detail_radio{
    display: block;
    border-left: 1px dotted #DADBDC;
    border-right: 0;
}
.cart .cart_items>li>div.item_detail_radio .tit{
    font-size: 1.6rem;
    font-weight: bold;
}
.cart .cart_items>li>div.item_detail_radio label{
    font-size: 1.6rem;
    padding-left: 26px;
}
.cart .cart_items>li>div.item_detail_radio input[type="radio"].custom+label::before{
    width: 16px;
    height: 16px;
    top: 6px;
}
.cart .cart_items>li>div.item_detail_radio input[type="radio"].custom:checked+label::after{
    width: 8px;
    height: 8px;
    top: 10px;
    left: 4px;
}
.cart .cart_items>li>div.item_detail_radio.radio_kg > div{
    display: none;
}
.cart .cart_items>li>div.item_detail_radio.radio_kg > div.show{
    display: block;
}
.cart .cart_items a {
    text-decoration: underline;
}
.cart .cart_items a:hover {
    text-decoration: none;
}

.cart .cart_calculation {
    margin: 0;
    padding: 0;
    list-style: none;
}
.cart .cart_calculation > li {
    background-color: #fff;
    padding: 10px 20px;
    margin-bottom: 20px;
}
.cart .cart_calculation>li>.wrap:first-child {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    width: 100%;
    padding-bottom: 10px;
}
.cart .cart_calculation>li>.wrap:first-child>div:nth-child(1){
    position: relative;
    width: 125px;
    height: 125px;
    overflow: hidden;
    flex-shrink: 0;
    margin-right: 15px;
}
.cart .cart_calculation>li>.wrap:first-child>div:nth-child(1) img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    max-width: 100%;
    max-height: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    .cart .cart_calculation>li>.wrap:first-child>div:nth-child(1) img {
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
@supports (-ms-ime-align: auto) { /* Edge */
    .cart .cart_calculation>li>.wrap:first-child>div:nth-child(1) img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        max-width: 100%;
        max-height: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}
.cart .cart_calculation>li>.wrap:first-child>div:nth-child(2) {
    padding: 0 30px 0 0;
    flex-grow: 1;
}
.cart .cart_calculation>li>.wrap:first-child>div:nth-child(2) .title {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 10px;
    color: #202020;
}
.cart .cart_calculation>li>.wrap:first-child>div:nth-child(2) .number {
    color: rgba(128, 128, 128, 0.9);
    font-size: 1.5rem;
}
.cart .cart_calculation>li>.wrap:last-child {
    border-top: 1px solid #DADBDC;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: nowrap;
    width: 100%;
    padding: 10px 0 0;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(1),
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(2) {
    align-self: stretch;
    display: flex;
    align-items: center;
    padding: 0 30px 0 0;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(1) .price,
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(2) .price {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(1) .price > span,
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(2) .price > span {
    font-weight: bold;
    font-size: 1.8rem;
    margin-left: 20px;
    position: relative;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(2) .price > span{
    margin-left: 0;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(1) .price>span:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 0px;
    left: -15px;
    margin: auto 0;
    font-size: 1.8rem;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3),
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) form {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 1.5rem;
    line-height: 1;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 1.5rem;
    line-height: 1;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity .wrap_select {
    background-color: #f3f3f3;
    overflow: hidden;
    min-width: 80px;
    margin: 0;
    text-align: center;
    display: block;
    position: relative;
    border: 1px solid #f3f3f3;
    border-radius: 2px;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity label {
    font-size: 1.4rem;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity .wrap_select select {
    width: 100%;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 10px 51px 8px 12px;
    color: #202020;
    font-size: 1.5rem;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity .wrap_select select::-ms-expand {
    display: none;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(3) .quantity .wrap_select::before {
    position: absolute;
    top: 19px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #9B8F72;
    pointer-events: none;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(4),
.cart .cart_calculation>li>.wrap:last-child>div form div:nth-child(2) {
    padding: 0 0 0 15px;
}
.cart .cart_calculation>li>.wrap:last-child>div:nth-child(5),
.cart .cart_calculation>li>.wrap:last-child>div form div:nth-child(3) {
    padding: 0 0 0 15px;
}

/*aaaar・圜*/
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) {
    padding: 0;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 1.5rem;
    line-height: 1;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity .wrap_select {
    background-color: #f3f3f3;
    overflow: hidden;
    min-width: 80px;
    margin: 0;
    text-align: center;
    display: block;
    position: relative;
    border: 1px solid #f3f3f3;
    border-radius: 2px;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity label {
    font-size: 1.4rem;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity .wrap_select select {
    width: 100%;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 10px 51px 8px 12px;
    color: #202020;
    font-size: 1.5rem;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity .wrap_select select::-ms-expand {
    display: none;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(1) .quantity .wrap_select::before {
    position: absolute;
    top: 19px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #9B8F72;
    pointer-events: none;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(2) {
    padding: 0 0 0 15px;
}
.cart .cart_calculation>li>.wrap:last-child>form div:nth-child(3) {
    padding: 0 0 0 15px;
}
/*aaaa*/

.cart .cart_calculation .btn_delete {
    border: 1px solid #DADBDC;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    line-height: 1;
    width: 80px;
    height: 42px;
    background: #fff;
}
.cart .cart_calculation .btn_delete span {
    margin-left: 5px;
    font-size: 1.5rem;
}
.cart .cart_calculation .btn_more {
    border: 1px solid #DADBDC;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    line-height: 1;
    width: 145px;
    height: 42px;
    background: #fff;
}
.cart .cart_calculation .btn_more a {
    width: 100%;
    height: 100%;
    display: flex;
    border: none;
    justify-content: center;
    align-items: center;
    appearance: none;
    transition: all 0.2s ease-out;
    text-decoration: none;
}
.cart .cart_calculation_total {
    display: flex;
}
.cart .cart_calculation_total > p {
    display: flex;
    align-items: center;
    font-size: 1.6rem;
    font-weight: bold;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
    margin-left: auto;
}
.cart .cart_calculation_total > p > span {
    font-weight: bold;
    font-size: 2.6rem;
    margin-left: 20px;
    position: relative;
}
.cart .cart_calculation_total > p > span:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 0;
    left: -15px;
    margin: auto 0;
    font-size: 2.4rem;
}
.cart .cart_calculation_total > p > span.point{
    margin-left: 0;
    font-size: 2.0rem;
}
.cart .cart_calculation_total > p > span.point:before{
    display: none;
}
.cart .cart_calculation_total > p > span.point:after{
    content: "pt";
    display: inline-block;
    font-size: 1.6rem;
    font-weight: normal;
}

.cart .cart_calculation_note{
    text-align: right;
}
.cart .cart_btn {
    width: 440px;
    height: 72px;
    margin: 20px auto 10px;
}
.cart .cart_btn button,
.cart .cart_btn a {
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 2rem;
    display: flex;
    border: none;
    justify-content: center;
    align-items: center;
    background-color: #AF0714;
    appearance: none;
    transition: all 0.2s ease-out;
}
.cart .cart_btn button:hover,
.cart .cart_btn a:hover {
    opacity: 0.8;
    text-decoration: none;
}
.cart .cart_btn button:before,
.cart .cart_btn a:before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 28px;
    background-image: url('/shopping/pc/common/img/icons/ico_cart_in.png');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 10px;
}
.cart .cart_btn.btn_large {
    width: 540px;
    margin: 20px auto;
}
.cart .cart_btn.btn_large a {
    font-size: 1.8rem;
    flex-direction: column;
}
.cart .cart_btn.btn_large a span {
    display: block;
    font-size: 1.2rem;
}
.cart .cart_btn.btn_large a:before {
    display: none;
}
.cart .amazon_btn{
    text-align: center;
    padding: 35px 0 0;
}
.cart .amazon_btn > p{
    font-size: 1.5rem;
    font-weight: bold;
}

.cart .amazon_btn > a{
    margin: 13px 0 20px;
}

.cart .amazon_btn > p.note{
    color: #808080;
    font-weight: normal;
}
.cart_txt_include{
    margin-bottom: 2rem;
}

.cart_txt_include p{
    font-size: 1.8rem;
    line-height: 1.8;
}

.cart_txt_include .warning{
    color: #AF0714;   
}

ul.cart_items_include{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 -30px;
}

ul.cart_items_include li{
    display: flex;
    justify-content: space-between;
    width: 525px;
    background: #fff;
    margin: 0 0 30px 30px;
    padding: 20px;
    box-siding: border-box;
}
ul.cart_items_include>li>div:nth-child(1){
    flex-shrink: 0;
    position: relative;
    width: 145px;
    height: 145px;
    margin-right: 15px;
}

ul.cart_items_include>li>div:nth-child(1) img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    ul.cart_items_include>li>div:nth-child(1) img {
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
@supports (-ms-ime-align: auto) { /* Edge */
    ul.cart_items_include>li>div:nth-child(1) img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}

ul.cart_items_include>li>div:nth-child(2){
    width: 478px;
}

ul.cart_items_include>li>div:nth-child(2) .title {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 10px;
    color: #202020;
}

ul.cart_items_include>li>div:nth-child(2) .title a{
    text-decoration: underline;
}

ul.cart_items_include>li>div:nth-child(2) .title a:hover{
    text-decoration: none;
}

ul.cart_items_include>li>div:nth-child(2) .number {
    color: rgba(128, 128, 128, 0.9);
    font-size: 1.5rem;
    text-indent: -5em;
    padding: 0 0 0 5em;
}

ul.cart_items_include>li>div:nth-child(2) .number span {
    margin-left: 1em;
}

ul.cart_items_include>li>div:nth-child(2) .warning{
    margin: 0 0 15px;
    font-size: 1.4rem;
    line-height: 1.8;
    color: #AF0714;    
}

ul.cart_items_include>li>div:nth-child(2) .yagou{
    margin: 0 0 15px;
    font-size: 1.4rem;
    line-height: 1.8;
    color: #333;
}

ul.cart_items_include>li>div:nth-child(2) .item{
    font-size: 1.4rem;
    margin: 0 0 20px;
}

ul.cart_items_include>li>div:nth-child(2) .item .price {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    flex-wrap: nowrap;
    white-space: nowrap;
    color: #333;
}
ul.cart_items_include>li>div:nth-child(2) .item .price > span {
    font-weight: bold;
    font-size: 2.4rem;
    margin-left: 20px;
    position: relative;
}
ul.cart_items_include>li>div:nth-child(2) .item .price>span:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 3px;
    left: -15px;
    margin: auto 0;
    font-size: 2rem;
}

ul.cart_items_include>li>div:nth-child(2) .item .quantity{
    display: flex;
    align-items: center;
}

ul.cart_items_include>li>div:nth-child(2) .item .quantity label{
    font-size: 1.4rem;
}

ul.cart_items_include>li>div:nth-child(2) .item .quantity .wrap_select {
    background-color: #f3f3f3;
    overflow: hidden;
    min-width: 110px;
    margin: 0 0 0 10px;
    text-align: center;
    display: block;
    position: relative;
    border: 1px solid #f3f3f3;
    border-radius: 2px;
}
ul.cart_items_include>li>div:nth-child(2) .item .quantity .wrap_select select {
    width: 100%;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    padding: 10px 51px 9px 12px;
    color: #202020;
    font-size: 1.5rem;
}
ul.cart_items_include>li>div:nth-child(2) .item .quantity .wrap_select select::-ms-expand {
    display: none;
}
ul.cart_items_include>li>div:nth-child(2) .item .quantity .wrap_select::before {
    position: absolute;
    top: 19px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #9B8F72;
    pointer-events: none;
}

ul.cart_items_include>li>div:nth-child(2) .note{
    font-size: 1.4rem;
}

ul.cart_items_include>li>div:nth-child(2) .note .warning{
    font-size: 1.3rem;
    margin-bottom: 0;
}

/* soldout
======================================================= */

.img_box {
    position: relative;
}

.soldout::after {
    text-align: center;
    position: absolute;
    content: "売り切れ";
    bottom: 0;
    left: 0;
    background: #1C1C1C;
    color: #fff;
    padding: 10px;
    width: 100%;
	opacity: 0.9;
}

.fewleft::after {
    text-align: center;
    position: absolute;
    content: "残り僅か";
    bottom: 0;
    left: 0;
    background: #FF0000;
    color: #fff;
    padding: 10px;
    width: 100%;
	opacity: 0.8;
}

.spcdayok::after {
    text-align: center;
    position: absolute;
    font-size: 1.2rem;
    content: "お届け日指定可";
    bottom: 5px;
    left: 5px;
    background: #FF0000;
    color: #fff;
    padding: 5px;
    width: 45%;
	opacity: 0.7;
}

/* reviews
======================================================= */
.reviews .heading2 {
    border-bottom: 1px solid #E5E2E2;
    position: relative;
    margin-bottom: 0;
    bottom: 0;
    display: flex;
    align-items: center;
}
.reviews .heading2:after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    border-bottom: 1px solid #9B8F72;
    width: 40px;
    padding-bottom: 20px;
}
.reviews .heading2 h2 {
    font-size: 2.8rem;
    font-weight: bold;
    color: #202020;
    padding-bottom: 20px;
}
.reviews .heading2 .rating {
    display: flex;
    align-items: center;
    padding-bottom: 20px;
}
.reviews .heading2 .rating .score {
    font-size: 2rem;
    color: #333;
    margin: 0 10px;
    font-weight: bold;
}
.reviews .heading2 .btn_reviews {
    margin-left: auto;
    margin-bottom: 15px;
    border: 1px solid #DADBDC;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    flex-direction: row;
    font-size: 1.5rem;
    line-height: 1;
    height: 43px;
}
.reviews .heading2 .btn_reviews span {
    margin-left: 5px;
}
.reviews .heading2 .btn_reviews span a {
    color: #000;
}
.reviews .rating {
    font-size: 1.5rem;
    color: #86878B;
}
.reviews .rating .star5_rating {
    position: relative;
    z-index: 0;
    display: inline-block;
    white-space: nowrap;
}
.reviews .rating .star5_rating:before,
.reviews .rating .star5_rating:after {
    content: '';
    font-size: 1.5rem;
}
.reviews .rating .star5_rating:after {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #C5BB16;
}
.reviews .rating .star5_rating[data-rate="5"]:after {
    width: 100%;
}
.reviews .rating .star5_rating[data-rate="4.5"]:after {
    width: 90%;
}
.reviews .rating .star5_rating[data-rate="4"]:after {
    width: 80%;
}
.reviews .rating .star5_rating[data-rate="3.5"]:after {
    width: 70%;
}
.reviews .rating .star5_rating[data-rate="3"]:after {
    width: 60%;
}
.reviews .rating .star5_rating[data-rate="2.5"]:after {
    width: 50%;
}
.reviews .rating .star5_rating[data-rate="2"]:after {
    width: 40%;
}
.reviews .rating .star5_rating[data-rate="1.5"]:after {
    width: 30%;
}
.reviews .rating .star5_rating[data-rate="1"]:after {
    width: 20%;
}
.reviews .rating .star5_rating[data-rate="0.5"]:after {
    width: 10%;
}
.reviews .rating .star5_rating[data-rate="0"]:after {
    width: 0;
}
.reviews .rating a {
    text-decoration: none;
}
.reviews .rating a:hover {
    text-decoration: underline;
}
.reviews .content {
    margin: 30px 20px 30px 50px;
    height: 480px;
    overflow-y: auto;
}
.reviews .content > .wrap {
    display: flex;
    flex-direction: row;
    border-bottom: 1px dotted #DADBDC;
    padding: 30px 0 20px;
    margin-right: 20px;
}
.reviews .content>.wrap div{
    width: 928px;
}
.reviews .content>.wrap div:first-child {
    width: 150px;
    flex-grow: 1;
    margin-right: 15px;
}
.reviews .content>.wrap div:last-child h3 {
    font-size: 2rem;
    color: #202020;
    margin-bottom: 15px;
}
.reviews .content>.wrap div:last-child p {
    line-height: 2;
    font-size: 1.5rem;
}
.reviews .update {
    font-size: 1.2rem;
    color: #86878B;
    margin-bottom: 15px;
}
.reviews .name {
    color: #333;
}

/* local_municipality
======================================================= */
.local_municipality {
    padding: 50px 50px 0;
}
.local_municipality .heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    width: 100%;
    border: none;
    margin-bottom: 30px;
}
.local_municipality .heading:after {
    border: none;
}
.local_municipality .heading:before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_municipal.svg');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 15px;
}
.local_municipality .heading h2 {
    margin: 0 auto 0 0;
    font-size: 2.8rem;
    font-weight: 500;
    line-height: 1;
    text-align: left;
    padding-bottom: 0;
    color: #202020;
}
.local_municipality .content {
    background-color: #fff;
}
.local_municipality .content a {
    display: block;
}
.local_municipality .content .wrap {
    display: flex;
    flex-direction: row;
}
.local_municipality .content .wrap:not(:last-child) {
    margin-bottom: 20px;
}
.local_municipality .content .wrap>div:first-child {
     flex-grow: 1;
     width: 288px;
}
.local_municipality .content .wrap>div:last-child {
     width: 812px;
     padding: 30px;
     box-sizing: border-box;
}
.local_municipality .content h3 {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
    text-align: left;
    margin-bottom: 20px;
    color: #202020;
}
.local_municipality .content h3:before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 15px;
    background-image: url('/shopping/pc/common/img/icons/inc_arrow.svg');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 5px;
}
.local_municipality .content p {
    line-height: 2;
}

/* recommend_gifts
======================================================= */
.recommend_gifts {
    padding: 50px;
}
.recommend_gifts .heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    width: 100%;
    border: none;
    margin-bottom: 30px;
}
.recommend_gifts .heading:after {
    border: none;
}
.recommend_gifts .heading:before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_recommend.svg');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 15px;
}
.recommend_gifts .heading h2 {
    margin: 0 auto 0 0;
    font-size: 2.8rem;
    font-weight: 500;
    line-height: 1;
    text-align: left;
    padding-bottom: 0;
    color: #202020;
}
.recommend_gifts .content .items {
     display: flex;
     flex-wrap: wrap;
     justify-content: flex-start;
     width: 1111px;
     margin: 0 0 -60px -11px;
}
.recommend_gifts .content .items li {
     width: 211px;
     margin: 0 0 60px 11px;
}
.recommend_gifts .content .items li a {
    display: block;
}
.recommend_gifts .content .items li figure {
    margin: 0;
}
.recommend_gifts .content .items li figure img {
    width: 100%;
}
.recommend_gifts .content .items li figure figcaption {
    font-size: 1.2rem;
    margin: 0;
    padding: 5px 0;
    line-height: 1.5;
    display: block;
}

/* home
======================================================= */
.home .keyVisual .container {
    min-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 20px 0 30px;
    overflow: hidden;
}
.home .keyVisual .item_slider div {
    max-width: 700px;
}
.home .keyVisual .container .swiper-button-prev_out{
    left: 20.4%;
    z-index: 10;
}
.home .keyVisual .container .swiper-button-next_out{
    right: 20.4%;
    z-index: 10;
}

.home .keyVisual .container .swiper-pagination{
    width: 100%;
    bottom: -20px;
    line-height: 0;
}

.home .keyVisual .container .swiper-pagination .swiper-pagination-bullet{
    width: 10px;
    height: 10px;
    background: #DEDBDB;
    margin: 0 5px;
    opacity: 1;
}

.home .keyVisual .container .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background: #9B8F72;
    opacity: 1;
}

.home .bannerAds > .container {
    border: 1px solid #DADBDC;
    padding: 20px;
    width: 1200px;
    margin: 40px auto;
}
.home .bannerAds > .container ul {
    list-style: none;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width: 840px;
}
.home .bannerAds > .container ul li{
    width: 430px;
    box-sizing: border-box;
}
.home .bannerAds > .container ul li:first-child{
    margin: 0 20px 0 0;
}
.home .bannerAds > .container ul li a {
    text-decoration: underline;
    color: #2A6BB7;
    transition: all 0.2s;
    display: block;
}
.home .bannerAds>.container ul li a:hover {
    opacity: 0.8;
    text-decoration: none;
}
.home .bannerAds > .container ul li figure {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.home .bannerAds > .container ul li figure img {
    width: 50px;
    height: 50px;
}
.home .bannerAds > .container ul li figure > figcaption {
    padding: 10px;
    line-height: 1.5;
}
.home .main > .container {
     margin-bottom: 70px;
}
.home .main > .container.news{
     margin-bottom: 10px;
}

/* detail
======================================================= */
.detail .detail_tab{
    margin: 0 0 10px;
}

.detail .detail_tab > a {
    font-size: 2.2rem;
    line-height: 1;
    text-decoration: underline;
}
.detail .detail_tab > a:hover {
    text-decoration: none;
}
.detail .detail_tab > a:before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url('/shopping/pc/common/img/icons/icn_municipal.png');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 10px;
}
.detail>.container:not(:last-child) {
    margin-bottom: 60px;
}
.detail > .container > .wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1200px;
}
.detail > .container > .wrap > div {
    width: 50%;
    box-sizing: border-box;
}
.detail > .container > .wrap > div.h_o {
    width: 100%;
}
.detail > .container > .wrap > div .cards{
     width: 398px;
}
.detail > .container > .wrap > div.h_o .cards{
    width: 100%;
}
.detail > .container > .wrap > div .cards img{
     margin: 0 10px 10px 0;
}
.detail > .container > .wrap > div .cards img:last-child {
     margin: 0 0 10px 0;
}
.detail>.container>.wrap>div:first-child {
    padding-right: 20px;
}
.detail>.container>.wrap>div:last-child {
    padding-left: 20px;
}
.detail > .container .detail_main {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.detail>.container .detail_main>div:first-child {
    width: 660px;
}
.detail>.container .detail_main>div:last-child {
    width: 540px;
}
.detail > .container .swiper_content .detail_single{
    text-align: center;
}
.detail > .container .swiper_content .detail_single img{
    display: inline;
}
.detail > .container .detail_main .content {
    margin-left: 90px;
}
.detail>.container .detail_main .content .page_title {
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: 0px solid #DADBDC;
}
.detail>.container .detail_main .content .page_title h1{
    line-height: 1.4;
    margin: 0;
}
.detail>.container .detail_main .content>div:last-child {
    padding-top: 30px;
    display: flex;
    align-items: center;
    margin: 0 0 -10px -10px;
}
.detail>.container .detail_main .content>div:last-child > *{
    margin: 0 0 10px 10px;
}
.detail > .container .detail_main .content .lead {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2rem;
    line-height: 1.8;
    color: #202020;
    margin-bottom: 20px;
}
.detail > .container .detail_main .content .price {
    font-size: 1.4rem;
}
.detail > .container .detail_main .content .price > span {
    font-weight: bold;
    font-size: 2.6rem;
}
.detail>.container .detail_main .content .price>span:before {
    content: "\";
    font-weight: normal;
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px;
}
.detail>.container .detail_main .content .price>span:nth-child(2) {
    font-weight: bold;
    font-size: 2.6rem;
}
.detail>.container .detail_main .content .price>span:nth-child(2):before {
    display: none;
}
.detail > .container .detail_main .content .rating {
    margin-top: 10px;
    font-size: 1.5rem;
    color: #86878B;
}
.detail > .container .detail_main .content .rating .star5_rating {
    position: relative;
    z-index: 0;
    display: inline-block;
    white-space: nowrap;
}
.detail>.container .detail_main .content .rating .star5_rating:before,
.detail>.container .detail_main .content .rating .star5_rating:after {
    content: '';
    font-size: 1.5rem;
}
.detail>.container .detail_main .content .rating .star5_rating:after {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #C5BB16;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="5"]:after {
    width: 100%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="4.5"]:after {
    width: 90%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="4"]:after {
    width: 80%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="3.5"]:after {
    width: 70%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="3"]:after {
    width: 60%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="2.5"]:after {
    width: 50%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="2"]:after {
    width: 40%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="1.5"]:after {
    width: 30%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="1"]:after {
    width: 20%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="0.5"]:after {
    width: 10%;
}
.detail>.container .detail_main .content .rating .star5_rating[data-rate="0"]:after {
    width: 0;
}
.detail > .container .detail_main .content .rating a {
    text-decoration: underline;
}
.detail>.container .detail_main .content .rating a:hover {
    text-decoration: none;
}
.detail>.container ul.tag_list{
    display: flex;
    font-size: 1.5rem;
    padding: 20px 0 10px;
}
.detail>.container ul.tag_list li{
    color: #fff;
    background: #434343;
    margin: 0 10px 10px 0;
    padding: 6px 8px;
}
.detail>.container .amazon_pay:before {
    content: "";
    display: inline-block;
    width: 60px;
    height: 38px;
    background-image: url('/shopping/pc/common/img/icons/ico_amazon_pay.png');
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 15px;
}
.detail > .container .detail_main .content .favorite {
    width: 50%;
}
.detail > .container .detail_main .content .favorite a {
    border: 1px solid #DADBDC;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    line-height: 1;
    height: 43px;
}
.detail > .container .detail_main .content .favorite a span {
    margin-left: 5px;
}
.detail > .container .detail_main .content .share {
    border: 1px solid #f3f3f3;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    font-size: 1.3rem;
    margin: 0 0 -5px -5px;
    background-color: #f3f3f3;
    width: 50%;
    height: 50px;
}
.detail > .container .detail_main .content .share > span {
    margin-right: auto;
}
.detail > .container .detail_main .content .share > * {
    margin: 0 0 5px 5px;
}
.detail > .container .detail_main .detail_slider {
    width: 660px;
    height: 412px;
}
.detail > .container .detail_main .detail_slider img {
    position: absolute;
    width: 100%;
    height: auto!important;
    top: 50%;
    left: 50%;
    max-width: 100%;
    max-height: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: contain ) {
    .detail > .container .detail_main .detail_slider img {
        height: auto;
        -o-object-fit: contain;
        object-fit: contain;
    }
}

@supports (-ms-ime-align: auto) { /* Edge */
    .detail > .container .detail_main .detail_slider img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        max-width: 100%;
        max-height: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}
.detail > .container .detail_main .swiper-button-prev_out {
    left: -30px;
    z-index: 10;
}
.detail > .container .detail_main .swiper-button-next_out {
    right: -30px;
    z-index: 10;
}
.detail > .container .detail_main .swiper-pagination{
    width: 100%;
    bottom: -20px;
    line-height: 0;
}

.detail > .container .detail_main .swiper-pagination .swiper-pagination-bullet{
    width: 10px;
    height: 10px;
    background: #DEDBDB;
    margin: 0 5px;
    opacity: 1;
}

.detail > .container .detail_main .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background: #9B8F72;
    opacity: 1;
}
.detail > .container .detail_content {
    padding: 10px 50px 0;
}
.detail > .container .detail_content .wrap{
    display: block;
    width: 1100px;
}
.detail > .container .detail_content .wrap.img_l,
.detail > .container .detail_content .wrap.img_r {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: nowrap;
}
.detail>.container .detail_content .wrap:not(:last-child) {
    margin-bottom: 70px;
}
.detail > .container .detail_content .wrap.img_l > div.image,
.detail > .container .detail_content .wrap.img_r > div.image {
    flex-shrink: 0;
}
.detail > .container .detail_content .wrap.img_l > div.text,
.detail > .container .detail_content .wrap.img_r > div.text {
    flex-grow: 1;
}
.detail > .container .detail_content .wrap > div.image img {
    margin: 0 0 30px;
}
.detail > .container .detail_content .wrap.img_l > div.image img {
    margin: 0 30px 0 0;
}
.detail>.container .detail_content .wrap.img_r {
    flex-direction: row-reverse;
}
.detail>.container .detail_content .wrap.img_r > div.image {
    flex-shrink: 0;
}
.detail>.container .detail_content .wrap.img_r > div.image img {
    margin: 0 0 0 30px;
}
.detail>.container .detail_content .wrap.img_r > div.text {
    flex-grow: 1;
}
.detail > .container .detail_content .wrap .text h3 {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.2rem;
    font-weight: 500;
    margin-bottom: 2rem;
}
.detail>.container .detail_content .wrap .text h3:before {
    display: none;
}
.detail > .container .detail_content .wrap .text p {
    margin-bottom: 2rem;
    font-size: 1.8rem;
    line-height: 1.8;
}
.detail > .container .detail_content .wrap .text ol {
    padding: 0;
    list-style-position: outside;
    margin-left: 2.5rem;
    list-style-type: decimal;
}
.detail > .container .detail_content .wrap .text ol li {
    margin-bottom: 2rem;
    font-size: 1.8rem;
    line-height: 1.8;
}
.detail > .container .detail_content .items {
    display: flex;
    margin: 0 0 -30px -30px;
}
.detail>.container .detail_content .items:not(:last-child) {
    margin-bottom: 40px;
}
.detail > .container .detail_content .items > *{
    margin: 0 0 30px 30px;
}
.detail > .container .detail_content .items > div.image {
    min-width: 320px;
}
.detail > .container .detail_content .items > div.text {
    flex-grow: 1;
}
.detail > .container .detail_content .items .text h3 {
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 2rem;
}
.detail > .container .detail_content .items .text p {
    margin-bottom: 2rem;
    font-size: 1.5rem;
    line-height: 1.8;
    color: #333;
}
.detail > .container .detail_content p {
    color: #333;
    font-size: 1.5rem;
}

/* login
======================================================= */
.login main > .wrapper {
    width: 920px;
    margin: 50px auto;
    border-bottom: none;
}
.login main > .wrapper > .container .heading2 h2 {
    font-size: 2.4rem;
    padding-bottom: 10px;
}
.login main > .wrapper > .container .heading2 h2 span {
    font-size: 2rem;
}
.login main > .wrapper .wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 920px;
    margin: 0 auto;
}
.login main > .wrapper .wrap > div {
    width: 50%;
}
.login main>.wrapper .wrap>div:first-child {
    padding-right: 20px;
}
.login main>.wrapper .wrap>div:last-child {
    padding-left: 20px;
}
.login main > .wrapper .wrap > div > .content {
    font-size: 2rem;
}
.login main > .wrapper .wrap > div > .content.inner {
    padding: 30px;
    background: none;
}
.login main>.wrapper .wrap>div>.content p:not(:last-child) {
    margin-bottom: 30px;
}
.login input[type="text"],
.login input[type="password"],
.login input[type="email"],
.login input[type="tel"] {
    margin-top: 10px;
    display: inline-block;
    margin-bottom: 20px;
    background: #eee;
    border: 1px solid #eee;
}

/* form
======================================================= */
.form main > .wrapper {
    width: 920px;
    margin: 50px auto;
    border-bottom: none;
    padding-bottom: 0;
}
.form main > .wrapper .formflow {
    padding: 8px 0 16px;
    margin-bottom: 40px;
    width: 100%;
}
.form main > .wrapper .formflow table {
    width: 100%;
    margin: 0 auto;
    font-size: 1.8rem;
    color: #989898;
    text-align: center;
}
.form main > .wrapper .formflow table td {
    width: 25%;
    padding: 0 0 12px;
    position: relative;
    line-height: 1.5;
}
.form main > .wrapper .formflow table td.active {
    color: #867856;
}
.form main>.wrapper .formflow table td:last-child.active {
    color: #9B8F72;
}
.form main>.wrapper .formflow table td:before {
    position: absolute;
    left: 0;
    bottom: 3px;
    content: '';
    height: 2px;
    width: 100%;
    background: #D5D5D5;
}
.form main>.wrapper .formflow table td:first-child:before {
    left: inherit;
    right: 0;
    width: 50%;
}
.form main>.wrapper .formflow table td:last-child:before {
    width: 50%;
}
.form main>.wrapper .formflow table td:after {
    position: absolute;
    left: 50%;
    bottom: 0;
    content: '';
    height: 8px;
    width: 8px;
    margin: 0 0 0 -4px;
    background: #D5D5D5;
    border-radius: 50%;
    -webkit-border-radius: 50%;
}
.form main>.wrapper .formflow td.active:after {
    background: #867856;
}
.form main>.wrapper .formflow td:last-child.active:after {
    background: #9B8F72;
}
.form main > .wrapper .formflow table td.done {
    color: #9B8F72;
}
.form main>.wrapper .formflow td.done:after {
    background: #9B8F72;
}
.form main > .wrapper .form_confirm {
    width: 100%;
}
.form main > .wrapper .form_confirm .container {
    margin-bottom: 40px;
}
.form main > .wrapper .form_confirm .content {
    padding: 20px 30px;
    background: #F4F4F4;
}
.form main > .wrapper .form_confirm .content h2 {
    font-size: 2.0rem;
    font-weight: 500;
    color: #A7052F;
    margin-bottom: 12px;
    font-family: 'Noto Serif JP', sans-serif;
}
.form main > .wrapper .form_confirm .content h2 + p {
    font-size: 1.5rem;
    line-height: 1.5;
}
.form main > .wrapper .form_confirm .content table.tbl_form {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}
.form main > .wrapper .form_confirm .content table.tbl_form caption {
    margin: 10px 0;
    text-align: left;
    color: #202020;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr th {
    border: none;
    padding: 10px 0;
    width: 300px;
    text-align: left;
    color: #202020;
    font-weight: normal;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr th > div {
    margin-right: 20px;
    display: flex;
    align-items: center;
    position: relative;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr th > div span.label {
    width: 90%;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr th > div span.required {
    position: absolute;
    top: 3px;
    right: 0;
    font-family: "Hiragino Sans";
    color: #AF0714;
    line-height: 19px;
    padding: 2px 0 1px;
    border: 1px solid #AF0714;
    width: 38px;
    height: 19px;
    text-align: center;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr td {
    border: none;
    padding: 10px 0;
    vertical-align: top;
    line-height: 1.5;
    color: #333;
    font-weight: bold;
}
.form main>.wrapper .form_confirm .content table.tbl_form tr td p:not(:last-child) {
    margin-bottom: 10px;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break {
    display: table-row;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break > th {
    display: block;
    width: 100%;
    box-sizing: border-box;
    position: static;
    font-weight: bold;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break > th > div {
    margin-top: 0;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.form main>.wrapper .form_confirm .content table.tbl_form tr.break>th>div:not(:last-child) {
    padding-bottom: 10px;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break > th > div span.label {
    width: auto;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break > th > div span.required {
    position: static;
    margin-left: 20px;
    font-family: "Hiragino Sans";
    color: #AF0714;
    line-height: 19px;
    padding: 2px 0 1px;
    border: 1px solid #AF0714;
    width: 38px;
    height: 19px;
    text-align: center;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form main > .wrapper .form_confirm .content table.tbl_form tr.break > td {
    display: block;
    padding-top: 10px;
    width: 100%;
    box-sizing: border-box;
    font-weight: normal;
}
.form main > .wrapper .form_complete {
    width: 100%;
}
.form main > .wrapper .form_complete .content {
    margin: 0 auto;
    text-align: center;
}
.form main > .wrapper .form_complete .content h2 {
    font-size: 2.4rem;
    font-weight: bold;
    color: #A7052F;
    border-bottom: none;
    padding-bottom: 10px;
    margin-bottom: 25px;
}
.form main>.wrapper .form_complete .content h2:before {
    content: "";
    width: 32px;
    height: 32px;
    display: inline-block;
    background-image: url('/shopping/pc/common/img/icons/icn_entry_complete.svg');
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 20px;
}
.form main > .wrapper .form_complete .content p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-bottom: 25px;
}
.form main > .wrapper .form_complete .content .inner {
    background-color: #fff;
    border: 1px solid #DADBDC;
    padding: 30px;
    font-size: 1.4rem;
    display: inline-block;
    text-align: left;
    line-height: 1.8;
    margin: 0;
}
.form main > .wrapper .form_complete .content .inner span {
    font-size: 1.6rem;
    display: block;
    font-weight: bold;
}
.form main > .wrapper .form_input .container {
    margin-bottom: 40px;
}
.form main > .wrapper .form_input .container .heading2 h2 {
    font-size: 2.4rem;
    padding-bottom: 10px;
}
.form main > .wrapper .form_input .container .heading2 h2 span {
    font-size: 2rem;
}
.form main > .wrapper .form_input .container .content {
    padding: 20px 30px;
    width: 100%;
    box-sizing: border-box;
}
.form main>.wrapper .form_input .container .content:not(:last-child) {
    margin-bottom: 20px;
}
.form main > .wrapper .form_input .container .content .input_name {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.form main > .wrapper .form_input .container .content .input_name input {
    flex-basis: 49%;
    width: 275px;
}
.form main > .wrapper .form_input .container .content .input_nameKana {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.form main > .wrapper .form_input .container .content .input_nameKana input {
    flex-basis: 49%;
    width: 100%;
}
@media all and (-ms-high-contrast:none){
    .form main > .wrapper .form_input .container .content .input_name input,
    .form main > .wrapper .form_input .container .content .input_nameKana input {
        flex-basis: 43%;
    }
}
.form main > .wrapper .form_input .container .content .input_zip {
    display: flex;
    align-items: center;
}
.form main > .wrapper .form_input .container .content .input_zip input.zip01 {
    margin-right: 10px;
    width: 100px;
}
.form main > .wrapper .form_input .container .content .input_zip input.zip02 {
    width: 125px;
}
.form main>.wrapper .form_input .container .content .input_zip input:last-child {
    margin-left: 10px;
}
.form main > .wrapper .form_input .container .content .input_checkbox {
    background-color: #fff;
    padding: 20px;
    border-radius: 3px;
}
.form main > .wrapper .form_input .container .content .input_text {
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-right: 20px;
}
.form main > .wrapper .form_input .container .content .input_textBox {
    display: block;
    background-color: #fff;
    border-radius: 3px;
    padding: 5px 20px 20px;
}
.form main > .wrapper .form_input .container .content .input_textBox > div {
    border-bottom: 1px dotted #DADBDC;
    padding: 15px 0;
}
.form main > .wrapper .form_input .container .content .input_textBox.radiobox .detail {
    display: none;
    padding: 8px 7px 0 32px;
}
.form main>.wrapper .form_input .container .content .input_textBox.radiobox input:checked+label+.detail {
    display: block;
}
.form main > .wrapper .form_input .container .content .input_cardNumber {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.form main > .wrapper .form_input .container .content .input_cardNumber .hyphen {
    padding: 0 3px;
}
.form main > .wrapper .form_input .container .content .input_cardNumber input {
    width: 125px;
    padding: 10px 15px;
}
.form main > .wrapper .form_input .container .content .input_cardNumber input.w65 {
    width: 65px;
}
.form main > .wrapper .form_input .container .content .input_cardNumber input.w145 {
    width: 145px;
}
.form main > .wrapper .form_input .container .content .input_cardNumber input.w165 {
    width: 165px;
}
.form main > .wrapper .form_input .container .content .input_securityCode {
    display: flex;
    align-items: center;
}
.form main > .wrapper .form_input .container .content .input_securityCode input {
    width: 110px;
    padding: 10px 15px;
}
.form main > .wrapper .form_input .container .content .input_securityCode .question {
    text-align: left;
    font-size: 1.4rem;
    display: flex;
    align-content: center;
    margin-left: 10px;
}
.form main > .wrapper .form_input .container .content a.txt_link_b,
.form main > .wrapper .form_input .container .content .input_securityCode .question a {
    color: #2A6BB7;
    text-decoration: underline;
}
.form main>.wrapper .form_input .container .content .input_securityCode .question a:hover {
    text-decoration: none;
}
.form main>.wrapper .form_input .container .content .input_securityCode .question a:before {
    content: "";
    width: 16px;
    height: 16px;
    display: inline-block;
    background-image: url('/shopping/pc/common/img/icons/icn_question.svg');
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 5px;
}
.form main > .wrapper .form_input .container .content .input_sex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 0 -40px;
}
.form main > .wrapper .form_input .container .content .input_sex > span {
    height: 60px;
    display: flex;
    align-items: center;
    margin: 0 0 0 40px;
}
.form main > .wrapper .form_input .container .content .wrap.item,
.form main > .wrapper .form_confirm .container .content .wrap.item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}
.form main>.wrapper .form_input .container .content .wrap.item>div:first-child,
.form main>.wrapper .form_confirm .container .content .wrap.item>div:first-child {
    width: 140px;
}
.form main>.wrapper .form_input .container .content .wrap.item>div:last-child .quantity,
.form main>.wrapper .form_confirm .container .content .wrap.item>div:last-child .quantity {
    font-weight: bold;
    color: #202020;
}
.form main>.wrapper .form_input .container .content .wrap.item>div:last-child .quantity span:not(:last-child),
.form main>.wrapper .form_confirm .container .content .wrap.item>div:last-child .quantity span:not(:last-child) {
    margin-right: 10px;
}
.form main > .wrapper .form_input .container .content table.tbl_form {
    width: 860px;
    border-collapse: collapse;
    margin: 0;
}
.form main > .wrapper .form_input .container .content table.tbl_form.hide{
    display: none;
}
.form main > .wrapper .form_input .container .content table.tbl_form.hide.show{
    display: table;
}
.form main > .wrapper .form_input .container .content table.tbl_form caption {
    margin: 10px 0;
    text-align: left;
    color: #202020;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.last td{
    padding-top: 0;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr th {
    border: none;
    padding: 30px 0;
    width: 300px;
    text-align: left;
    color: #202020;
    font-weight: bold;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr th > div {
    margin-right: 20px;
    display: flex;
    align-items: center;
    position: relative;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr th > div span.label {
    width: 90%;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr th > div span.required {
    position: absolute;
    top: -1px;
    right: 0;
    font-family: "Hiragino Sans";
    color: #fff;
    line-height: 19px;
    padding: 2px 0 1px;
    border: 1px solid #A7052F;
    width: 38px;
    height: 27px;
    text-align: center;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #A7052F;
    font-size: 1.5rem;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr td {
    width: 560px;
    border: none;
    padding: 10px 0;
    vertical-align: top;
    line-height: 1.5;
    color: #333;
}
.form main>.wrapper .form_input .container .content table.tbl_form tr td p:not(:last-child) {
    margin-bottom: 10px;
}
.form main>.wrapper .form_input .container .content table.tbl_form tr td p.indent:not(:last-child){
    margin-bottom: 0;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break {
    display: table-row;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break > th {
    display: block;
    width: 100%;
    box-sizing: border-box;
    position: static;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break > th > div {
    margin-top: 0;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.form main>.wrapper .form_input .container .content table.tbl_form tr.break>th>div:not(:last-child) {
    padding-bottom: 10px;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break > th > div span.label {
    width: auto;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break > th > div span.required {
    position: static;
    margin-left: 20px;
    font-family: "Hiragino Sans";
    color: #fff;
    line-height: 19px;
    padding: 2px 0 1px;
    border: 1px solid #AF0714;
    width: 38px;
    height: 19px;
    text-align: center;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.break > td {
    display: block;
    padding-top: 10px;
    width: 100%;
    box-sizing: border-box;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.hide{
    display: none;
}
.form main > .wrapper .form_input .container .content table.tbl_form tr.hide.show{
    display: table-row;
}
.form main > .wrapper .caution {
    margin-top: 10px;
}
.form main > .wrapper .caution p {
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.8;
    color: #86878B;
}
.form main > .wrapper .warning {
    margin-top: 10px;
}
.form main > .wrapper .last .warning {
    margin-top: 0;
}
.form main > .wrapper .warning p {
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.8;
    color: #AF0714;
}
.form main > .wrapper .notes {
    margin-top: 10px;
    margin-bottom: 10px;
}
.form main > .wrapper .notes dl dt {
    background: #AF0714;
    color: #fff;
    padding: 10px;
    font-size: 1.6rem;
}
.form main > .wrapper .notes dl dd {
    background-color: #fff;
    border: 1px solid #AF0714;
    height: 146px;
    overflow-y: auto;
    padding: 20px;
    font-size: 1.4rem;
}
.form main>.wrapper .notes dl dd>p:not(:last-child) {
    margin-bottom: 2rem;
}
.form main > .wrapper .notes_online {
    width: 100%;
    box-sizing:border-box;
    margin-top: 20px;
    margin-bottom: 30px;
    padding: 20px;
    background: #F4F4F4;
}
.form main > .wrapper .notes_online .content {
    padding: 0;
}
.form main > .wrapper .notes_online .content > p {
    font-size: 1.5rem;
}
.form main > .wrapper .textBox {
    font-size: 1.4rem;
    background-color: #fff;
    padding: 20px;
}
.form main > .wrapper .textBox > div.scroll_y {
    height: 98px;
    overflow-y: auto;
}
.form main > .wrapper .textBox > div ol {
    height: 100%;
    padding: 0 10px 0 0;
    font-size: 1.4rem;
    line-height: 1.8;
    margin: 0 0 0 20px;
}
.form main>.wrapper .textBox>div>p:not(:last-child) {
    margin-bottom: 2rem;
}
.form main .btnBox {
    margin-top: 40px;
}
.form main .btnBox .btn_base {
    margin: 0 auto;
    width: 440px;
}
.form main .btnBox .btn_entry {
    margin: 0 auto;
    width: 440px;
}
.form main .btnBox .btn_back {
    margin: 0 auto;
}

.form main .cart_item{
    display: flex;
}

.form main .cart_item .img{
    flex-shrink: 0;
    position: relative;
    width: 140px;
    height: 140px;
    margin-right: 40px;
}

.form main .cart_item .img img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    .form main .cart_item .img img {
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
@supports (-ms-ime-align: auto) { /* Edge */
    .form main .cart_item .img img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}

.form main .cart_item .data{
    font-size: 1.5rem;
}

.form main .cart_item .data .num{
    color: #808080;
}

.form main > .wrapper .form_input .container .content .input_noshi .selectBox{
    width: 120px;
}

.form main > .wrapper .form_input .container .content .input_use{
    display: inline-block;
    width: 320px;
    box-sizing: border-box;
}

.form main > .wrapper .form_input .container .content textarea{
    background: #FFF;
}

.form main > .wrapper .form_confirm .bg_none{
    padding: 0;
    background: none;
}

.form main > .wrapper .form_confirm .content table.tbr{
    text-align: left;
    border-color: #D5D5D5;
}

.form main > .wrapper .form_confirm .content table.tbr th,
.form main > .wrapper .form_confirm .content table.tbr td{
    border-color: #D5D5D5;
    padding: 8px 10px;
}

.form main > .wrapper .form_confirm .content table.tbr th{
    font-weight: normal;
    width: 240px;
    background: #F4F4F4;
}

.form main > .wrapper .form_confirm .product{
    background: #F5F3EF;
    padding: 20px;
}

.form main > .wrapper .form_confirm .container .content.product .wrap.item{
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    background: #FFF;
    padding: 20px 20px;
}


.form main > .wrapper .form_confirm .product .wrap.item div:first-child{
    flex-shrink: 0;
    position: relative;
    width: 140px;
    height: 140px;
    margin-right: 40px;
    overflow: hidden;
}

.form main > .wrapper .form_confirm .product .wrap.item div:first-child img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports ( object-fit: cover ) {
    .form main > .wrapper .form_confirm .product .wrap.item div:first-child img {
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
@supports (-ms-ime-align: auto) { /* Edge */
    .form main > .wrapper .form_confirm .product .wrap.item div:first-child img {
        position: absolute;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        -ms-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }
}

.form main > .wrapper .form_confirm .product .wrap.item .title{
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.0rem;
    margin: 0 0 20px;
}

.form main > .wrapper .form_confirm .product .wrap.item .data{
    display: flex;
    gap: 0 40px;
}

.form main > .wrapper .form_confirm .product .wrap.item .data span{
    font-weight: normal;
    font-size: 1.5rem;
}

.form main > .wrapper .form_confirm .product .wrap.item .data span.num{
    font-weight: bold;
    font-size: 2.0rem;
}

.form main > .wrapper .form_confirm .product .wrap.item .data .price span.num{
    position: relative;
    margin: 0 0 0 20px;
}
.form main > .wrapper .form_confirm .product .wrap.item .data .price span.num:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 0px;
    left: -15px;
    margin: auto 0;
    font-weight: normal;
}

.form main > .wrapper .form_confirm .product h3{
    position: relative;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.0rem;
    font-weight: 500;
    margin: 30px 0 15px;
    padding: 0 0 0 30px;
}

.form main > .wrapper .form_confirm .product h3:before{
    content:"";
    position: absolute;
    z-index: 1;
    left: 0;
    top: 14px;
    width: 20px;
    height: 1px;
    background: #9B8F72;
}


.form main > .wrapper .form_confirm .product table.tbr{
    margin: 0 0 30px;
}

.form main > .wrapper .form_confirm .total{
    display: table;
    text-align: right;
    margin: 0 0 0 auto;
    font-weight: bold;
}
.form main > .wrapper .form_confirm .product + .total{
    margin-top: 50px;
    margin-bottom: 80px;
}

.form main > .wrapper .form_confirm .total dl{
    display: table-row;
}

.form main > .wrapper .form_confirm .total dt{
    display: table-cell;
    font-size: 1.5rem;
    padding: 0 15px 0 0;
}
.form main > .wrapper .form_confirm .total dd{
    display: table-cell;
    font-size: 2.0rem;
    padding: 0 0 0 20px;
}
.form main > .wrapper .form_confirm .total dd span{
    position: relative;
}
.form main > .wrapper .form_confirm .total dd span:before {
    content: "\";
    font-weight: normal;
    position: absolute;
    bottom: 0px;
    left: -15px;
    margin: auto 0;
    font-weight: normal;
}
.form main > .wrapper .form_confirm .total dd.point{
    padding: 0;
}
.form main > .wrapper .form_confirm .total dd.point span:before {
    display: none;
}
.form main > .wrapper .form_confirm .total dd.point span:after {
    content: "pt";
    position: relative;
    display: inline-block;
    bottom: auto;
    left: auto;
    font-weight: normal;
}


/* modal_content
======================================================= */
.modal_content .creditCard {
    padding: 30px;
}
.modal_content .creditCard figure img {
    margin: 0 30px;
}
.modal_content .creditCard figure figcaption {
    font-weight: bold;
    font-size: 1.6rem;
    margin-bottom: 10px;
}
.cart_return{
    text-align: center;
    margin: 0 0 120px;
}


/* cart_total
======================================================= */
.cart.cart_total{
    padding: 0;
    margin: -30px 0 40px;
}

.cart.cart_total .cart_btn{
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
}

.cart.cart_total .cart_btn a{
    width: 440px;
}

.cart.cart_total .cart_btn a {
    font-size: 1.8rem;
    flex-direction: column;
}
.cart.cart_total .cart_btn a span {
    display: block;
    font-size: 1.2rem;
}

.cart.cart_total .cart_btn a:before{
    display: none;
}

.cart_return a {
    transition: all 0.2s ease-out;
    text-decoration: none;
    color: #1c1c1c;
    line-height: 1;
}
.cart_return a:hover {
    opacity: 0.8;
    text-decoration: underline;
}
.cart_return a:before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin: -5px 10px 0;
    border-top: 1px solid #9B8F72;
    border-right: 1px solid #9B8F72;
    transform: rotate(45deg);
    vertical-align: middle;
}

/* cart_recommend
======================================================= */
.cart_recommend{
    margin: 0 0 60px;
}

.cart_recommend .items{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 -30px -30px;
}

.cart_recommend .items li{
    width: 125px;
    height: 125px;
    margin: 0 0 30px 30px;
}

.cart_recommend .items li img{
    width: 125px;
    height: auto;
}

/* cart_tel
======================================================= */
.cart_tel{
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    background-color: #F5F3EF;
    padding: 33px 50px 30px 40px;
}

.cart_tel>div:nth-child(1) {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.0rem;
    line-height: 1.75;
}

.cart_tel>div:nth-child(2) {
    display: flex;
    align-items: center;
}

.cart_tel>div:nth-child(2) .phone {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 3.6rem;
    margin: 0;
    line-height: 1;
    white-space: nowrap;
}
.cart_tel>div:nth-child(2) .phone:before {
    content: "";
    display: inline-block;
    width: 34px;
    height: 37px;
    background-image: url('/shopping/pc/common/img/icons/icn_phone_footer.svg');
    background-position: bottom 4px left 5px;
    background-repeat: no-repeat;
    vertical-align: middle;
}

.cart_tel>div:nth-child(2) .businessHours{
    font-size: 1.4rem;
    margin: 0 0 0 15px;
}

/* form_type
======================================================= */
.form_type{
    display: flex;
    justify-content: flex-start;
    padding: 0 20px 20px 0;
    background: #FFF;
}

.form_type input[type="radio"].custom+label{
    width: 140px;
    border: 1px solid #D5D5D5;
    background: #fff;
    padding: 5px 0;
    text-align: center;
    font-size: 1.5rem;
    border-radius: 10px;
    cursor: pointer;
    box-sizing: border-box;
    margin: 0 20px 0 0;
}

.form_type input[type="radio"].custom:checked+label{
    border: 1px solid #707070;
    background: #707070;
    color: #fff;
    margin: 0 20px 0 0;
}

.form_type input[type="radio"].custom+label::before,
.form_type input[type="radio"].custom:checked+label::after{
    display: none;
}


/* 
======================================================= */
.cart_complete {
    width: 600px;
    margin: 0 auto;
    padding: 20px 37px 28px 35px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #F5F3EF;
}

.cart_complete .phone {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 3.6rem;
    margin: 0;
    line-height: 1;
    white-space: nowrap;
}
.cart_complete .phone:before {
    content: "";
    display: inline-block;
    width: 34px;
    height: 35px;
    background-image: url('/shopping/pc/common/img/icons/icn_phone_footer.svg');
    background-position: top 0 center;
    background-repeat: no-repeat;
    vertical-align: middle;
}

.form main > .wrapper .form_complete .content .cart_complete .businessHours{
    font-size: 1.4rem;
    margin: 0 0 0 15px;
}

.cart_complete + .return{
    text-align: center;
    padding: 40px 0 0;
}

.cart_complete + .return a{
    transition: all 0.2s ease-out;
    text-decoration: none;
    color: #1c1c1c;
    line-height: 1;
}
.cart_complete + .return a:hover {
    opacity: 0.8;
}
.cart_complete + .return a:before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin: -5px 10px 0;
    border-top: 1px solid #9B8F72;
    border-right: 1px solid #9B8F72;
    transform: rotate(45deg);
    vertical-align: middle;
}


/* 
======================================================= */

.shop_btn {
	margin-bottom: 24px;
	width:600px;
}

.shop_btn a {
	display: block;
	border: 1px solid #1C1C1C;
	border-radius: 4px;
	background: #fff;
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #1C1C1C;
	text-decoration: none;
	text-align: center;
	padding: 12px 0;
    justify-content: center;

}


.shop_btn a span.blank {
	font-size: 1.8rem;
	line-height: 1.8;
	font-weight: bold;
	padding-right: 14px;
	background: url(../img/ico_blank.png) no-repeat right 0 top 0.3em;
	background-size: 9px auto;
}

