@charset "utf-8";
/* *****************************************************************
index
商品ページ
その他ページ
問い合わせ
おすすめ
詳細ページ
***************************************************************** */
/* *****************************************************************
index
***************************************************************** */
.home h2{
    width: 100%;
    padding-bottom: 8px;
    border-bottom: 1px solid #000;
}
.home h2 span{
    display: block;
    line-height: 1;
}
.home section{
    margin-bottom: 40px;
}
.home section:last-child{
    margin-bottom: 0;
}
.home .news h2 img{
    width: 94px;
    margin-right: 10px;
}
.home .news ul li{
    width: 100%;
    padding: 17px 0;
    border-bottom: 1px dashed #727171;
    color: #595757;
}
.home .news .recommend{
    margin-top: 35px;
}
.home .news .recommend a:hover{
    filter: drop-shadow(0 0 4px rgba(0,0,0,0.7));
}
.home .lineup h2 img{
    width: 120px;
    margin-right: 10px;
}
.home .lineup h2 span{
    line-height: 2;
}
.home .lineup ul,.home .maker ul{
    width: 100%;
    margin-top: 18px;
    display: flex;
    flex-wrap: wrap;
}
.home .lineup ul li a{
    display: block;
}
.home .lineup ul li a:hover{
    transform: translateY(-5px);
    color: #027299;
}
.home .lineup ul li{
    width: 22.937%;
    margin-right: 2.75%;
    margin-bottom: 2.75%;
}
.home .lineup ul li:nth-child(4n){
    margin-right: 0;
}
.home .lineup ul li .photo{
    width: 100%;
    position: relative;
    overflow: hidden;
    border: 1px solid #ccc;
}
.home .lineup ul li a:hover .photo{
    border: 1px solid #027299;
}
.home .lineup ul li .photo:before{
    content: "";
    display: block;
    padding-top: 100%;
}
.home .lineup ul li .photo img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}
.home .lineup ul li p{
    font-size: 12px;
    line-height: 1.5;
    margin-top: 5px;
}
.home .maker h2 img{
    width: 114px;
    margin-right: 10px;
}
.home .maker ul li{
    width: 18.763%;
    margin-right: 1.546%;
    margin-bottom: 1.546%;
}
.home .maker ul li:nth-child(5n){
    margin-right: 0;
}
.home .maker ul li a{
    display: block;
}
.home .maker ul li a:hover{
    transform: translateY(-5px);
}
@media only screen and (max-width: 1100px) {
    .home .lineup ul li{
        width: 31.5%;
    }
    .home .lineup ul li:nth-child(4n){
        margin-right: 2.75%;
    }
    .home .lineup ul li:nth-child(3n){
        margin-right: 0;
    }
    .home .maker ul li{
        width: 23.84%;
    }
    .home .maker ul li:nth-child(5n){
        margin-right: 1.546%;
    }
    .home .maker ul li:nth-child(4n){
        margin-right: 0;
    }
}
@media only screen and (max-width: 520px) {
    .home .lineup ul li,.home .maker ul li{
        width: 48%;
        margin-right: 4%;
        margin-bottom: 4%;
    }
    .home .lineup ul li:nth-child(3n){
        margin-right: 4%;
    }
    .home .lineup ul li:nth-child(2n),
    .home .maker ul li:nth-child(2n),
    .home .lineup ul li:nth-child(4n){
        margin-right: 0;
    }
}

/* *****************************************************************
商品ページ
***************************************************************** */
.item .head h2{
    font-size: 22px;
    line-height: 1.3;
    color: #027299;
    display: flex;
    align-items: center;
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
    margin-bottom: 25px;
}
.item .head h2::before{
    content: "";
    display: block;
    width: 26px;
    height: 23px;
    background: url("../../images/common/icon_diamond.svg") no-repeat;
    background-size: 26px auto;
    margin-right: 5px;
}
.item .head .photo{
    width: 42%;
}
.item .head .txt_area{
    width: 58%;
    padding-left: 25px;
}
.item .head .txt_area .sub{
    width: 80%;
    max-width: 255px;
    margin: 1em auto 0;
}
.item .head ul.link_btn{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 40px 0 0;
}
.item .head ul.link_btn li{
    width: 18.72%;
    margin-right: 1.6%;
    margin-bottom: 1.6%;
}
.item .head ul.link_btn li:nth-child(5n){
    margin-right: 0;
}
.item .head ul.link_btn li a{
    width: 100%;
    height: 100%;
    padding: 0.5em 1.5em;
    border: 1px solid #9fa0a0;
    background-color: #f7f8f8;
    border-radius: 10px;
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 1.4;
    color: #595757;
}
.item .head ul.link_btn li a::after{
    content: "▼";
    display: block;
    margin-left: auto;
    padding-left: 3px;
}
.item .head ul.link_btn li a:hover{
    background-color: #595757;
    color: #fff;
}
.item .child_cate{
    width: 100%;
    margin-top: 40px;
}
.item .child_cate h3{
    font-size: 16px;
    color: #fff;
    text-align: center;
    background-color: #027299;
}
.item .child_cate .main_photo img{
    margin: 10px auto 15px;
}
.item .child_cate .scroll{
    width: 100%;
    overflow-x: scroll;
}
.item .child_cate table{
    width: 100%;
    min-width: 668px;
    border-collapse: collapse;
    font-size: 12px;
}
.item .child_cate table tr th,
.item .child_cate table tr td{
    line-height: 1.2;
    vertical-align: middle;
    border: 1px solid #aaa;
    padding: 5px;
    text-align: center;
}
/*.item .child_cate table tr th.bg{
    background-color: #e6e6e6;
}*/
.item .child_cate table tr th{
    background-color: #e6e6e6;
}
.item .child_cate table tr td:first-child{
    min-width: 8em;
    font-size: 12px;
    font-weight: bold;
    text-align: left;
}
.item .child_cate table tr td.buy{
    width: 80px;
}
.item .child_cate table tr td.price span{
    /*font-size: 10px;*/
    font-weight: bold;
    color: #e60012;
    margin-right: 2px;
}
.item .child_cate table tr td.buy input.input-text{
    width: 38px;
    outline: none;
	border: 1px solid #999;
    border-radius: 5px;
	transition: all .3s;
    padding: 1px 3px;
    text-align: center;
}
.item .child_cate table tr td.buy input.input-text:focus{
    border: 1px solid #000;
    filter: drop-shadow(0 0 1px rgba(0,0,0,0.4));
}
.quantity{
    display: inline-block;
}
input[type="number"] ,
input[type="number"]::-webkit-outer-spin-button, 
input[type="number"]::-webkit-inner-spin-button{
    -webkit-appearance: none !important;
    margin: 0 !important;
    -moz-appearance:textfield !important;
}
.item .child_cate table tr td.buy button{
    width: 20px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
    margin-left: 5px;
}
@media only screen and (max-width: 640px) {
    .item .head ul.link_btn li {
        width: 23.5%;
        margin-right: 2%;
        margin-bottom: 2.5%;
    }
    .item .head ul.link_btn li:nth-child(5n){
        margin-right: 2%;
    }
    .item .head ul.link_btn li:nth-child(4n){
        margin-right: 0;
    }
}
@media only screen and (max-width: 480px) {
    .item .head h2 {
        font-size: 18px;
    }
    .item .head .photo{
        width: 100%;
        margin-bottom: 10px;
    }
    .item .head .txt_area{
        width: 100%;
        padding-left: 0;
    }
    .item .head ul.link_btn li {
        width: 32%;
    }
    .item .head ul.link_btn li:nth-child(4n){
        margin-right: 2%;
    }
    .item .head ul.link_btn li:nth-child(3n){
        margin-right: 0;
    }
    .item .head ul.link_btn li a {
        padding: .5em .5em .5em 1em;
    }
    .item .child_cate {
        margin-top: 25px;
    }
}

/* *****************************************************************
その他ページ
***************************************************************** */
.other_all h2.title{
    font-size: 22px;
    line-height: 1.3;
    color: #027299;
    background-color: #e6f1f5;
    padding: 1em 1.5em;
    margin-bottom: .7em;
}
.other_all dl.important{
    margin-top: 2em;
}
.other_all dl.important dt{
    font-weight: bold;
    font-size: 1.15em;
}
.other_all dl.important dd{
    padding-left: 1em;
    padding-bottom: 1em;
    margin-bottom: 1em;
    border-bottom: 1px dashed #ddd;
}
.other_all ul.important li{
    padding-left: 2em;
    text-indent: -1em;
    list-style: square inside;
    margin-top: 1em;
}
.other_all .sitemap .aioseo-html-sitemap h4,
.other_all .sitemap .aioseo-html-sitemap br,
.other_all .sitemap ul li ul{
    display: none;
}
.other_all .sitemap ul li,
.other_all .sitemap .tit{
    margin-bottom: .5em;
    font-weight: bold;
}
.other_all .sitemap .aioseo-html-sitemap ul li{
    padding-left: 1em;
    font-weight: normal;
    display: flex;
    align-items: center;
}
.other_all .sitemap .aioseo-html-sitemap ul li::before{
    content: "";
    width: 1em;
    height: 1px;
    background-color: #000;
    margin-right: .5em;   
}
.other_all dl.legal dt{
    font-weight: bold;
    background-color: #F6F6F6;
    padding: .5em 1em;
    margin-bottom: .5em;
}
.other_all dl.legal dd{
    margin-bottom: 2em;
    padding-left: .5em;
}
.other_all dl.legal dd a{
    margin-left: 2em;
}
.other_all dl.legal dd a::before{
    content: "→";
    margin-right: 5px;
}
.other_all .guide_link{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 3em;
}
.other_all .guide_link a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24%;
    font-weight: bold;
    color: #027299;
    line-height: 1.3;
    text-align: center;
    border: 1px solid #027299;
    padding: 1.5em 1em;
}
.other_all .guide_link a:hover{
    background-color: #cce3eb;
}
.other_all .guide{
    margin-bottom: 40px;
}
.other_all .guide h3{
    font-size: 20px;
    line-height: 1;
    margin-bottom: 15px;
    padding: 0.5em 1em;
    background-color: #efefef;
}
.other_all .guide dl{
    padding-left: 15px;
}
.other_all .guide dl dt{
    font-size: 17px;
    font-weight: bold;
    color: #027299;
    border-bottom: 1px solid #027299;
    margin-bottom: 5px;
}
.other_all .guide dl dd{
    margin-bottom: 15px;
}
.other_all .guide dl dd a{
    color: #027299;
    text-decoration: underline;
}
.other_all .guide dl dd a:hover{
    text-decoration: none;
}
.other_all .guide dl dd .card_name{
    border: 1px solid #ccc;
    padding: .5em 1em;
    margin-top: 5px;
}
.other_all .guide dl dd .kome{
    font-size: .9em;
    margin-top: 5px;
}
.other_all .guide dl dd .kome span{
    display: block;
    text-indent: -1em;
    padding-left: 1em;
}
.other_all .guide dl dd .kome span::before{
    content: "※";
}
.other_all .guide dl dd table{
    border: 1px solid #ddd;
    margin-top: 10px;
}
.other_all .guide dl dd table tr th{
    text-align: left;
    background-color: #E1F2F9;
    padding: 5px 7px;
    border-bottom: 1px solid #fff;
}
.other_all .guide dl dd table tr th.last{
    border-bottom: 1px solid #ddd;
}
.other_all .guide dl dd table tr td{
    line-height: 1.5;
    padding: 5px 7px;
    border-bottom: 1px solid #ddd;
}
.other_all .guide dl dd.after p{
    padding-left: 1em;
    text-indent: -1em;
}
.other_all .guide dl dd.after p::before{
    content: "◎"
}
.other_all .guide dl dd.after p.ad::before{
    content: ""
}
.other_all .guide dl dd.after p.ad{
    display: inline-block;
    border: 1px solid #ddd;
    margin: .5em 1em;
    padding: 1em;
    text-indent: 0;
}
@media only screen and (max-width: 640px) {
    .other_all .guide_link a{
        width: 49%;
        margin-bottom: 2%;
    }
}
@media only screen and (max-width: 480px) {
    .other_all h2.title{
        font-size: 18px;
    }
    .other_all dl.legal dd a{
        display: block;
    }
}

/* *****************************************************************
問い合わせ
***************************************************************** */
.other_all .contact table{
    margin-top: 2em;
    width: 100%;
}
.other_all .contact table tr{
    border-bottom: 1px solid #ddd;
}
.other_all .contact table tr:first-child{
    border-top: 1px solid #ddd;
}
.other_all .contact table tr th{
    width: 10em;
    font-weight: normal;
    vertical-align: middle;
    text-align: left;
}
.other_all .contact table tr td{
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    padding-left: 1em;
}
.other_all .contact table tr td input[type="text"],
.other_all .contact table tr td input[type="email"],
.other_all .contact table tr td textarea {
    width: 100%;
	outline: none;
    padding: .7em;
	border: 1px solid #aaa;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.other_all .contact table tr td input[type="text"]:focus,
.other_all .contact table tr td input[type="email"]:focus,
.other_all .contact table tr td textarea:focus {
	box-shadow: 0 0 3px #1abc9c;
    border: 1px solid #027299;
}
.other_all .contact table tr td label{
    display: inline-block;
    margin-right: 1.5em;
}
.other_all .contact table tr td input[type="radio"]{
    margin-right: 3px;
}
.other_all .contact .send{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 30px;
}
.other_all .contact .send input[type="submit"]{
    width: 250px;
    height: 50px;
    border: none;
    border-radius: 0;
    outline: none;
    background: #000;
    font-size: 16px;
    font-weight: bold;
    line-height: 50px;
    color: #fff;
    cursor: pointer;
    margin: 0 10px;
}
.other_all .contact .send input[type="submit"].back{
    background-color: #aaa;
}
.mw_wp_form_complete .txttxt,.mw_wp_form_confirm .txttxt{display:none;}
.mw_wp_form_complete h3{
    font-size: 1.8em;
}
.mw_wp_form_complete h4{
    font-size: 1.2em;
    margin-bottom: 15px;
}
@media only screen and (max-width: 480px) {
    .other_all .contact table tr th,
    .other_all .contact table tr td{
        width: 100%;
        display: block;
    }
    .other_all .contact table tr th{
        padding-top: 10px;
    }
    .other_all .contact table tr td{
        padding: 0 0 15px;
    }
    .other_all .contact table tr td label{
        display: block;
        margin-top: 1em;
        padding-left: 1em;
    }
    .mw_wp_form_complete h3{
        font-size: 1.5em;
    }
    .other_all .contact .send input[type="submit"].back{
        margin-bottom: 15px;
    }
}

/* *****************************************************************
おすすめ
***************************************************************** */
.recommend_page h2{
    font-size: 20px;
    line-height: 1;
    letter-spacing: .1em;
    color: #027299;
    text-align: center;
    width: 100%;
    padding-bottom: 8px;
    border-bottom: 1px solid #027299;
    margin-bottom: 10px;
}
ul.recommend{
    display: flex;
    flex-wrap: wrap;
    font-size: 12px;
}
ul.recommend li{
    width: 20%;
    padding: 1%;
}
ul.recommend li .photo{
    padding: 20px;
    border: 1px solid #ccc;
    transition: all 0.3s ease;
}
ul.recommend li p.nametitle{
    line-height: 1.5;
    margin-top: 5px;
}
ul.recommend li a:hover .photo{
    border: 1px solid #027299;
}
@media only screen and (max-width: 1080px) {
    ul.recommend li{
        width: 25%;
    }
}
@media only screen and (max-width: 640px) {
    ul.recommend li{
        width: 33.333%;
    }
}
@media only screen and (max-width: 480px) {
    ul.recommend li{
        width: 50%;
    }
}


/* *****************************************************************
詳細ページ
***************************************************************** */
.single_item .flex_products_item{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.single_item .woocommerce-product-gallery{
    width: 35%;
}
.single_item .entry-summary{
    width: 65%;
    padding-left: 5%;
    margin: auto;
}
.single_item .entry-title{
    font-size: 20px;
    line-height: 1.4;
}
.single_item .price{
    color: #ff0000;
    font-size: 14px;
    margin-bottom: 1em;
    padding-bottom: .7em;
    border-bottom: 1px dashed #ccc;
}
.single_item .free_area{
    margin-bottom: 1em;
    padding-bottom: .7em;
    border-bottom: 1px dashed #ccc;
}
.single_item .cart{
    display: flex;
}
.single_item .quantity{
    display: block;
}
.single_item .quantity input[type="number"]{
    width: 38px;
    height: 36px;
    line-height: 36px;
    outline: none;
    border: 1px solid #999;
    border-radius: 5px;
    transition: all .3s;
    padding: 0 3px;
    margin: 0;
    text-align: center;
}
.single_item .single_add_to_cart_button{
    height: 36px;
    line-height: 36px;
    padding: 0 1em;
    background-color: #027299;
    color: #fff;
    border: 1px solid #027299;
    outline: none;
    box-sizing: border-box;
    margin-left: 10px;
    cursor: pointer;
    transition: all 0.3s ease;
}
.single_item .single_add_to_cart_button:hover{
    background-color: #fff;
    color: #027299;
}
.single_item .product_meta{
    display: none;
}
.single_item .inquiry_required{
    text-align: center;
    margin-bottom: 3em;
}
.single_item .inquiry_required p{
    border: 2px solid #f00;
    color: #f00;
    font-size: 1.2em;
    line-height: 1.4;
    font-weight: bold;
    padding: .7em 1em;
}
.single_item .inquiry_required a{
    display: inline-block;
    background-color: #ddd;
    font-weight: bold;
    padding: 1em 2em;
    margin-top: 1em;
    border-radius: 10px;
    position: relative;
}
.single_item .inquiry_required a::after{
    content: ">";
    font-size: 1.2em;
    position: absolute;
    right: 0;
    top: 43%;
    transform: translateY(-43%);
    padding-right: .5em;
}
.single_item .inquiry_required a:hover{
    background-color: #666;
    color: #fff;
}
.single_item .single_table{
    margin-top: 2em;
    border-top: 1px solid #eee;
}
.single_item .single_table table{
    width: 100%;
}
.single_item .single_table table th{
    text-align: left;
    background-color: #F2F2F2;
    padding: 10px 15px;
    width: 30%;
    font-size: .9em;
    font-weight: normal;
    border-bottom: 1px solid #fff;
}
.single_item .single_table table td{
    padding-left: 1em;
    border-bottom: 1px solid #eee;
}
.single_item .single_table table tr:last-child th{
    border-bottom: none;
}
@media only screen and (max-width: 640px) {
    .single_item .woocommerce-product-gallery{
        width: 100%;
    }
    .single_item .entry-summary{
        width: 100%;
        padding-left: 0;
    }
    .single_item .cart{
        justify-content: center;
    }
    .single_item .single_add_to_cart_button{
        width: calc(100% - 48px);
        margin-bottom: 30px;
    }
    .single_item .inquiry_required a{
        width: 100%;
    }
    .single_item .single_table{
        margin-top: 1.2em;
    }
}
