﻿* {
    margin: 0;
    padding: 0;
}
/*
#header #mobile-head {
    display: none;
}

#header{
    display: none;
}

.inner-header {
    display: none;
}
*/
body {
    /*font-size: 100%;*/
}

hr {
    background-color: #fff;
    border-top: 2px dotted #8c8b8b;
}

.title {
    text-align: center;
    font-size: 1.5em;
    padding: 20px 0px;
    top: -94px;
}

.url-link{
    color: #da342f;
}

.mokuji-box {
    column-width: 15em;
    padding: 5%;

}

.gazou {
    border: 1px solid;
    margin: 2% 0 2% 0;
    color: #8c8b8b;
}

.gazou-2 {
    margin: 2% 1% 2% 1%;
    background-color: #e7e7e7;
}

.gift-wrap-pc {
    margin: 1.5% 0%;
}

.paper-bag-link {
    padding-top: 10px;
}

.yamato-souryou {
    padding: 10px 0 10px 10px;
    margin: -1px 426px 20px 0;
}

.mokuji-link {
    /*アンダーライン*/
    outline: none;
    text-decoration: none;
    padding: 2px 1px 0;
    line-height: 1.4;
}

.mokuji-link:before {
    content: "\02714";
    /*アイコンのユニコード*/
    font-size: 1em;
    /*サイズ*/
    right: 0;
    /*アイコンの位置*/
    top: 0;
    /*アイコンの位置*/
    color: #da342f;
    /*アイコン色*/
    font-weight: 900;
}

.mokuji-link-sp {
    /*アンダーライン*/
    outline: none;
    text-decoration: none;
    padding: 2px 1px 0;
    line-height: 1.4;
}

.mokuji-link-sp:before {
    content: "\02714";
    /*アイコンのユニコード*/
    font-size: 1em;
    /*サイズ*/
    right: 0;
    /*アイコンの位置*/
    top: 0;
    /*アイコンの位置*/
    color: #da342f;
    /*アイコン色*/
    font-weight: 900;
}


.mokuji-link-sp .sp {
    display: block;
    margin-top: -100px;
    padding-top: 100px;
}

/*,
.guide-2-sp,
.guide-3-sp,
.guide-4-sp,
.guide-5-sp,
.guide-6-sp,
.guide-7-sp*/
a:link {
    /*テキストリンクの文字色を変更*/
    color: #414040;
}

.title-sub {
    background: #8d8d8d;
    /*背景色*/
    padding: 0.5em;
    /*文字周りの余白*/
    color: white;
    /*文字を白に*/
    width: 367px;
    margin: 3% 0 -1% 0;
}

.sub-title {
    position: relative;
    /*相対位置*/
    padding-left: 1.5em;
    /*アイコン分のスペース*/
    line-height: 1.4;
    /*行高*/
    color: black;
    /*文字色*/
    border-bottom: solid 3px #8d8d8d;
    /*線の種類（実線） 太さ 色*/
    width: fit-content;
}

.pink{
    background-color: #ffe4e9;
    width: 367px;
}

.indent {
    text-indent: -1rem;
    padding-left: 1rem;
}


.sub-title:before {
    font-family: "Font Awesome 5 Free";
    /*忘れずに*/
    content: "\25A0";
    /*アイコンのユニコード*/
    font-weight: 900;
    position: absolute;
    /*絶対位置*/
    font-size: 1.4em;
    /*サイズ*/
    left: 0;
    /*アイコンの位置*/
    top: -0.2em;
    /*アイコンの位置*/

}

.sub-title:before {
    color: #8d8d8d;
}





h3 span:after {
    /*position: absolute;*/
    top: calc(50% - 7px);
    right: -11px;
    width: 0;
    height: 0;
    content: '';
    border-width: 7px 0 7px 12px;
    border-style: solid;
    border-color: transparent transparent transparent #dcd0c0;
}

.flex-guide {
    display: flex;
    flex-direction: row;
    padding: 0% 0% 1% 0%;
}

.method {
    width: 50%;
    /*padding: 0 5% 0 0;*/
}

.pc {
    display: block !important;
}

.sp {
    display: none !important;
}

.mokuji-box-sp {
    margin: 0% 0% 0% 5%;
}

#mobile-head {
    display: none;
}


.listCard {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 20px;
    /* .listCard に flex を指定し、子要素を横並びにする。wrapで折り返しできるようにする。gapで子要素間にマージンを設ける。*/
}

.listCard .listCard__item {
    width: calc(100% / 3 - 20px);
    background: #fff;
    list-style: none
        /* width: calc(最大横幅 / 一行に残したい個数 - gapで横に指定した数値);*/
}

.listCard .listCard__item a {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1% 10px 1% 10px;
    /* .listCard__item に flex を指定し子要素を横並びにしますが、column を指定して子要素に横幅を持たせ改行されないようにします。*/
}

.listCard .btn {
    display: block;
    text-align: center;
    margin: auto auto 0;
    padding: 6px 28px;
    color: #fff;
    background: #444;
    box-shadow: 0 3px 5px rgb(0 0 0 / 50%);
    border-radius: 50px;
    /* margin-topに auto を指定することで下揃えになります。*/
}

.Card-title {
    font-size: 1.2em;
    background-color: #ededed;
}

.listCard__item {
    background-color: #fff;
    border: ridge;
}

body {
    font-family: "Open Sans", sans-serif;
    line-height: 1.25;
}

body {
    font-family: "Open Sans", sans-serif;
    line-height: 1.25;
}

table {
    border-collapse: collapse;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    table-layout: fixed;
    color: #58575e;
}

table tr {
    background-color: #fff;
    padding: .35em;
    border-bottom: 1px dotted #58575e;
}

table tr:last-child {
    border-bottom: 2px solid #58575e;
}

table th,
table td {
    padding: 1em 10px 1em 1em;
    text-align: center;
}

tbody th {
    color: #58575e;
}

.table_title{
    text-align: center;
}

.txt {
    text-align: left;
    font-size: .85em;
}

.price {
    text-align: right;
}

.td_gray {
    background-color: #efefef;
}

/*アンカーリンク用css*/

a.order {
    height: 1px;
    display: block;
    padding-top: 99px;
    margin-top: -99px;
}

a.Member {
    height: 1px;
    display: block;
    padding-top: 57px;
    margin-top: -57px;
}

a.payment {
    height: 1px;
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}

a.Delivery {
    height: 1px;
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}

a.gift {
    height: 1px;
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}

@media screen and (max-width: 600px) {
    table {
        border: 0;
        width: 100%
    }

    hr{
        display: none;
    }

    .listCard-wrap {
        display: flex;
        font-size: smaller;
        justify-content: space-between;
        position: relative;
        top: 3.5em;
    }


    table th {
        display: block;
        border-right: none;
        border-bottom: 2px solid #0f7d13;
        padding-bottom: .6em;
        margin-bottom: .6em;

    }

    table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    table tr {
        display: block;
        margin-bottom: 2em;
        border-bottom: 2px solid #0f7d13;
    }

    table td {
        border-bottom: 1px solid #bbb;
        display: block;
        font-size: .8em;
        text-align: right;
        position: relative;
        padding: .625em .625em .625em 4em;
        border-right: none;
    }

    table td::before {
        content: attr(data-label);
        font-weight: bold;
        position: absolute;
        left: 10px;
    }

    table td:last-child {
        border-bottom: 0;
    }
}

@media screen and (max-width: 600px) {
    table {
        border: 0;
        width: 100%
    }

    table th {
        display: block;
        border-right: none;
        border-bottom: 5px solid #ff9901;
        padding-bottom: .6em;
        margin-bottom: .6em;

    }

    table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    table tr {
        display: block;
        margin-bottom: 2em;
    }

    table td {
        border-bottom: 1px solid #bbb;
        display: block;
        font-size: .8em;
        text-align: right;
        position: relative;
        padding: .625em .625em .625em 4em;
        border-right: none;
    }

    table td::before {
        content: attr(data-label);
        font-weight: bold;
        position: absolute;
        left: 10px;
    }

    table td:last-child {
        border-bottom: 0;
    }
}


/*
.midashi-1 {
    background: lavenderblush;
}

td {

    border: solid 0.1px;
}

table th {
    padding: 2%;
    width: 1%;
    border: solid 0.1px;
}

table td {
    padding: 2%;
    border: solid 0.1px;
}*/

@media (max-width: 768px) {

    .pc {
        display: none !important;
    }

    .sp {
        /*font-size: 1.5em;*/
        /*width: 100%;*/
        display: block !important;
        margin: auto;
    }

    .mokuji-box {
        display: none;
    }

}

@media only screen and (max-width: 679px) {

    /*PC*/
    #header #mobile-head {
        display: inline;
        display: none;
    }

    #header #mobile-menu {
        display: inline;
        display: none;
    }

    .title {
        /*position: absolute;*/
        left: 10px;
        /*top: 5%;*/
        padding: 7%;

    }

    .listCard-sp {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: column;
        /*display: table-footer-group;*/
    }

    .listCard-sp .listCard__item-sp {
        width: 100%;
        background: #fff;
        list-style: none
    }

    .listCard-sp .listCard__item-sp a {
        display: flex;
        flex-direction: column;
        height: 100%;
        /*padding: 10px 20px 20px;*/
    }

    .listCard-sp .btn {
        display: block;
        text-align: center;
        margin: auto auto 0;
        padding: 6px 28px;
        color: #fff;
        background: #444;
        box-shadow: 0 3px 5px rgb(0 0 0 / 50%);
        border-radius: 50px;
    }

    .Card-title-sp {
        font-size: 1.2em;
        /*background-color: #dcd0c0;*/
    }

    .listCard__item-sp {
        background-color: #fff;
        /*border: ridge;*/
    }

    .wrap {
        position: relative;
        padding-top: 0px;

    }
}