@charset "utf-8";
/******************************************************

        PCサイト用

******************************************************/
@media screen and (min-width: 768px), print {


/******************************************************/
/* elements  */
/******************************************************/
* {
    margin: 0;
    padding: 0;
}
html {
    font-size: 10px;
}
body {
    color: #323232;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.85;
    letter-spacing: 0.02em;
    text-align: center;
    font-family: 'Noto Serif JP', serif;
}
h1,h2,h3,h4,h5,h6,strong,b {
    font-weight: 500;
}
p {
    text-align: justify;
}
img {
    vertical-align: middle;
}
a img {
    filter: Alpha(opacity=100);
    opacity: 1;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
a:hover img {
    filter: Alpha(opacity=50);
    opacity: 0.5;
}
.en {
    font-family: 'Tangerine', cursive;
}
.tc {
    text-align: center !important;
}
.sp {
    display: none !important;
}


/******************************************************/
/* 共通  */
/******************************************************/
main {
    min-width: 1060px;
}
.inbox {
    width: 1060px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
.ttl2 {
    margin-top: 60px;
    text-align: center;
    position: relative;
    font-size: 27px;
    line-height: 1;
}
.ttl2 span.en {
    display: block;
    margin-top: 12px;
    font-size: 26px;
    line-height: 1;
    color: #000;
    opacity: 0.45;
}
.ttl2 strong {
    display: block;
    margin: 5px 0 50px;
    font-size: 42px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.02em;
    font-family: 'Noto Serif JP', serif;
}
.ttl2::before {
    content: "";
    background: url("../img/title_flower.png") no-repeat center center;
    height: 114px;
    mix-blend-mode: multiply;
    opacity: 0.12;
    position: absolute;
    top: 18px;
    left: 0;
    right: 0;
}
.ttl2 + p {
    text-align: center;
    margin-top: -30px;
}
.ttl_obi {
    background: url("../img/hina_obi.png") center center;
    color: #fff;
    font-size: 22.5px;
    line-height: 1;
    min-height: 63px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.ttl_obi span {
    background: linear-gradient(90deg, transparent 0%, #be0040 20%, #be0040 80%, transparent 100%);
    padding: 7px 30px;
    font-size: 21px;
    line-height: 1;
}
.ttl_obi strong {
    font-size: 30px;
    font-weight: 600;
    line-height: 1;
    padding-bottom: 1px;
    text-shadow: 0 0 10px rgba(190, 0, 64, 0.5);
}
.ttl_obi span + strong {
    margin-left: 16px;
}



/******************************************************/
/* ヘッダー  */
/******************************************************/
header {
    background: url("../img/bg2.png");
    position: relative;
    min-width: 1060px;
    overflow: hidden;
}
header #logo {
    position: absolute;
    top: 24px;
    left: 40px;
    z-index: 1;
}
header #kyokai {
    position: absolute;
    top: 20px;
    right: 40px;
    z-index: 1;
}
header .sokubai {
    position: absolute;
    top: 94px;
    right: 40px;
    z-index: 1;
}
/* メインイメージ */
header #mainimg {
    height: 886px;
    position: relative;
    margin-bottom: 50px;
}
header #mainimg h1 {
    position: absolute;
    top: 0;
    left: calc(50% - 1000px);
    pointer-events: none;
}
header .adviser {
    background: rgba(230, 220, 198, 0.6);
    height: 80px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
header .adviser .img {
    flex-shrink: 0;
    margin-right: 20px;
}
header .adviser strong {
    color: #8b6700;
}
/* 画像版メインイメージ */
header #pict_mainimg {
    margin-bottom: 70px;
}
/* バナーエリア */
header .bnr_area {
    text-align: center;
    margin-bottom: 70px;
}
header .bnr_area p {
    text-align: center;
    margin-bottom: 20px;
}
header .bnr_area img {
    max-width: 100%;
    height: auto;
}
header .bnr_area p.douji {
    margin: -30px 0 15px;
}
/* ページ内リンク */
header .pagelink ul {
    width: 1010px;
    margin: 0 auto 85px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
header .pagelink ul li {
    margin-bottom: 10px;
}


/******************************************************/
/* 共通パーツ  */
/******************************************************/
.introttl {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.65;
    text-align: center;
    margin-bottom: 36px;
}
/* 価格 */
#main .price {
    color: #e60012;
    font-size: 27px;
    line-height: 1;
    text-align: left;
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: end;
}
#main ul.price {
    margin-top: 5px;
}
#main ul.price li {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: end;
}
#main ul.price li:nth-of-type(n+2) {
    margin-left: 1em;
}
#main .price.white {
    color: #fff;
    text-shadow: 0 0 12px rgba(178,106,55,0.6),
                 0 0 20px rgba(178,106,55,0.7);
    font-size: 32px;
}
#main .price.ta-l {
    text-align: left;
}
#main .price strong {
    font-weight: 700;
    line-height: 1;
}
#main .price .item {
    font-size: 60%;
    letter-spacing: normal;
}
#main .price.white .item {
    font-size: 45%;
    line-height: 1.1;
}
#main .price .item + strong {
    margin-left: 0.2em;
}
#main .price .item.white + strong {
    margin-left: 0.3em;
}
#main .price .yen {
    font-size: 70%;
}
#main .price .zei {
    font-size: 45%;
    margin-left: 0.2em;
}
/* 飾る時期 */
dl.season {
    margin-bottom: 120px;
}
dl.season > dt span {
    font-size: 24px;
    line-height: 1;
    position: relative;
    display: inline-block;
    padding-bottom: 16px;
    margin-bottom: 20px;
}
dl.season > dt span::after {
    content: "";
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.2;
}
dl.season > dd h3 {
    font-size: 36px;
    line-height: 1.1;
    margin-bottom: 27px;
    text-align: center;
}
dl.season > dd h3 .date_note {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
}
dl.season > dd h3 .date_note span {
    font-size: 13px;
    line-height: 1.1;
    text-align: center;
    display: block;
    position: absolute;
    left: 0;
    margin-top: 6px;
    white-space: nowrap;
}
dl.season > dd p {
    text-align: center;
}
dl.season > dd:nth-of-type(2) {
    display: flex;
    justify-content: center;
    margin-top: 36px;
}
dl.season > dd dl {
    display: flex;
    align-items: center;
}
dl.season > dd dl:nth-of-type(2) {
    margin-left: 40px;
}
dl.season > dd dt {
    padding: 9px 30px;
    color: #fff;
    font-size: 14.4px;
    line-height: 1;
    margin-right: 20px;
    opacity: .9;
}
dl.season > dd dt strong {
    font-size: 18px;
}
dl.season > dd dd {
    font-size: 21.6px;
    line-height: 1;
}
dl.season > dd dd strong {
    font-size: 27px;
    line-height: 1;
}
/* おすすめ商品 */
.recommend .list {
    background: #fff;
    padding: 30px 30px 0;
    margin: 30px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.recommend .list .list_ttl {
    padding-top: 10px;
    width: 100%;
    margin-bottom: 36px;
}
.recommend .list .list_ttl h4 {
    font-size: 36px;
    line-height: 1.1;
    margin-bottom: 16px;
    text-align: center;
}
.recommend .list .list_ttl p {
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}
.recommend .list dl {
    width: 480px;
    margin: 0 0 40px;
}
.recommend .list dl:nth-of-type(2n) {
    margin-left: 40px
}
.recommend .list dl dt {
    position: relative;
    margin-bottom: 16px;
}
.recommend .list dl dt .itemname {
    background: rgba(255, 255, 255, 0.75);
    padding: 20px 24px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.45;
    letter-spacing: 0.15em;
    writing-mode: vertical-rl;
    text-align: left;
    position: absolute;
    top: 40px;
    left: 45px;
}
.recommend .list dl dt .itemname.right {
    left: initial;
    right: 45px;
}
.recommend .list dl dd h4 {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.32;
    margin: 16px 0 12px;
}
.recommend .list dl dd p {
    font-size: 15px;
    line-height: 1.65;
    color: #585858;
}
/* おすすめ商品（詳細） */
.recommend_detail {
    background: #fff;
    width: 1000px;
    padding: 10px 30px 50px;
    margin: auto;
}
.recommend_detail dl {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: start;
    margin-top: 30px;
}
.recommend_detail dt {
    flex-shrink: 0;
    position: relative;
}
.recommend_detail dt .itemname {
    background: rgba(255, 255, 255, 0.75);
    padding: 20px 18px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.15em;
    writing-mode: vertical-rl;
    text-align: left;
    position: absolute;
    top: 20px;
    left: 30px;
}
.recommend_detail dt .itemname.right {
    left: initial;
    right: 30px;
}
.recommend_detail dt .price {
    position: absolute;
    bottom: 20px;
    right: 20px;
}
.recommend_detail dd {
    text-align: left;
    position: relative;
    z-index: 1;
    flex-grow: 1;
    padding: 0 40px 0 30px;
}
.recommend_detail dd h4 {
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
}
.recommend_detail dd h5 {
    font-size: 21px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
}
.recommend_detail dd .capt {
    font-size: 18px;
    line-height: 1.45;
    margin: 30px 0 15px;
}
/* 全国有名作家 */
.craftsman {
    background: #fff;
    padding-top: 1px;
    margin-top: 70px;
    position: relative;
    z-index: 1;
}
.craftsman .list {
    width: 1000px;
    padding: 15px 30px 70px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
}
.craftsman .list::before {
    content: "";
    background: url("../img/flower_bg_r.png") no-repeat;
    width: 125px;
    height: 194px;
    position: absolute;
    bottom: 50px;
    right: 10%;
    opacity: 0.12;
}
.craftsman .list dl {
    width: 480px;
    margin-bottom: 50px;
    display: flex;
    justify-content: space-between;
}
.craftsman .list dl:nth-of-type(2n) {
    margin-left: 40px;
}
.craftsman .list dt {
    width: 140px;
    flex-shrink: 0;
    margin-right: 10px;
}
.craftsman .list dd {
    text-align: left;
    line-height: 1.56;
}
.craftsman .list dd h4 {
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    padding: 5px 10px;
    margin-bottom: 10px;
}
#hina .craftsman .list dd h4 {
    background: #d94b2c;
}
#gogatsu .craftsman .list dd h4 {
    background: #2889c1;
}
.craftsman .list dd h5 {
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: 0.05em;
    margin-bottom: 15px;
}
.craftsman .list dd h5 rt {
    font-size: 11px;
}


/******************************************************/
/* 正月飾り  */
/******************************************************/
/* 色指定 */
#shogatsu dl.season > dt span::after,
#shogatsu dl.season > dd dt {
    background: #f5a150;
}
/* 看板 */
#shogatsu {
    background: url("../img/bg1.png");
    position: relative;
    padding-bottom: 140px;
}
#shogatsu::before {
    content: "";
    background: linear-gradient(90deg, rgba(238,230,135,0.12), rgba(238,230,135,0.06), rgba(238,230,135,0.12));
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
#shogatsu .ttl {
    background: url("../img/shogatsu_title_bg.jpg") no-repeat center center;
    background-size: cover;
    height: 600px;
    position: relative;
    margin-bottom: 70px;
}
#shogatsu .ttl h2 {
    position: absolute;
    top: 100px;
    left: calc(50% + 290px);
}
#shogatsu .ttl::after {
    content: "";
    background: linear-gradient(#f5a150, transparent);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 0;
    height: 200px;
    opacity: 0.2;
}


/******************************************************/
/* ひな人形  */
/******************************************************/
/* 色指定 */
#hina dl.season > dt span::after,
#hina dl.season > dd dt {
    background: #f76c8f;
}
#hina .recommend .list dl dd h4 {
    color: #f76c8f;
}
#hina .ttl_obi {
    background-image: url("../img/hina_obi.png");
}
#hina .ttl_obi span {
    background: linear-gradient(90deg, transparent 0%, #be0040 20%, #be0040 80%, transparent 100%);
}
#hina .ttl_obi strong {
    text-shadow: 0 0 10px rgba(190, 0, 64, 0.5);
}
/* 看板 */
#hina {
    background: url("../img/bg1.png");
    position: relative;
}
#hina::before {
    content: "";
    background: linear-gradient(90deg, rgba(245,161,80,0.12), rgba(245,161,80,0.06), rgba(245,161,80,0.12));
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
#hina .ttl {
    background: url("../img/hina_title_bg.jpg") no-repeat center center;
    background-size: cover;
    height: 600px;
    position: relative;
    margin-bottom: 70px;
}
#hina .ttl h2 {
    position: absolute;
    top: 100px;
    left: calc(50% + 270px);
}
#hina .ttl::after {
    content: "";
    background: linear-gradient(#f76c8f, transparent);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 0;
    height: 200px;
    opacity: 0.2;
}
/* ことのわ */
#hina .hina_kotonowa {
    flex-direction: row;
    position: relative;
}
#hina .hina_kotonowa dt .price {
    left: 20px;
    right: initial;
}
#hina .hina_kotonowa dd {
    width: 470px;
    height: 411px;
    position: absolute;
    top: 0;
    right: 0;
    text-align: left;
    z-index: 1;
}
#hina .hina_kotonowa dd h4 {
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
    text-align: center;
}
#hina .hina_kotonowa dd strong {
    font-size: 40px;
    line-height: 1.2;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
}
#hina .hina_kotonowa dd h5.capt {
    color: #e95377;
    font-size: 27px;
    line-height: 1.2;
    letter-spacing: normal;
    border-bottom: 1px solid #e95377;
    margin: 30px 0 40px;
    padding-bottom: 5px;
    white-space: nowrap;
}
#hina .hina_kotonowa dd .tenohirasize {
    position: relative;
    font-size: 15px;
}
#hina .hina_kotonowa dd .img01 {
    position: absolute;
    top: 50%;
    right: -10px;
    z-index: -1;
    transform: translateY(-50%);
}
/* ことのわ 衣裳着人形 */
#hina .hina_kotonowa2 {
    flex-direction: row;
    position: relative;
}
#hina .hina_kotonowa2 dd h4 {
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 50px 0 20px;
    white-space: nowrap;
    text-align: center;
}
#hina .hina_kotonowa2 dd strong {
    font-size: 40px;
    line-height: 1.2;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
}
#hina .hosoku {
    margin-top: 50px;
    display: flex;
    align-items: center;
    flex-direction: row;
}
#hina .hosoku dt {
    order: 1;
    flex-shrink: 0;
}
#hina .hosoku dd {
    padding-left: 0;
}
#hina .hosoku h6 {
    color: #e26535;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 16px;
}
#hina .hosoku p {
    letter-spacing: normal;
}
#hina .hosoku p + p {
    margin-top: 1em;
}
#hina .hosoku.ptn2 {
    justify-content: space-between;
    align-items: start;
}
#hina .hosoku.ptn2 li {
    text-align: left;
}
#hina .hosoku.ptn2 li p {
    text-align: center;
}
/* こだわり */
#hina .hina_kodawari {
    display: flex;
    position: relative;
    align-items: end;
    gap: 40px;
    margin: 60px 60px 0;
}
#hina .hina_kodawari dt .price {
    left: 20px;
    right: initial;
}
#hina .hina_kodawari .kodawari_intro {
    flex-shrink: 0;
    flex-grow: 1;
    width: 490px;
}
#hina .hina_kodawari .kodawari_intro h4 {
    font-size: 30px;
    line-height: 1.65;
    letter-spacing: normal;
    margin: 0 0 20px;
    white-space: nowrap;
    text-align: center;
}
#hina .hina_kodawari .kodawari_intro p {
    color: #585858;
    text-align: center;
    font-size: 15px;
    letter-spacing: normal;
}
#hina .hina_kodawari .kodawari_detail {
    display: flex;
    justify-content: space-between;
}
#hina .hina_kodawari .kodawari_detail li {
    color: #585858;
    font-size: 13px;
    line-height: 1.38;
    letter-spacing: normal;
    text-align: left;
}
#hina .hina_kodawari .kodawari_detail li:nth-of-type(1) {
    width: 350px;
}
#hina .hina_kodawari .kodawari_detail li img {
    margin-bottom: 12px;
    width: 100%;
    height: auto;
}
#hina .recommend_detail_items {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    margin: 40px 0;
}
#hina .recommend_detail_items li {
    width: 480px;
    font-size: 15px;
    line-height: 1.65;
    color: #585858;
}
#hina .recommend_detail_items li .img {
    position: relative;
    margin-bottom: 10px;
}
#hina .recommend_detail_items li .price {
    position: absolute;
    inset: auto auto 20px 20px;
}
#hina .recommend_detail_items li p {
}
/* 正絹 */
#hina .kodawari_detail_col1 {
    flex-direction: row;
    margin-top: 80px;
    padding-bottom: 50px;
    min-height: 353px;
    position: relative;
}
#hina .kodawari_detail_col1 dd {
    flex-grow: 1;
    padding-left: 410px;
    align-self: center;
    position: static;
}
#hina .kodawari_detail_col1 dd h4 {
    font-size: 22px;
    line-height: 1.75;
    margin: 0 0 40px;
}
#hina .kodawari_detail_col1 dd img {
    position: absolute;
    top: 0;
    left: 42px;
}
/* 正絹・染め・織など */
#hina .kodawari_detail_col2 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}
#hina .kodawari_detail_col2 > dl {
    width: 50%;
    margin: 0;
    padding: 30px 0;
    box-sizing: border-box;
    position: relative;
    border-top: 4px double #e95377;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 30px;
}
#hina .kodawari_detail_col2 > dl:nth-of-type(2n)::before {
    content: "";
    border-left: 4px double #e95377;
    position: absolute;
    top: 30px;
    bottom: 30px;
    left: 0;
}
#hina .kodawari_detail_col2 > dl:nth-of-type(2n+1) {
    padding-right: 30px;
}
#hina .kodawari_detail_col2 > dl:nth-of-type(2n) {
    padding-left: 30px;
}
#hina .kodawari_detail_col2 > dl dt {
    position: relative;
    z-index: 2;
}
#hina .kodawari_detail_col2 > dl dd {
    width: auto;
    flex-grow: 1;
    position: relative;
    padding: 20px 0 370px 0;
}
#hina .kodawari_detail_col2 > dl dd img {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}


/******************************************************/
/* 五月人形  */
/******************************************************/
/* 色指定 */
#gogatsu dl.season > dt span::after,
#gogatsu dl.season > dd dt {
    background: #154f97;
}
#gogatsu .recommend .list dl dd h4 {
    color: #154f97;
}
#gogatsu .ttl_obi {
    background-image: url("../img/gogatsu_obi.png");
}
#gogatsu .ttl_obi span {
    background: linear-gradient(90deg, transparent 0%, #003687 20%, #003687 80%, transparent 100%);
}
#gogatsu .ttl_obi strong {
    text-shadow: 0 0 10px rgba(0, 54, 135, 0.5);
}
/* 看板 */
#gogatsu {
    background: url("../img/bg2.png");
    position: relative;
}
#gogatsu .ttl {
    background: url("../img/gogatsu_title_bg.jpg") no-repeat center center;
    background-size: cover;
    height: 600px;
    position: relative;
    margin-bottom: 70px;
}
#gogatsu .ttl h2 {
    position: absolute;
    top: 100px;
    right: calc(50% + 270px);
}
#gogatsu .ttl::after {
    content: "";
    background: linear-gradient(#5ca5ff, transparent);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 0;
    height: 200px;
    opacity: 0.08;
}
/* アルマドラ・永遠之兜 */
#gogatsu .gogatsu_armadura {
    position: relative;
}
#gogatsu .gogatsu_armadura dd {
    text-align: center;
}
#gogatsu .gogatsu_armadura dd h4 {
    font-size: 30px;
    line-height: 1.65;
    letter-spacing: normal;
    margin: 40px 0 20px;
    white-space: nowrap;
    text-align: center;
}
#gogatsu .gogatsu_armadura dd p {
    font-size: 15px;
    text-align: left;
}
#gogatsu .gogatsu_armadura dd p + p {
    margin-top: 1em;
}
/* ことのわ */
#gogatsu .gogatsu_kotonowa {
    position: relative;
}
#gogatsu .gogatsu_kotonowa dd {
    text-align: center;
}
#gogatsu .gogatsu_kotonowa dd h4 {
    font-size: 26px;
    line-height: 1.5;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
    text-align: center;
}
#gogatsu .gogatsu_kotonowa dd strong {
    font-size: 40px;
    line-height: 1.2;
    letter-spacing: normal;
    margin: 20px 0;
    white-space: nowrap;
}
#gogatsu .gogatsu_kotonowa dd p {
    font-size: 15px;
    text-align: center;
}
#gogatsu .gogatsu_kotonowa dd p + p {
    margin-top: 1em;
}
/* 宇喜多 */
#gogatsu .gogatsu_ukita dd h5 {
    font-size: 21px;
    line-height: 1.35;
    letter-spacing: normal;
    margin: 50px 0 16px;
    text-align: center;
}
#gogatsu .gogatsu_ukita dd p {
    font-size: 15px;
}
#gogatsu .gogatsu_ukita dd p + p {
    margin-top: 1em;
}
/* 鑽（たがね） */
#gogatsu .gogatsu_tagane dd p {
    font-size: 15px;
}
#gogatsu .gogatsu_tagane dd p.img {
    margin-top: 46px;
}


/******************************************************/
/* ハートフルセット  */
/******************************************************/
#heartful {
    background: url("../img/bg1.png");
    position: relative;
    border-top: 6px solid #e20110;
    padding-bottom: 140px;
}
#heartful::before {
    content: "";
    background: linear-gradient(#e20110 20%, #efde52 60%, #01a0e2 100%);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
    opacity: 0.06;
}
#heartful::after {
    content: "";
    background: linear-gradient(#e20110, transparent);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 0;
    height: 200px;
    opacity: 0.2;
}
#heartful .inbox {
    position: static;
}
#heartful .inbox::before {
    content: "";
    background: url("../img/heartful_bg.png") no-repeat;
    width: 753px;
    height: 593px;
    position: absolute;
    bottom: 8%;
    right: 0;
    z-index: 0;
    opacity: 0.1;
}
#heartful .recommend {
    position: relative;
    z-index: 1;
}
#heartful .ttl2 {
    color: #c70915;
}
#heartful .recommend .list {
    padding-left: 10px;
    padding-right: 10px;
}
#heartful .recommend .list dl {
    margin: 0 20px 40px;
}
#heartful .recommend .list dl.row2 {
    width: 220px;
}
#heartful .recommend .list dl.row2 dd span {
    display: inline-block;
}
#heartful .recommend .list dl dd,
#heartful .recommend .list dl dd p:not(.price) {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
    text-align: left;
}
#heartful .recommend .list dl dd span {
    font-size: 13px;
    font-weight: 400;
}
#heartful .recommend .list dl dd dl.set {
    display: flex;
    margin: 0;
}
#heartful .recommend .list dl dd dl.set dt {
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    background: #585858;
    color: #fff;
    padding: 6px;
    writing-mode: vertical-rl;
    margin: 0 12px 0 0;
}
#heartful .recommend .list dl dd dl.set dd {
    align-self: center;
}
#heartful .recommend .list dl dd dl.set dd li:nth-of-type(n+2) {
    margin-top: 4px;
}
#heartful .tokusanhin_bnr {
    margin-top: 30px;
    text-align: center;
}


/******************************************************/
/* 特典プレゼント  */
/******************************************************/
#tokuten {
    background: url("../img/bg1.png");
    position: relative;
    padding: 40px 0 38px;
}
#tokuten::before {
    content: "";
    background: linear-gradient(135deg, #e6c223 23%, #fdfdae 61%, #e6c223 80%);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
    opacity: 0.75;
}
#tokuten h3 {
    color: #e60012;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 20px;
    text-shadow: 0 0 3px #fffbca,
                 0 0 3px #fffbca,
                 0 0 3px #fffbca,
                 0 0 3px #fffbca,
                 0 0 15px #fff,
                 0 0 30px #fff;
}
#tokuten h3 strong {
    display: block;
    font-size: 56px;
    font-weight: 700;
    line-height: 1;
    margin-top: 3px;
}


/******************************************************/
/* 催事カレンダー  */
/******************************************************/
#calendar {
    padding: 5px 0 100px;
}


/******************************************************/
/* 店舗情報  */
/******************************************************/
#shop {
    background: url("../img/bg1.png");
    position: relative;
    padding: 10px 0 100px;
}
#shop .shop_ttl {
    margin-top: 50px;
    text-align: center;
}
#shop .list {
    display: flex;
    flex-wrap: wrap;
    width: 984px;
    margin: 20px auto 0;
}
#shop .list dl {
    background: #fff;
    width: 490px;
    box-sizing: border-box;
    padding: 40px 36px 32px;
    margin-bottom: 4px;
    text-align: left;
}
#shop .list dl:nth-of-type(2n) {
    margin-left: 4px;
}
#shop .list dl dt {
    margin-bottom: 15px;
}
#shop .list dl dd {
    font-size: 15px;
    line-height: 1.6;
}
#shop .list dl .shopname {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
}
#shop .list dl .shopname span {
    font-family: sans-serif;
    margin-left: 8px;
}
#shop .list dl .gmap {
    background: url("../img/map_btn.png");
    width: 64px;
    height: 26px;
    text-indent: -9999px;
    display: block;
    margin-left: 18px;
    transition: all 0.5s ease;
}
#shop .list dl .gmap:hover {
    opacity: 0.7;
}


/******************************************************/
/* フッター  */
/******************************************************/
footer {
    background: #2c0b04;
    color: #fff;
    padding: 10px 0 12px;
    min-width: 1032px;
}
footer .bnrs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px 0;
}
footer .bnrs li {
    padding: 20px;
    list-style: none;
}
footer .copyright small {
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
}



}