/* BASE */
a {
    color: #000;
}


.row {
    margin-left: -30px;
    margin-right: -30px;
}

td,
th {
    padding: 0;
    border: none;
}

.sidebar-right1 {
    float: none;
    padding-top: 0;
}

.woocommerce button.button.alt {
    border-radius: 0;
    background-color: #446889;
}

select::-ms-expand {
    display: none;
}

.dashicons-cart:before {
    color: #000;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover {
    opacity: 0.8;
    background-color: #446889!important;
    color: white!important;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance:textfield!important;
}

@media only screen and (min-width:965px) {
    .woocommerce button.button.alt:hover {
        color: white;
        opacity: 0.8;
    }
}

.form-control {
    border-radius: 0;
}

.woocommerce-order-details__title {
    font-size: 16px;
}

/* LAYOUT */
.container,
.container-fluid {
    padding-left: 33px;
    padding-right: 33px;
}
.page-content{
    margin: auto;
    max-width: 1000px;
    width: 100%;
    padding-left: 33px;
    padding-right: 33px;
}
.page-content > .container,
.entry-title_container>.container{
    padding: 0;
}
.catch_container {
    margin-top: 10px;
    margin-bottom: 30px;
}

.catch_container .content-text {
    margin: 0;
    margin-top: 30px;
}


.sub_container {
    margin-bottom: 0;
}

.entry-title_container {
    background-color: #CEDDE1;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 20px;
}


.checkout_container, .contact_container, .qa_inner_container
    {
    padding-bottom: 40px;
}

.entry-title {
    font-size: 1.4rem;
    line-height: 1.6;
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 0;
    padding: .5em 1em;
}

.top-content {
    margin-bottom: 5px;
}


@media only screen and (min-width:965px) {
    .container, .widget_shopping_cart_content {
        max-width: 1000px;
        width: 100%;
        padding-left: 61px;
        padding-right: 61px;
    }

    .catch_container {
        margin-top: 60px;
        margin-bottom: 65px;
    }

    .row {
        margin-left: -61px;
        margin-right: -61px;
    }
    .page-content{
        padding-left: 61px;
        padding-right: 61px;
    }    
    .entry-title_container {
        background: none;
        margin-bottom: 20px;
    }

    .entry-title_container>.container {
        margin-bottom: 0;
    }

    .entry-header {
        margin-left: auto;
        margin-right: auto;
    }

    .entry-title {
        font-size: 1.6rem;
        line-height: 1;
        padding: 0;
    }

    .breadcrumb>li+li:before {
        padding-left: 16px;
        padding-right: 16px;
    }


    .top-content {
        margin-bottom: 35px;
    }


}

/* HEADER */

.site-title {
    width: 153px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    margin-bottom: 17px;
    font-size: 0 !important;
}

.site-title a {
    display: block;
    line-height: 0;
}

.site-title img {
    vertical-align: top;
}

.logo_wrap {
    padding-top: 18px;
}

.site-description {
    line-height: 1.3;
}

.site-description {
    font-size: 1.1rem;
    font-weight: bold;
    margin: 0;
}

@media only screen and (min-width:965px) {

    .site-title {
        margin-bottom: 15px;
        width: 180px;
    }


}


/* SLICK */

.slick-slide {
    height: auto;
}

.slide-arrow {
    position: absolute;
    top: 50%;
    z-index: 9;
    width: 26px;
    background: none;
    border: none;
}

.prev-arrow {
    left: 0;
}

.next-arrow {
    right: 0;
}

.cover_wrap {
    position: relative;
}


.cover_wrap img:first-child {
    position: absolute;
}

.cover1 {
    bottom: 10%;
    left: 20px;
    width: 300px;
}

.cover2 {
    bottom: 10%;
    left: 10px;
    width: 140px;
}

.cover3 {
    bottom: 2%;
    right: 24px;
    width: 307px;
}

.slick-dots li {
    margin: 0;
}

.slick-dots li.slick-active button:before {
    color: #406584;
    opacity: 1;
}

.slick-dots li button:before {
    color: #406584;
}

.hero_container {
    padding: 0;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-dots li button:before {
    font-size: 1.2rem;
}


@media screen and (min-width:965px) {

    .hero_container {
        padding-left: 62px;
        padding-right: 62px;
    }

    .cover1 {
        top: 30%;
        left: 30px;
        width: 450px;
    }

    .cover2 {
        bottom: 12%;
        left: 30px;
        width: 280px;
    }

    .cover3 {
        bottom: 7%;
        right: 30px;
        width: 546px;
    }


    .slick-dots li {
        margin: 0 5px;
    }

    .prev-arrow {
        left: -36px;
    }

    .next-arrow {
        right: -36px;
    }

    .slick-dots li button:before {
        font-size: 1.8rem;
        margin-top: 25px;
    }

    .hero_container {
        margin-bottom: 0;
    }

    .slick-dots {
        bottom: -20px;
    }
}

@media screen and (max-width:330px) {
    .cover3 {
        width: 290px;
    }
}

/* FOOTER */


.top_footer_content {
    width: 100%;
}

.main-footer-bottom {
    position: relative;
    margin-top: 60px;
    padding-top: 60px;
}

.b_footer_nav {
    border-bottom: solid 1px #000;
}

.b_footer_nav nav>div {
    display: none;
}

.b_banner {
    margin-bottom: 30px;
}
.bannerb {
    margin-bottom: 10px;
}

.main-footer-bottom .site-title {
    margin-bottom: 13px;
}

.e_pagetop {
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: auto;
}

.main-footer-bottom .small {
    text-align: center;
    margin-top: 13px;
    font-size: 1rem;
}

footer.container {
    border-top: solid 1px #999;
    padding-top: 30px;
}


@media screen and (min-width:965px) {


    footer.container {
        max-width: 878px;
        width: 100%;
        border-top: solid 1px #999;
        padding-top: 30px;
        padding-left: 0;
        padding-right: 0;
    }

    .b_footer_content {
        display: flex;
        flex-flow: row-reverse;
        justify-content: space-between;
    }

    .b_footer_nav {
        padding: 45px 0 18px;
    }

    .b_footer_nav nav {
        display: flex;
        justify-content: center;
    }
    .b_footer_nav nav + nav {
        margin-top: 10px;
    }

    .b_footer_nav a:hover {
        opacity: 0.8;
        color: #000;
        text-decoration: none;
    }

    .b_footer_nav nav div+div {
        border-left: solid 1px #000;
    }

    .b_footer_nav nav>div {
        display: block;
        font-size: 1rem;
        padding: 0 15px;
        /* padding-left: 15px;
        padding-right: 15px;
        margin-top: 45px;
        margin-bottom: 18px; */
    }
    .b_footer_nav nav>div .top_news_event_content {
        font-size: 1rem;
    }

    .main-footer-bottom {
        margin-top: 25px;
        text-align: center;
    }

    .main-footer-bottom .site-title {
        margin-bottom: 0;
    }

    .top_footer_content {
        width: auto;
        margin-left: 0;
        margin-right: 0;
        margin: 0;
    }

    .b_banner {
        width: 414px;
    }

    .caption {
        padding-top: 0;
    }

    .e_footer_fb {
        margin-top: 28px;
        margin-bottom: 25px;
    }

    .e_footer_fb img {
        height: 24px;
    }

    .b_banner:hover,
    .e_footer_fb a:hover {
        opacity: 0.8;
    }
    
    .footericonspase {
        margin: 0 10px 0;
    }

}

/* CALENDAR */
.top_footer_content {
    margin-bottom: 40px;
}

.xo-months {
    width: 100%;
    justify-content: space-between;
}

.xo-month-wrap {
    width: 45%;
    padding: 0;
}

.xo-event-calendar table.xo-month>caption {
    padding-top: 0;
}

.xo-event-calendar table.xo-month td {
    padding: 0 !important;
}

.xo-event-calendar table.xo-month .month-header>span {
    font-size: 1.2rem;
}

.xo-event-calendar table.xo-month .month-dayname td {
    font-size: 0.85rem;
}

.xo-event-calendar table.xo-month .month-dayname td div,
.xo-event-calendar table.xo-month .month-week {
    height: auto;
}

.xo-event-calendar table.xo-month>thead th {
    font-size: 0.9rem;
}

.today {
    background-color: #09ffff;
}

.xo-event-calendar table.xo-month .month-dayname-space {
    height: 1.35em;
}

@media screen and (min-width:965px) {

    .top_footer_content {
        margin-bottom: 0;
    }

    .xo-event-calendar {
        width: 411px;
    }

}



/* BLOCK MODULES */

.site-branding {
    padding-top: 25px;
    padding-bottom: 20px;
}

.b_top_subheading {
    border-bottom: solid 1px #000;
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 15px;
    margin-bottom: 30px;
}

/* NEWS @ EVENT */

.news_container {
    background-color: #CEDDE1;
    margin-bottom: 40px;
}
.news_container .row {
    margin-left: 0;
    margin-right: 0;
}

.top_news_event_wrap {
    padding-top: 30px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 30px;
    background: none;
}

.top_news_event_title {
    margin: 30px auto;
    max-width: 174px;
}

.top_news_event_content_wrap {
    padding-bottom: 16px;
    margin-bottom: 20px;
    border-bottom: solid 1px #999;
}

.top_news_event_content_wrap:last-child {
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.top_news_event_content {
    padding-left: 30px;
    padding-right: 45px;
}

.top_news_event_content_wrap {
    padding-left: 0;
    padding-right: 0;
    position: relative;
}

.top_news_event_content:not(.goods_event_content) {
    background: url(../images/openbtn.png) no-repeat;
    background-size: 15px auto;
    background-position: top 18px right 30px;
    transition-duration: .3s;
    font-size: 1.2rem;
    cursor: pointer;
}


.top_news_event_content .date,
.top_news_event_content .title,
.top_news_event_content .content {
    font-size: 1.2rem;
}

.top_news_event_content_wrap .is_open {
    background: url(../images/closebtn.png) no-repeat;
    background-size: 15px auto;
    background-position: top 18px right 30px;
}

.is_open .title {
    text-decoration: underline;
}

.top_news_event_content_wrap .content {
    background-color: white;
    margin-left: 30px;
    margin-right: 30px;
    margin-bottom: 3px;
}

.top_news_event_content_wrap .content a{
    color: #337ab7;
    text-decoration: underline;
}


.catch_container .small {
    font-size: 1.1rem;
    line-height: 1.8;
    margin-bottom: 0;
}

@media only screen and (min-width:965px) {


    .news_container {
        margin-bottom: 44px;
    }

    .b_top_subheading {
        font-size: 2.2rem;
        font-weight: bold;
        padding-bottom: 19px;
        margin-bottom: 30px;
    }

    .top_news_event_content_wrap {
        padding-bottom: 0;
        margin-bottom: 0;
        border: none;
    }

    .top_news_event_content {
        padding: 0;
    }

    .top_news_event_wrap {
        max-width: 1000px;
        margin: auto;
        padding-left: 61px;
        padding-right: 61px;
    }

    .top_news_event_content_wrap .content {
        margin-left: 0;
        margin-right: 0;
    }

    .catch_container .small {
        font-size: 1.3rem;
        line-height: 1.8;
    }

    .top_news_event_content {
        margin-bottom: 16px;
        padding-bottom: 0;
    }
}

/* RECOMMEND */

.b_recommend_products {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.b_recommend_products .product {
    width: 45%;
}

.b_recommend_products .woocommerce-loop-product__title {
    margin-bottom: 30px;
    font-size: 1.1rem;
    margin-top: 10px;
}

.woocommerce-loop-product__title {
    color: #000;
}


.b_top_subheading .recommend_title {
    width: 148px;
}



@media screen and (min-width:965px) {

    .b_recommend_products {
        justify-content: flex-start;
    }


    .b_recommend_products .woocommerce-loop-product__title {
        font-size: 1.2rem;
        margin-top: 14px;
        line-height: 1.5;
        margin-bottom: 0;
    }

    .b_recommend-container .e_top_title {
        width: 148px;
    }

    .b_recommend_products .product {
        width: 21.25%;
        max-width: 183px;
    }

    .b_recommend_products .product:not(:nth-of-type(4n)) {
        margin-right: 5%;
    }

    .b_recommend-container .onsale, .b_recommend-container .price, .b_recommend-container .button{
        display: none!important;
    }

    .b_recommend-container li {
        margin-bottom: 0px!important;
    }

    .b_recommend-container li:hover {
        margin-bottom: 0px!important;
        box-shadow: none!important;
        text-decoration: underline;
    }
}

/* ELEMEN MODULES */

.e_top_title {
    margin: 0 auto;
    max-width: 174px;
    text-align: center;
    margin-bottom: 37px;
}


/* NAVBAR */

.header {
    display: flex;
    justify-content: space-between;
    z-index: 9;
    height: 60px;
    top: 0;
    left: 0;
}

.nav_bar {
    position: fixed;
    z-index: 9;
    width: 100%;
    top: 0;
    left: 0;
    padding-top: 12px;
    padding-bottom: 11px;
    padding-left: 16px;
    padding-right: 14px;
    height: 59px;
    display: flex;
    justify-content: space-between;
    border-bottom: solid 1px #999;
    background-color: #fff;
}

.nav_bar .hidden-xs .small {
    font-size: 0.9rem;
}

.b_head_icon,
.b_head_inquiry {
    display: flex;
}

.dashicons {
    padding: 0;
}

.b_head_icon {
    margin-left: 40px;
}

.b_head_icon a+a {
    padding-left: 20px;
}

.b_head_icon img {
    height: 23px;
    margin-top: 3px;
}


.b_head_icon a:last-child img {
    height: 25px;
}

.b_head_inquiry {
    flex-flow: column;
}


.b_head_inquiry a:hover {
    opacity: .8;
}

.b_head_inquiry a {
    height: 16px;
    margin-bottom: 4px;
}


.b_head_inquiry a img {
    height: 100%;
    vertical-align: top;
}

.nav a {
    color: #000;
    text-decoration: none;
    font-size: 1.4rem;
    color: #448aff;
}

.nav>li>a {
    padding-top: 1rem;
    padding-left: 37px;
    padding-bottom: 0.95rem;
    font-weight: bold;
}


.nav li>a:after {
    position: absolute;
    top: 20%;
    right: 40px;
}
.nav li:not(.headergoods)>a:after {
    content: "→";
    font-weight: bold;
}
.nav li.headergoods>a:after {
    content: "＋";
    font-weight: normal;
}

.nav_wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    z-index: 20;
    background-color: #fff;
    width: 100%;
    height: 100%;
    /* overflow: hidden; */
}


.nav_wrap .logo_wrap {
    height: 59px;
}

.logo_wrap {
    border-bottom: solid 1px #000;
}

.nav_wrap .nav {
    position: relative;
}

.nav_wrap li {
    display: block;
    border-bottom: solid 1px #ccc;
    margin: 0;
}

.nav_wrap li:last-child {
    margin-top: 1rem;
    text-align: center;
    padding-bottom: 3rem;
    border: none;
}

.nav_wrap li:last-child a:after {
    display: none;
}

.nav_wrap li:last-child img {
    height: 2rem;
}

.nav_wrap a {
    color: #000;
}

.nav_wrap a:hover,
.nav>li>a:hover,
.nav>li>a:focus {
    background: none;
    opacity: .8;
}


.e_nav_button_container {
    position: fixed;
    top: 19px;
    left: 16px;
    z-index: 99;
}

/*メニューボタンのエフェクト*/
.nav_button,
.nav_button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
}

.header .nav_button {
    z-index: 20;
    position: relative;
    width: 20px;
    height: 20px;
}

.header .nav_button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
    border-radius: 2px;
}

.header .nav_button span:nth-of-type(1) {
    top: 0;
}

.header .nav_button span:nth-of-type(2) {
    top: 9px;
}

.header .nav_button span:nth-of-type(3) {
    bottom: 0;
}

.header .nav_button.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
}

.header .nav_button.active span:nth-of-type(2) {
    opacity: 0;
}

.header .nav_button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
}

.breadcrumb_container {
    display: none;

}
/* goods */
ul.goodslist {
    display: none;
}
ul.goodslist, ul.goodslist li, .footer_goodslist {
    padding: 0 !important;
    margin: 0 !important;
}
ul.goodslist li a, ul.footer_goodslist li a {
    display: block;
}
.goods_event_content:hover {
    cursor: pointer;
}

@media screen and (min-width: 965px) {

    .nav_wrap {
        display: flex;
        position: relative;
        justify-content: flex-end;
        align-items: flex-end;
        background: none;
        padding-top: 15px;
        padding-bottom: 15px;
        height: auto;
    }


    .nav_wrap .logo_wrap {
        padding-top: 0;
        height: auto;
        position: absolute;
        left: 0;
        top: 5px;
    }

    .site-title {
        height: 25px;
    }

    .site-title a {
        transition: all 0.3s ease-out;
    }

    .site-title a:hover {
        opacity: .6;
    }

    .header {
        height: auto;
    }

    .breadcrumb_container {
        display: block;
        background-color: #CEDDE1;
        margin-bottom: 30px;
        padding-left: 61px;
        padding-right: 61px;

    }

    .contact_content {
        margin-top: 40px;
    }

    .breadcrumb {
        width: 878px;
        margin: 0 auto;
        background: none;
        padding-left: 0;
        padding-right: 0;
        font-size: 1.2rem;
    }

    .breadcrumb>li+li:before {
        content: ">";
        color: #000;
    }

    .nav>li>a {
        position: relative;
        height: 100%;
    }


    .nav>li>a:hover {
        opacity: 1;
    }

    .nav>li>a::before {
        position: absolute;
        bottom: -5px;
        left: 0;
        content: "";
        width: 100%;
        border-bottom: solid 1px #fff;
        transition: all 0.3s ease-out;
    }

    .nav>li>a.active::before {
        border-bottom: solid 1px #000;
    }

    .nav>li>a:hover::before {
        border-bottom: solid 1px #000;
    }

    .nav_wrap .site-title {
        height: auto;
        border: none;
        margin-bottom: 0;
        padding-top: 0;
    }

    .nav_bar {
        border: none;
        position: static;
        padding: 0;
        margin-top: 25px;
        margin-bottom: 8px;
        height: auto;
    }

    .nav_button {
        display: none;
    }


    .nav_wrap li {
        border: none;
    }

    .nav_wrap li+li+li {
        margin-left: 10px;
        padding-left: 12px;
        /*border-left: solid 1px #000; */
    }

    .nav_wrap li a {
        font-size: 1.3rem;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
    }

    .nav_wrap li:nth-child(2) {
        border: none;
    }

    .nav li a:after {
        display: none;
    }

    .nav_wrap>div {
        display: flex;
        justify-content: space-between;
        border: none;
    }
    .nav {
        height: auto;
        display: flex;
        height: 16px;
        margin-top: 0;
    }
    .b_head_inquiry {
        flex-flow: row;
        margin-top: 5px;
        vertical-align: top;
        margin-top: 0;
    }

    .b_head_inquiry>a {
        margin-left: 15px;
        display: block;
    }

    .b_head_inquiry img {
        height: 16px;
        max-width: initial;
    }

    .b_head_inquiry a:last-child {
        margin-left: 29px;
    }

    .b_head_inquiry a:last-child img {
        height: 22px;
    }

    /* goods */
    ul.goodslist, ul.footer_goodslist {
        display: none;
    }
    ul.goodslist {
        position: absolute;
        left: 0;
        width: calc(100% + 16px);
    }
    ul.goodslist li+li {
        margin-top: 1px !important;
    }
    ul.goodslist li a, .footer_goodslist li a {
        background: rgba(255, 255, 255, .8);
        text-align: center;
        padding: 1em .5em;
    }
    ul.goodslist li a:hover {
        background: #fff;
        opacity: 1;
    }
    /* footer_goodslist */
    .footer_goodslist {
        list-style-type: none;
        position: absolute;
        right: 0;
        font-size: 0;
        margin: 5px 0 0 -15px !important;
    }
    .footer_goodslist li {
        display: inline-block;
        background: #fff;
    }
    .footer_goodslist li+li {
        margin-left: 1px;
    }
    .footer_goodslist li a {
        padding: .5em 1em;
        font-size: 1rem;
        background: #CEDDE1;
        position: relative;
    }
}

@media screen and (max-width: 966px) {
    /* goods */
    .headergoods>a {
        margin-bottom: 0;
    }
    .nav li.headergoods .is_open:after {
        content: "―";
    }
    .goodslist li {
        border-bottom: 0;
    }
    ul.goodslist li a {
        padding: .5em;
        text-align: left;
        padding-left: calc(37px + .5em);
        position: relative;
    }
    ul.goodslist li a:after {
        content: "→" !important;
        display: inline-block !important;
    }
    ul.goodslist li:last-child a {
        padding-bottom: .95em;
    }
}


/* PRODUCT */

.content-text .product {
    margin-top: 0;
}

.product_thumbnail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 0;
}


.woocommerce div.product div.images {
    margin-bottom: 10px;
}

.product_thumbnail .woocommerce-product-gallery__image {
    height: auto;
}

.product_wrap {
    display: flex;
    flex-flow: column;
}

.product_wrap .woocommerce-product-gallery {
    order: 1;
}

.product_wrap .product_thumbnail {
    order: 2;
    border: none;
    margin-bottom: 10px;
}

.product_thumbnail .woocommerce-product-gallery__image {
    width: 24%;
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 10px;
}

.product_thumbnail .woocommerce-product-gallery__image:nth-child(4n+2):last-child {
    margin-left: auto;
    margin-right: 50.5%;
}


.product_thumbnail .woocommerce-product-gallery__image:nth-child(4n+3):last-child {
    margin-left: auto;
    margin-right: 25%;
}

.woocommerce div.product div.summary {
    order: 3;
    margin-bottom: 0;
}

.woocommerce div.product form.cart {
    position: static;
    margin-bottom: 0;
}

ul.product_feature_list {
    flex-flow: column;
    border-bottom: none;
    border: none;
    display: flex;
    padding-bottom: 0;
    margin-bottom: 0;
}

.product_feature_list li {
    padding-right: 0;
    margin-bottom: 36px;
    list-style: none;
}


.product_feature_list:last-child li:last-child {
    margin-bottom: 0;
}


.product_feature_wrap .product_feature_list p {
    font-size: 1.1rem;
    margin-bottom: 0;
}

.woocommerce div.product .product_title {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 13px;
}

.woocommerce-product-details__short-description h4 {
    font-weight: bold;
    margin-top: 0;
}

.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description h4 {
    font-size: 1.2rem;
}


.woocommerce-product-details__short-description {
    margin-bottom: 35px;
}

.woocommerce-product-details__short-description hr {
    border-color: #999;
    margin-top: 15px;
    margin-bottom: 15px;
}

.variations {
    width: 100%;
}

.variations .label {
    display: none;
}

.variations .value {
    width: 100%;
    display: block;
    position: relative;
    padding: 0 !important;
}

.variations select {
    width: 100%;
    height: 30px;
    padding-right: 1em;
    padding-left: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    appearance: none;
    position: relative;
    margin-bottom: 15px;
    border-radius: 0;
}

.variations .value:before {
    position: absolute;
    top: 5px;
    right: 16px;
    width: 9px;
    height: 15px;
    content: '';
    background: center center url(../images/openbtn.png) no-repeat;
    pointer-events: none;
}

.reset_variations {
    display: none !important;
}

.woocommerce div.product form.cart .button {
    width: 100%;
    border-radius: 0;
    background-color: #446889;
    font-size: 1.6rem;
}

.woocommerce div.product form.cart .button:hover {
    opacity: 0.8;
    color: white;
}

.product_container {
    margin-bottom: 18px;
    border-bottom: solid 1px #999;
    padding-bottom: 30px;
}


.product_container:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 25px;
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
    width: 100%;
}

.product_container h3 {
    margin-bottom: 20px;
    font-weight: bold;
}

.product_container p {
    font-size: 1.2rem;
    margin-bottom: 5px;
}

.woocommerce div.product .stock.in-stock {
    display: none !important;
/*    color: #77a464;*/
}

.woocommerce-variation-price {
    text-align: right;
/*    margin-bottom: 15px;*/
}

.woocommerce div.product form.cart div.quantity {
    margin-bottom: 15px;
    display: flex;
    justify-content: flex-end;
}

.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
    background: none;
}

.woocommerce-variation-price .price del,
.woocommerce-variation-price .price ins {
    width: 100%;
    line-height: 1;
}

.woocommerce div.product span.price del {
    font-size: 1.2rem;
    text-decoration: none;
    opacity: 1;
    font-weight: normal;
    color: #221815;
    margin-bottom: 10px;
}

.woocommerce-variation-price .price del .amount {
    text-decoration: line-through;
}

.woocommerce-variation-price .price ins {
    text-decoration: none;
    font-size: 1.6rem;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    position: static;
    color: #000;
    line-height: 1.4;
}

.product_feature_list li img {
    margin-bottom: 0;
}

.product_feature_list li h4 {
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.4;
    margin-top: 15px;
    margin-bottom: 17px;
}

.spec_wrap {
    margin-top: 0;
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.spec_title {
    font-size: 1.5rem;
    margin-top: 0;
}

.spec_wrap ul {
    margin-bottom: 0;
}

.spec_wrap li {
    font-size: 1.2rem;
}

.woocommerce div.product form.cart .variations {
    margin-bottom: 16px;
}


.woocommerce div.product form.cart .variations tr {
    display: flex;
    flex-flow: column;
}


.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
    width: 100%;
}


.product_feature_wrap p {}

@media screen and (min-width: 965px) {


    .product_container {
        border: none;
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .product_container p {
        line-height: 1.8;
        margin-bottom: 28px;
    }

    .product_feature_wrap .product_feature_list p {
        font-size: 1.122rem;
    }

    .product_container:last-child {
        border-top: none;
    }

    .product_feature_list li h4 {
        margin-bottom: 20px;
    }

    .woocommerce div.product form.cart .variations {
        margin-bottom: 0;
    }

    .woocommerce div.product form.cart .variations tr {
        flex-flow: row;
    }

    .product_wrap {
        flex-flow: wrap;
        justify-content: space-between;
    }

    .product_wrap .woocommerce-product-gallery {
        order: 1;
    }

    .product_wrap .product_thumbnail {
        order: 3;
        border: none;
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .woocommerce div.product div.summary {
        order: 2;
        margin-bottom: 0;
    }

    .product_feature_list li h4 {
        margin-bottom: 0;
    }

    .woocommerce-product-details__short-description hr {
        margin-top: 13px;
        margin-bottom: 13px;
    }

    .woocommerce #content div.product div.images,
    .woocommerce div.product div.images,
    .woocommerce-page #content div.product div.images,
    .woocommerce-page div.product div.images {
        width: 400px;
        /*r040513*/
        margin-right: calc(50% - 400px);
    }

    .woocommerce #content div.product div.summary,
    .woocommerce div.product div.summary,
    .woocommerce-page #content div.product div.summary,
    .woocommerce-page div.product div.summary {
        width: 50%;
        /*r040513*/
        float: left;
    }

    .woocommerce div.product .product_title {
        font-size: 2.4rem;
    }

    .woocommerce-product-details__short-description h4 {
        font-weight: normal;
        font-size: 1.6rem;
    }

    .woocommerce div.product div.summary {
        display: flex;
        flex-flow: column;
        justify-content: space-between;
    }

    .woocommerce div.product div.images {
        margin-bottom: 0;
    }

    .woocommerce-variation-price .price {
        text-align: left;
    }

    .woocommerce div.product span.price del {
        font-weight: bold;
        font-size: 1.6rem;
    }

    .price del .woocommerce-Price-amount {
        font-size: 1.6rem;
    }

    .price ins .woocommerce-Price-amount {
        font-size: 2.4rem;
    }
    /*r040513*/
    .related.products{
        padding-top: 24px;
        clear: both;
    }

    ul.product_feature_list {
        flex-flow: row;
        justify-content: space-between;
        padding-bottom: 0;
        margin-bottom: 20px;
        border-bottom: solid 1px #999;
    }

    .product_feature_list li {
        width: 31%;
        margin-bottom: 27px;
    }

    .product_feature_list > li:nth-child(2):last-child {
        margin-right: 35%;
    }

    .product_feature_list:last-child li:last-child {
        margin-bottom: 27px;
    }

    .spec_wrap {
        margin-top: 0;
    }

    .variations .value {
        width: 100%;
    }


    .spec_wrap li {
        line-height: 1.8;
    }

    .spec_title {
        font-size: 1.5rem;
        margin-bottom: 16px;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(4n+2):last-child {
        margin: 0;
    }

    .product_thumbnail .woocommerce-product-gallery__image {
        width: 15.35%;
    }

    .h_product_wrap {
        border-bottom: solid 1px #999;
        margin-bottom: 20px;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(8):last-child {
        margin-right: 67.5%;
    }


    .product_thumbnail .woocommerce-product-gallery__image:nth-child(9):last-child {
        margin-right: 51%;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(4n+2):last-child{
        margin: unset;
        margin-bottom: 10px;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(10):last-child {
        margin-right: 34%;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(4n+3):last-child{
        margin: unset;
    }

    .product_thumbnail .woocommerce-product-gallery__image:nth-child(11):last-child {
        margin-right: 17%;
    }
}

/* CART */

.cart-content .entry-title_container {
    margin-bottom: 9px;
}

.cart_container {
    margin-bottom: 42px;
}

.cart-site footer.container {
    border-color: #000;
}

.woocommerce-cart-form {
    margin-bottom: 15px;
}

.woocommerce #content table.cart .product-thumbnail,
.woocommerce table.cart .product-thumbnail,
.woocommerce-page #content table.cart .product-thumbnail,
.woocommerce-page table.cart .product-thumbnail {
    display: block;
    padding-right: 10px;
    padding-bottom: 10px;
}

.woocommerce table.shop_table_responsive tr,
.woocommerce-page table.shop_table_responsive tr {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.cart_header {
    padding-left: 14px;
    padding-top: 10px;
    padding-bottom: 9px;
}

.cart_header .product-name {
    display: none;
}

.woocommerce-checkout-review-order-table .product-name {
     display: table-cell;
    width: 80%;
 }

.woocommerce-checkout-review-order-table .product-total {
    display: table-cell;
    width: 20%;
}

.woocommerce-checkout-review-order-table .cart_item {
    display: table-row;
}

.cart_header th {
    padding: 0 !important;

}

tr.order-total th {
    display: none;
}

tr.order-total strong:after {
    content: "消費税込み";
    font-weight: normal;
    font-size: 1.2rem;
    display: block;
    margin-top: 10px;
}


.woocommerce-cart-form__cart-item {
    padding-top: 10px;
    padding-left: 11px;
    padding-right: 11px;
    padding-bottom: 5px;
}

.woocommerce-cart-form__contents .product-thumbnail {
    width: 30%;
    padding-right: 9px;
    text-align: left;
}

.woocommerce-cart-form__contents .product-name {
    order: 6;
    width: 100%;
    margin-top: 5px;
}


.woocommerce-cart-form__contents .product-name a {
    color: blue;
    text-decoration: underline;
}

.woocommerce-cart-form__contents .product-price,
.woocommerce-cart-form__contents .product-subtotal {
    width: 21%;
}

.woocommerce-cart-form__contents .product-quantity {
    width: 17%;
}

.woocommerce-cart-form__contents .product-remove {
    width: 5%;
}

.woocommerce-cart-form__contents .product-remove a {
    color: blue !important;
    font-size: 2.0rem;
}

.woocommerce table.shop_table td {
    border: none;
}

.woocommerce table.shop_table_responsive thead,
.woocommerce-page table.shop_table_responsive thead {
    display: block;
}

.woocommerce table.shop_table_responsive tr td,
.woocommerce-page table.shop_table_responsive tr td {
    text-align: left !important;
}

.woocommerce table.shop_table_responsive tr td::before,
.woocommerce-page table.shop_table_responsive tr td::before {
    display: none;
}

.woocommerce .quantity .qty {
    width: 61px;
    height: 30px;
    float: none;
    margin-bottom: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    -webkit-appearance: none;
}


.woocommerce .quantity .minus,
.woocommerce .quantity .plus {
    height: 30px;
    width: 31px;
    padding: 0;
    border-radius: 0;
}


.woocommerce .quantity .plus {
    border-left: none;
}

.woocommerce .quantity .minus {
    border-right: none;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    background-color: #446889;
    color: #fff;
    width: 100%;
    border-radius: 0;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.2rem;
}

td[data-title="合計"] .tax {
    font-size: 1.2rem;
}

.product-update .actions {
    width: 100%;
}

.coupon {
    display: none;
}

.woocommerce a.remove {
    line-height: 0.8;
}

/* .woocommerce .cart-collaterals table.shop_table {
    display: none;
} */

.wc-proceed-to-checkout {
    text-align: center;
    padding: 0;
}

.woocommerce .wc-proceed-to-checkout a.button {
    background-color: #446889;
    font-weight: normal;
    padding-top: 15px;
    padding-bottom: 15px;
    font-weight: bold;
}

.b_cart_guide {
    font-size: 1.2rem;
}

.b_cart_guide .h_bold {
    font-weight: bold;
    font-size: 1.2rem;
    margin-top: 1rem;
}

.b_cart_link {
    text-decoration: underline;
    display: flex;
    justify-content: space-between;
    color: #221815;
}

.b_cart_link a:hover {
    color: #446889;
}

.product-quantity .minus {
    border-right: none;
}

.product-quantity .plus {
    border-left: none;
}

.variations tr td {
    display: block;
    line-height: 1 !important;
}

.cart_table {
    border: solid 1px #999;
    font-size: 1.2rem;
    margin-bottom: 15px;
}

.cart_header {
    padding-top: 10px;
    padding-left: 10px;
    padding-bottom: 10px;
    display: flex;
    font-weight: bold;
}


.cart_item {
    padding-top: 10px;
    padding-left: 11px;
    padding-bottom: 12px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border-top: solid 1px #999;
    justify-content: space-between;
}

.cart_header .product-thumbnail,
.cart_item .product-thumbnail {
    width: 28%;
}

.cart_header .cart_header .product-name {
    display: none;
}

.cart_header .product-price,
.cart_item .product-price {
    width: 22%;
}

.cart_header .product-quantity,
.cart_item .product-quantity {
    width: 16%;
}

.cart_header .product-subtotal,
.cart_item .product-subtotal {
    width: 22%;
}

.cart_item .product-thumbnail {
    width: 28%;
    order: 1;
    margin-right: 9px;
}

.cart_item .product-name {
    order: 6;
    width: 100%;
    margin-top: 17px;
}

.cart_item .product-name a {
    color: blue;
    text-decoration: underline;
}

.cart_item .product-price {
    width: 20%;
    order: 2;
}

.cart_item .product-quantity {
    width: 15%;
    order: 3;
}

.cart_item .product-subtotal {
    width: 20%;
    order: 4;
}

.cart_item .product-remove {
    width: 10%;
    order: 5;
    font-size: 1.4rem;
}

.cart_item .product-remove a {
    color: blue !important;
}

.cart_item .product-quantity .qty {
    width: 34px;
    height: 20px;
    padding: 0;
    text-align: center;
    border-radius: 0;
    -webkit-appearance: none;
}

.cart_item .product-quantity .plus,
.cart_item .product-quantity .minus {
    display: none;
}

.cart_table .cart_footer {
    padding: 13px;
    border-top: solid 1px #999;
    text-align: right;
}

.cart_footer .woocommerce-Price-amount {
    font-size: 1.6rem;
}

.cart_footer .product-total {
    margin-top: 28px;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    z-index: 1;
}

@media screen and (min-width: 965px) {

    .cart-content {
        margin-top: 42px;
    }

    .cart-content .entry-title_container {
        margin-bottom: 20px;
    }

    .cart_container {
        margin-bottom: 64px;
    }

    .cart_table {
        padding-top: 14px;
        padding-bottom: 33px;
        padding-left: 40px;
        padding-right: 27px;
        font-size: 1.6rem;
    }

    .cart_header {
        padding-left: 0;
        padding-bottom: 15px;
        justify-content: flex-start;
        padding-top: 0;
    }

    .cart_header .product-thumbnail {
        width: 47%;
    }


    .cart_header .product-price {
        width: 13%;
    }

    .cart_header .product-quantity {
        width: 20%;
    }

    .cart_header .product-subtotal {
        width: 13%;
    }

    .cart_item {
        padding-top: 22px;
        padding-left: 0;
        padding-bottom: 14px;
    }

    .cart_item .product-thumbnail {
        width: 22%;
        order: 1;
        margin-right: 0;
    }

    .cart_item .product-thumbnail img {
        max-width: 135px;
    }

    .cart_item .product-name {
        order: 2;
        width: 25%;
        margin-top: 0;
    }

    .cart_item .product-price {
        width: 13%;
        order: 3;
    }

    .cart_item .product-quantity {
        width: 20%;
        order: 4;
        display: flex;
    }

    .cart_item .product-subtotal {
        width: 13%;
        order: 5;
    }

    .cart_item .product-remove {
        width: 5%;
        order: 6;
    }

    .cart_item .product-remove .remove {
        font-size: 2.4rem;
        line-height: 1;
    }

    .cart_table .cart_footer {
        border-top: none;
        padding: 0;
    }

    .cart_item .product-quantity .plus,
    .cart_item .product-quantity .minus {
        display: block;
    }

    .cart_footer .actions .button {
        width: 200px;
        font-weight: normal;
    }


    .woocommerce .cart-collaterals .cart_totals {
        border: solid 1px #999;
    }

    .woocommerce .cart-collaterals table.shop {
        display: table;
        border: none;
        margin: 0;
        padding-right: 0;
    }


    .cart_item .product-quantity .minus,
    .cart_item .product-quantity .plus,
    .cart_item .product-quantity .qty {
        width: 36px;
        height: 38px;
        display: inline-block;
    }


    .cart_item .product-quantity .minus,
    .cart_item .product-quantity .plus {
        background-color: #fbfaf9;
        padding: 0;
    }

    .cart_item .product-quantity .qty {
        width: 36px;
        padding: 0;
        font-size: 1.2rem;
        -moz-appearance: textfield;
        vertical-align: top;
    }

    .cart_totals {
        padding: 20px 27px;
    }

    .cart_totals h3 {
        margin-top: 0;
        padding-bottom: 1rem;
        border-bottom: solid 1px #999;
        font-weight: bold;
        font-size: 1.6rem;
    }

    .woocommerce-page .cart-collaterals .cart_totals {
        width: 60%;
        margin-bottom: 40px;
    }

    .woocommerce .shop_table_responsive .order-total td[data-title="合計"] {
        width: 100%;
        text-align: right !important;
    }

    .wc-proceed-to-checkout {
        width: 100%;
        margin-left: auto;
    }

    .b_cart_guide {
        width: 50%;
        margin-left: auto;
        text-align: right;
    }

    .b_cart_link {
        justify-content: flex-end;
    }

    .b_cart_link a {
        margin-left: 1rem;
    }

    .quantity_container {
        width: 50%;
        padding: 0 !important;
    }

    .variations tr {
        display: flex;
        justify-content: space-between;
    }

    .woocommerce-cart-form {
        margin-bottom: 26px;
    }

    .woocommerce .cart-collaterals table.shop_table {
        display: flex;
        border: none;
        justify-content: flex-end;
        margin-bottom: 20px;
    }


    .woocommerce .cart-collaterals table.shop_table .order-total {
        margin-top: 10px;
    }

    .woocommerce .cart-collaterals table.shop_table td {
        text-align: right;
        line-height: 1;
        padding: 0 !important;
    }

    .woocommerce .cart-collaterals table.shop_table td strong {
        padding-bottom: 10px;
        display: inline-block;
    }


    .woocommerce .wc-proceed-to-checkout a.button {
        padding-top: 10px;
        padding-bottom: 10px;
        font-weight: normal;
    }

}

/* CHECKOUT */

.woocommerce-checkout-payment .place-order .button {
    width: 200px;
    margin: 0 auto;
}

/* CONTACT */

.b_contact_text {
    font-size: 1.2rem;
    margin-bottom: 25px;
    line-height: 1.5;
}

.b_contact_text p {
    margin-bottom: 28px;
}


.b_contact_text a[href="mailto:kk.nuovo@wine.ocn.ne.jp"] {
    text-decoration: underline;
}

.b_contact_text ul {
    list-style: none;
    padding: 0;
    list-style-type: none;
    margin-bottom: 30px;
}

.b_contact_form .form-group {
    border-bottom: 2px solid #efefef;
    padding-bottom: 13px;
}

.contact-site footer.container {
    border-color: #000;
}

.b_contact_form .form-group:last-child {
    border-bottom: none;
}

.b_contact_form input:not([type="submit"]):not([type="checkbox"]), .b_contact_form textarea {
    width: 100%;
}
.form_checkbox {
    margin: 20px auto 0;
}
.form_checkbox p {
    text-align: center;
}
.b_contact_form input[type="submit"] {
    display: block;
    margin: 0 auto;
}

@media screen and (min-width: 965px) {

    .contact_content {
        margin-bottom: 30px;
    }

    .contact-site .entry-title_container {
        margin-bottom: 5px;
    }

    .contact_entry-title {
        border-bottom: solid 1px #999;
        margin-bottom: 10px;
        padding-bottom: 13px;
    }

    .b_contact_form {
        margin-top: 30px;
    }

    .b_contact_text {
        font-size: 1.2rem;
        line-height: 1.5;
    }

    .b_contact_form .form-group {
        border-bottom: none;
        padding-bottom: 0;
        display: flex;
        margin-bottom: 0;
    }

    .b_contact_text a[href="mailto:kk.nuovo@wine.ocn.ne.jp"] {
        text-decoration: underline;
    }

    .b_contact_text a[href="mailto:kk.nuovo@wine.ocn.ne.jp"]:hover {
        text-decoration: underline;
    }

    .b_contact_text li,
    .b_contact_text p {
        line-height: 1.6;
    }

    .woocommerce .contact_container .b_button {
        text-align: center;
        margin: 20px auto 0;
    }

    .woocommerce .contact_container .button {
        width: 200px;
    }

    .b_contact_form form .control-label {
        padding: 20px;
    }

    .b_contact_form form .form-group {
        margin-left: 0;
        margin-right: 0;
    }

    .b_contact_form form .col-md-3 {
        border-left: solid 1px #000;
        border-right: solid 1px #000;
        border-bottom: solid 1px #000;
        padding-left: 0;
        padding-right: 0;
        width: 25%;
    }

    .b_contact_form form .col-md-9 {
        padding-top: 15px;
        padding-bottom: 15px;
        border-bottom: solid 1px #000;
        border-right: solid 1px #000;
        width: 75%;
    }

    .b_contact_form .form-group:last-child .control-label {
        padding-top: 40px;
    }

    .b_contact_form form {
        border-top: solid 1px #000;
        /* border-left: solid 1px #000;
        border-right: solid 1px #000; */
        margin-bottom: 30px;
    }

    .b_contact_form form .control-label {
        padding: 20px;
        text-align: left;
    }

    .b_contact_form .form-control {
        border-radius: 0;
    }
}

/* QA */

.qa_container {
    padding-left: 0;
    padding-right: 0;
}

.qa_entry-title_container {
    margin-bottom: 20px;
}

.b_qa_text {
    padding-bottom: 18px;
    margin-bottom: 22px;
    padding-left: 63px;
    padding-right: 33px;
    position: relative;
    border-bottom: solid 1px #999;
    font-size: 1.2rem;
}


.b_qa_text p:first-child {
    margin-bottom: 24px;
    font-weight: bold;
}


.b_qa_text p:last-child {
    margin-bottom: 0px;
}

.b_qa_text:last-child {
    border: none;
    padding-bottom: 18px;
    margin-bottom: 0;
}

.b_qa_text p:first-child::before,
.b_qa_text p:last-child::before,
p.qa_a::before {
    content: '';
    position: absolute;
    width: 18px;
    height: 18px;
    left: 30px;
    background-size: cover;
}

.b_qa_text p:first-child::before {
    background-image: url(../images/q.png);
}

.b_qa_text p:last-child::before,
p.qa_a::before {
    background-image: url(../images/a.png);
}

.qa_content {
    margin-bottom: 19px;
}

@media screen and (min-width: 965px) {

    .qa_content {
        margin-bottom: 33px;
    }

    .qa_container {
        padding-left: 61px;
        padding-right: 61px;
    }

    .b_qa_text p:first-child::before,
    .b_qa_text p:last-child::before,
    p.qa_a::before {
        left: 0;
    }

    .qa_entry-title_container {
        margin-bottom: 33px;
    }

    .qa_content {
        margin-top: 39px;
    }


    .b_qa_text p:first-child {
        margin-bottom: 26px;
    }

    .b_qa_text {
        padding-right: 0;
        padding-left: 30px;
        padding-bottom: 34px;
        font-size: 1.4rem;
        margin-bottom: 24px;
    }

    .b_qa_text p:before {
        left: 0;
    }

}

/* 2023/06 */
.cart_shoplist dd h2 {
    font-size: inherit;
    font-weight: bold;
    margin: 1em .5em .5em;
}
.cart_shoplist ul {
    list-style-type: none;
    padding-left: 1em;
}
.cart_shoplist ul li + li {
    margin-top: 1em;
}

/* ABOUT US */

.aboutus_container {
    margin-bottom: 34px;
}

.aboutus_container li {
    line-height: 1.6;
}

.b_aboutus_text {
    margin-bottom: 30px;
}

.b_aboutus_text:last-child {
    margin-bottom: 0;
}


.aboutus_container:last-child .b_aboutus_text ul {
    margin-bottom: 0;
}

.b_aboutus_text ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 34px;
}


.b_aboutus_text ul:last-child {
    margin-bottom: 0;
}

.b_aboutus_text ul ul {
    padding-left: 0;
    margin-bottom: 0;
}

.b_aboutus_text {
    font-size: 1.2rem;
}


.b_aboutus_text p {
    margin-bottom: 30px;
}

@media screen and (min-width: 965px) {

    .aboutus_site .h_mb50 {
        margin-bottom: 50px;
    }

    .aboutus_entry-title {
        border-bottom: solid 1px #999;
        padding-bottom: 12px;
        margin-bottom: 0;
    }

}

/* SHOPPING GUIDE */

.sg_content .entry-title_container {
    margin-bottom: 19px;
}

.b_shoppingguide_text {
    margin-bottom: 34px;
    padding-bottom: 0;
    font-size: 1.2rem;
}


.sg_content .container:nth-last-child(3) .b_shoppingguide_text {
    margin-bottom: 16px;
}

.b_shoppingguide_text p {
    margin-bottom: 0;
}

.caution {
    color: red;
    font-weight: bold;
    margin-bottom: 20px;
    font-size: 1.2rem;
    line-height: 1.5;
}

a[href="/contact"] {
    text-decoration: underline;
    color: blue;
}

.h_mb0 {
    margin-bottom: 0;
}

.sg_container .container:last-child .b_shoppingguide_text {
    padding-bottom: 0;
    margin-bottom: 5px;
}

.b_shoppingguide_text {
    font-size: 1.2rem;
}

.b_shoppingguide_text ul {
    list-style: none;
    padding-left: 0;
}


.sg_site footer.container {
    border-color: #000;
}

@media only screen and (min-width:965px) {

    .sg_site {}

    .sg_content {
        margin-top: 40px;
    }

    .sg_content .caution {
        margin-bottom: 23px;
    }

    .b_shoppingguide_text {
        margin-bottom: 34px;
    }


    .b_shoppingguide_text ul {
        margin-bottom: 30px;
    }

    .sg_content .container:nth-last-child(3) .b_shoppingguide_text {
        margin-bottom: 34px;
    }


    .sg_site footer.container {
        border: none;
        padding-top: 0;
    }
}

/* CHECKOUT */


.address-box .state_select {
    width: 100%;
    padding: 6px 16px;
    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;
    position: relative;
    margin-bottom: 15px;
    border-radius: 0;
    border: solid 1px #ccc;
}



.address-box {
    position: relative;
}

.address-box:before {
    position: absolute;
    top: 45px;
    right: 16px;
    width: 9px;
    height: 15px;
    content: '';
    background: center center url(../images/openbtn.png) no-repeat;
    pointer-events: none;
}

.checkbox input[type="checkbox"] {
    margin-left: 0;
}

@media all and (-ms-high-contrast: none) {

    .woocommerce table.shop_table td {
        border-top: solid 1px #000;
    }

    .woocommerce table.shop_table td.actions {
        border-top: none;
        margin-right: auto;
    }

    .variations .value {
        width: 70%;
    }

    .cart_item .product-quantity .qty {
        padding-left: 0;
    }

    .woocommerce a.remove {
        line-height: 1;
    }

    .woocommerce a.remove:hover {
        line-height: 1;
    }
}

@supports (-ms-ime-align: auto) {
    .variations .value {
        width: 65%;
    }

    .cart_item .product-quantity .qty {
        padding-left: 0;
    }

    .woocommerce a.remove {
        line-height: 1;
    }

    .woocommerce a.remove:hover {
        line-height: 1;
    }
}


@media only screen and (max-width:964px) {
    .hidden-xs {
        display: none !important;
    }

    .visible-xs {
        display: block !important;
    }

    .nav_wrap .nav {
        position: relative;
        overflow-y: scroll;
        height: 100%;
        padding-bottom: 40px;
    }

    .spec_wrap {
        border-top: 1px solid #999;
        padding-top: 20px;
    }
}

/* 2020/05 product_icon */
.product_icon {
    font-size: 0;
    list-style: none;
    padding: 0;
    width: 100%;
    margin: 0 auto;
}
.product_icon li {
    display: inline-block;
}
@media only screen and (max-width:964px) {
    .product_icon {
        max-width: 280px;
    }
    .product_icon li {
        width: 22%;
        max-width: 60px;
        margin: 1.5%;
    }
}
@media only screen and (min-width:965px) {
    .product_icon {
        width: 408px;
        margin: 0 auto;
    }
    .product_icon li {
        width: 44px;
        margin: 4px;
    }
    .product_icon li:first-child {
        margin-left: 0;
    }
    .product_icon li:last-child {
        margin-right: 0;
    }
}

/* 2020/11/11 */
.product_thumbnail .woocommerce-product-gallery__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 2020/12/03 */
.woocommerce a.open-default.button, .stocklist_dl dt,
.woocommerce a.open-default02.button {
    display: block;
    background: #6eace4;
    color: #fff;
    font-weight: bold;
    text-align: center;
    height: 38px;
    line-height: 38px;
    border-radius: 19px;
}
.woocommerce a.open-default.button,
.woocommerce a.open-default02.button {
    width: 80%;
    margin: 20px auto 0;
    font-size: 1.4rem;
    padding: 0;
}
.woocommerce a.open-default.button:hover,
.woocommerce a.open-default02.button:hover {
    background-color: #6eace4 !important;
}
/* izimodal */
#stocklist_popup {
    width: 93.3%;
    max-height: 95vh;
    overflow: hidden;
    border-radius: 5px !important;
    padding: 10px;
}
.iziModal-content {
    padding: 10px;
}
.stocklist_dl {
    padding: 30px 20px 20px;
    margin-bottom: 10px;
}
.stocklist_dl dt {
    margin-bottom: 20px;
}
.stocklist_table {
    width: 100%;
}
.stocklist_table th, .stocklist_table td {
    border: 1px solid #6eace4;
    padding: .5em 1em !important;
    font-size: 1.4rem;
}
.stocklist_table thead th {
    background: #6eace4;
    text-align: center;
    color: #fff;
}
.stocklist_table thead th:first-child {
    border-right-color: #fff;
}
.stocklist_table thead th:last-child {
    border-left-color: #fff;
}
.stocklist_table tbody th {
    width: 10em;
}
.stocklist_table .stock_status {
    text-align: center;
}
#stocklist_popup .close a:hover {
    text-decoration: none;
}
.stock_name {
    width: 20em;
    background: #bde0ff;
    font-size: .8em;
}
.stock_color {
    width: calc(100% - 27em);
    text-align: left;
}
.stock_status {
    width: 7em;
    text-align: center;
}
#stocklist_popup .close {
    margin-right: 10px;
}
/* sp */
@media only screen and (max-width:768px) {
    .stock_name {
        width: 12em;
    }
    .stock_color {
        width: calc(100% - 15em);
    }
    .stock_status {
        width: 3em;
    }
    .stocklist_dl {
        padding: 30px 0 20px;
    }
    .stocklist_table th, .stocklist_table td {
        font-size: 1.2rem;
    }
}

/* 2021/01/15 */
@media only screen and (min-width:481px) and (max-width:980px) {
    .woocommerce form .form-row textarea[name="order_comments"] {
        height: 7em;
    }
}
@media only screen and (max-width:480px) {
    .woocommerce form .form-row textarea[name="order_comments"] {
        height: 10em;
    }
}

/* 2021/06/10 */
/* VOICE */
.voice_container ul {
    list-style: none;
    padding: 0;
}
.voice_container ul li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}
.voice_container ul li + li{
    padding-top: 25px;
    border-top: 1px dashed #000;
}
.voice_container ul li img {
    width: 250px;
    height: 250px;
    border-radius: 50%;
}
.dogsname {
    font-size: 16px;
    font-weight: bold;
}
.dogsname span {
    font-size: 75%;
    font-weight: normal;
}
.voice_container ul dl {
    width: calc(100% - 280px);
}
.voice_container ul dl dt {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
}
.carttype {
    color: #FFF;
    background: #6eace4;
    padding: 1px 10px;
    margin-left: 10px;
    border-radius: 5px;
}
.voice_container ul dl dd {
    font-size: 14px;
}
/* sp */
@media only screen and (max-width:768px) {
    .voice_container ul li {
        flex-direction: column;
    }
    .voice_container ul li div {
        display: block;
        margin: 0 auto;
    }
    .dogsname {
        text-align: center;
        font-size: 14px;
    }
    .voice_container ul dl {
        width: 100%;
    }
    .voice_container ul dl dt {
        font-size: 12px;
        text-align: right;
        flex-direction: column-reverse;
        margin-bottom: 5px;
    }
    .carttype {
        text-align: center;
        margin: 0 0 5px;
    }
    .voice_container ul dl dd {
        font-size: 12px;
    }
}
/* related - 2021/07/19 */
.related > h2 {
    font-size: 1.6rem;
    font-weight: bold;
}
.related > h2:before {
    content: "\f1b0";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 5px;
}
.related .products .add_to_cart_button,
.related .products  .product_type_simple,
.products .product .add_to_cart_button,
.products .product .product_type_variable {
    display: none !important;
}

/*--- single product / 2021/07/20 ---*/
/* slider */
.product_feature {
    margin: 20px auto;
    padding: .5em 2em 1em;
    background: #e5eef0;
}
.product_feature p {
    margin-bottom: 0;
}
.slick-dotted.slick-slider.product_feature_slide {
    padding: 0 25px;
    margin-bottom: 30px;
}
.slick-dotted.slick-slider.product_feature_slide img {
    width: 100%;
}
.product_feature_slide .slick-prev,
.product_feature_slide .slick-next {
    top: 33%;
}
.product_feature_slide .slick-prev {
    left: 0;
}
.product_feature_slide .slick-next {
    right: 0;
}
.product_feature_slide .slick-prev:before,
.product_feature_slide .slick-next:before {
    color: #000;
}
.product_feature_slide .slick-prev:before {
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}
.product_feature_slide .slick-next:before {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}
.product_feature_slide .slick-dots {
    width: calc(100% - 50px);
    margin: 15px auto 0;
    position: static;
}
.product_feature_slide .slick-dots li {
    width: auto;
    margin: 0;
}
.product_feature_slide .slick-dots li button:before {
    margin: 0;
    font-size: 1.2rem;
}
.product_container p.feature_text {
    margin-bottom: 20px;
}
/* spec */
.spec_wrap {
    border-top: 1px solid #999;
    padding: 20px 10px 0;
    margin-bottom: 50px;
}
/* popup */
#product_single_gallery {
    margin: 20px auto;
    padding-top: 20px;
    border-top: 1px solid #999;
}
.cart_img_gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.cart_img_gallery li {
    width: calc(25% - 6px);
}
.cart_img_gallery li:not(:nth-child(4n)) {
    margin-right: 8px;
}
.cart_img_gallery li:not(:nth-child(-n + 4)) {
    margin-top: 8px;
}
/* IE */
.woocommerce-product-details__short-description {
    min-height: 0%;
}
.up-sells.upsells.products {
    display: none;
}
/* cart */
.cart_item .product-quantity .minus, .cart_item .product-quantity .plus {
    display: none;
}
.woocommerce #content table.cart td.actions, .woocommerce table.cart td.actions, .woocommerce-page #content table.cart td.actions, .woocommerce-page table.cart td.actions {
    margin-left: auto;
    padding: 20px !important;
}
.shipping_note {
    text-align: left;
    padding: 1em;
    background: #CEDDE1;
    font-size: 1.2rem;
}
.shipping_note strong {
    display: block;
    margin-bottom: 5px;
    font-size: 1.1em;
}

/* 2023/12/01 contactform re-captcha */
.grecaptcha-badge { visibility: hidden; }
.captcha_text { display:none; font-size: 1.2rem; margin: 1em 0; }
.captcha_text a { color: #0084B4; }

/* 2025/06/11 icon_popup */
#icon_popup {
    width: 93.3%;
    margin: 0 auto;
    top: 5%;
    bottom: auto;
}
#icon_popup .iziModal-content {
    padding: 40px 30px !important;
}
.pu_icon_list {
    list-style-type: none;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding: 0;
    margin: 0;
}
.pu_icon_list + .pu_icon_list {
    margin-top: 15px;
}
.pu_icon_list li {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: start;
    align-items: flex-start;
    width: calc(50% - 10px);
}
.pu_icon_list li:nth-child(n+3) {
    margin-top: 15px;
} 
.pu_icon_list li:nth-child(even) {
    margin-left: 20px;
}
.pu_icon_img {
    width: 60px;
    height: 60px;
    line-height: 0;
    margin: 0 10px 0 0;
}
.pu_icon_text {
    font-size: 1rem;
    margin: 0;
    width: calc(100% - 70px);
}
#icon_popup .close {
    position: absolute;
    top: 5px;
    right: 10px;
}
#icon_popup .close a:hover {
    text-decoration: none;
}

@media only screen and (min-width:965px) {
    #icon_popup {
        max-width: 900px !important;
    }
    #icon_popup .iziModal-content {
        display: -webkit-box;
        display: flex;
    }
    .pu_icon_list {
        display: block;
        width: calc(100% / 4);
    }
    .pu_icon_list + .pu_icon_list {
        margin-left: 20px;
        margin-top: 0;
    }
    .pu_icon_list li {
        width: 100%;
    }
    .pu_icon_list li:nth-child(even) {
        margin-left: 0;
    }
    .pu_icon_list li:nth-child(n+3) {
        margin-top: 0;
    }
    .pu_icon_list li + li {
        margin-top: 15px !important;
    }
    .pu_icon_img {
        width: 44px;
        height: 44px;
    }
    .pu_icon_text {
        width: calc(100% - 54px);
    }
}

/* 2025/11/20 取扱店舗リンク追加 */
#retailstore {
    margin-top: -76px;
    padding-top: 76px;
}
@media only screen and (min-width:965px) {
    #retailstore {
        margin-top: -16px;
        padding-top: 16px;
    }
}