@charset "utf-8";



/*タイトル*/
.tit1 {
    border-bottom: none;
    color: #2A2A2A;
    font-size: 40px;
    line-height: 1.5;
    padding-bottom: 0;
    margin: 0 0 50px;
}
.tit1 span.tit1_sub {
    display: block;
    color: #808080;
    font-size: 16px;
}
.tatetit {
    display: inline-block;
    border-bottom: none;
    font-size: 40px;
    line-height: 1.5;
    padding-bottom: 0;
    text-align: start;
    margin: 0 0 50px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.tatetit span.tatetit_sub {
    font-size: 16px;
    display: block;
    padding-top: 3px;
}
.tit22 {
    font-size: 22px;
}
.pagetit {
    font-size: 40px;
    font-weight: bold;
    margin-top: 110px;
    margin-bottom: 70px;
}
/*テキスト*/
.kome {
    color: #808080;
    font-size: 14px;
}
.fancybox-caption {
    font-size: 16px;
    text-align: center;
}
@media screen and (max-width: 768px) {
    .tit1 {
        font-size: 26px;
    }
    .tit1 span.tit1_sub {
        font-size: 14px;
    }
    .tatetit {
        font-size: 26px;
    }
    .tatetit span.tatetit_sub {
        font-size: 14px;
    }
    .tit22 {
        font-size: 20px;
    }
    .pagetit {
        font-size: 30px;
        margin-top: 30px;
        margin-bottom: 20px;
    }
    .kome {
        font-size: 11px;
    }
    .fancybox-caption {
        font-size: 14px;
    }
}
@media screen and (max-width: 550px) {
    .h1_small {
        font-size: 24px;
    }
    .fancybox-caption {
        text-align: left;
    }
}

/*カラー*/
.bgc_f9f8f9 {
    background-color: #F9F8F9;
}
/*border*/
.bt_c2 {
    border-top: 1px solid #C2C2C2;
}
.bb_c2 {
    border-bottom: 1px solid #C2C2C2;
}

/*flex*/
.flex_w {
    display: flex;
}
.fl_rev {
    flex-direction: row-reverse;
}

/*ボタン*/
.btn1_w a.btn1,.btn2_w a.btn2,.btn3_w a.btn3 {
    font-size: 16px;
}
.btn1_w {
    margin-top: 40px;
}
.btn1_w a.btn1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 300px;
    height: 60px;
    padding: 5px 1.5em;
    margin: auto;
    color: #fff;
    background-color: #2A2A2A;
    border: 1px solid #2A2A2A;
    border-radius: 5px;
    position: relative;
    text-decoration: none;
    transition: 0.7s;
    line-height: 1.1875;
}
.btn1_w a.btn1:after {
    position: absolute;
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    margin-top: -3px;
    top: 50%;
    right: 15px;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: top left;
    transition: all .7s;
}
.btn1_w a.btn1:hover {
    color: #2A2A2A;
    background-color: #fff;
    opacity: inherit;
}
.btn1_w a.btn1:hover:after {
    border-top: solid 1px #2A2A2A;
    border-right: solid 1px #2A2A2A;
}
.btn2_w {
    margin-top: 40px;
}
.btn2_w a.btn2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 300px;
    height: 60px;
    padding: 5px 1.5em;
    margin: auto;
    color: #2A2A2A;
    background-color: #fff;
    border: 1px solid #2A2A2A;
    border-radius: 5px;
    position: relative;
    text-decoration: none;
    transition: 0.7s;
    line-height: 1.1875;
}
.btn2_w a.btn2:after {
    position: absolute;
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-top: solid 1px #2A2A2A;
    border-right: solid 1px #2A2A2A;
    margin-top: -3px;
    top: 50%;
    right: 15px;
    transform: rotate(45deg) translateY(-50%);
    transform-origin: top left;
    transition: all .7s;
}
.btn2_w a.btn2:hover {
    color: #fff;
    background-color: #2A2A2A;
    opacity: inherit;
}
.btn2_w a.btn2:hover:after {
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
}
.btn3_w a.btn3 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    color: #fff;
    background-color: #2A2A2A;
    border: 1px solid #2A2A2A;
    border-radius: 5px;
    line-height: 1.1875;
    padding: 10px 17px 35px;
    position: relative;
    text-decoration: none;
    transition: 0.7s;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.btn3_w a.btn3:after {
    position: absolute;
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    margin-top: -3px;
    bottom: 11px;
    left: 50%;
    transform: rotate(45deg) translateX(-50%);
    transform-origin: top left;
    transition: all .7s;
}
.btn3_w a.btn3:hover {
    color: #2A2A2A;
    background-color: #fff;
    opacity: inherit;
}
.btn3_w a.btn3:hover:after {
    border-top: solid 1px #2A2A2A;
    border-right: solid 1px #2A2A2A;
}
.btn4_w a.btn4 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    max-width: 390px;
    height: 40px;
    line-height: 1;
    padding: 0 2em 0 1em;
    margin-top: -3px;
    color: #eee;
    background-color: #464646;
    border: 1px solid #464646;
    border-radius: 5px;
    position: relative;
    text-decoration: none;
    transition: 0.7s;
}
.btn4_w a.btn4:after {
    position: absolute;
    content: '';
    width: 7px;
    height: 7px;
    border: 0;
    border-top: solid 1px #C2C2C2;
    border-right: solid 1px #C2C2C2;
    margin-top: -3px;
    top: 50%;
    right: 8px;
    transform: rotate(135deg) translateY(-50%);
    transform-origin: top left;
    transition: all .7s;
}
.btn4_w a.btn4:hover {
    opacity: .7;
}
@media screen and (max-width: 550px) {
    .btn1_w a.btn1,
    .btn2_w a.btn2 {
        max-width: 250px;
        height: 50px;
    }
}

/**********トップページ**********/
/*トップお知らせ*/
#top_news {
    padding: 20px 0;
}
.top_news_w a {
    text-decoration: none;
    display: flex;
    align-items: center;
    align-content: center;
}
.top_news_w .tn_kokai_bi {
    color: #808080;
    display: inline-block;
    font-size: 14px;
    min-width: 90px;
    padding-right: 20px;
}
.top_news_w .tn_cat_w {
    display: inline-block;
    min-width: 100px;
    padding-right: 20px;
}
.top_news_w .tn_cat_w span {
    background-color: #fff;
    border: 1px solid #2A2A2A;
    color: #2A2A2A;
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    padding: 6px 5px 5px;
    text-align: center;
    width: 100%;
}
.top_news_w .tn_tit {
    color: #2A2A2A;
    display: inline-block;
    font-size: 16px;
    border-left: 1px solid #707070;
    padding-left: 20px;
}
@media screen and (max-width: 768px) {
    .top_news_w a {
        display: block;
    }
    .top_news_w .tn_cat_w {
        padding-right: 15px;
    }
    .top_news_w .tn_kokai_bi,
    .top_news_w .tn_cat_w span {
        font-size: 13px;
    }
    .top_news_w .tn_tit {
        border-left: none;
        padding-left: 0;
        margin-top: 10px;
    }
}

/*店舗紹介*/
#top_shokai {
    background-color: #F9F8F9;
    background-image: url(/wp-content/themes/hanarousoku/images/top_shokai_bg_pc.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    padding-top: 155px;
    padding-bottom: 200px;
}
#top_shokai .col3.flex_w {
    flex-direction: row-reverse;
    justify-content: space-between;
}
.top_shokai_lead {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.top_shokai_lead p {
    font-size: 22px;
    letter-spacing: 0.3em;
    margin: 0;
}
.top_shokai_lead p:not(:last-of-type) {
    padding-left: calc(60 / 545 * 100%);
}
.top_shokai_btn {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: flex-end;
    margin-top: auto;
    min-height: 1px;
}
.top_shokai_btn .btn3_w {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin-top: auto;
    min-height: 1px;
}
.top_shokai_btn p {
    font-size: 22px;
    letter-spacing: 0.3em;
    margin: 0;
    padding-left: 70px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
@media screen and (max-width: 1320px) {
    #top_shokai {
        padding-top: 70px;
        padding-bottom: 125px;
    }
}
@media screen and (max-width: 1000px) {
  .top_shokai_lead p,
  .top_shokai_btn p {
    font-size: 18px;
  }
  .top_shokai_btn p {
    padding-left: 30px;
  }
}
@media screen and (max-width: 768px) {
    #top_shokai {
        background-image: url(/wp-content/themes/hanarousoku/images/top_shokai_bg_sp1.svg);
        background-position: center top;
        background-size: inherit;
        padding-top: 45px;
        padding-bottom: 0;
    }
    #top_shokai .col3.flex_w {
        flex-wrap: wrap;
    }
    #top_shokai .col3.flex_w > div {
        width: 100%;
        text-align: center;
    }
    .top_shokai_tit .tatetit span {
        display: inline-block;
    }
    .top_shokai_tit .tatetit span:first-of-type {
        text-indent: 1em;
    }
    .top_shokai_tit .tatetit span:last-of-type {
        text-indent: 2em;
    }
    .top_shokai_lead {
        -ms-writing-mode: inherit;
        writing-mode: inherit;
    }
    .top_shokai_lead p:not(:last-of-type) {
        padding-left: 0;
        padding-bottom: 40px;
    }
    .top_shokai_btn {
        display: block;
        margin-top: 50px;
    }
    .top_shokai_btn p {
        padding-left: 0;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
    }
    .top_shokai_btn .btn3_w {
        display: block;
        margin-top: 30px;
    }
    .top_shokai_btn .btn3_w a.btn3 {
        width: 100%;
        max-width: 250px;
        height: 60px;
        padding: 5px 1.5em;
        margin: auto;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
    }
    .top_shokai_btn .btn3_w a.btn3:after {
        bottom: inherit;
        left: inherit;
        top: 50%;
        right: 15px;
        transform: rotate(45deg) translateY(-50%);
    }
}

/*商品紹介*/
#top_products {
    position: relative;
}
.top_select_in {
    position: relative;
    z-index: 2;
}
.top_pi_space {
    position: absolute;
    bottom: -10%;
    left: -60px;
    z-index: 1;
}
.top_shohin_in {
    width: 1200px;
    margin: 0 auto;
    justify-content: space-between;
    align-items: flex-start;
}
.top_shohinlist_in {
    width: 100%;
    max-width: 980px;
    overflow-x: hidden;
}
.top_shohin_list {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.top_shohin_list .slide-arrow {
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}
.top_shohin_list .prev-arrow {
    left: 0;
}
.top_shohin_list .next-arrow {
    right: 0;
}
.top_shohin_cat,.top_shohin_tit,.top_shohin_price,.top_shohin_txt {
    text-align: left;
}
.top_shohin_image {
    position: relative;
    margin-bottom: 10px;
}
.top_shohin_image:before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 100%;
}
.top_shohin_image img {
    width: 100%;
    height: 100%;
    background: #fff;
    border-radius: 5px;
    object-fit: contain;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
}
.top_shohin_label {
    position: absolute;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    text-align: center;
    line-height: 70px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho","Noto Serif JP", serif;
    font-size: 14px;
    color: #FFFFFF;
    left: -10px;
    top: 0;
}
.top_shohin_label.label_new {
    background-color: #781775;
}
.top_shohin_label.label_osusume {
    background-color: #A6003D;
}
.top_shohin_label.label_sale {
    background-color: #C51E71;
}
.top_shohin_cat{
    color: #808080;
    font-size: 12px;
}
.top_shohin_tit {
    font-size: 16px;
    margin-bottom: 1rem;
    flex: 1 auto;
    height: 100%;
    min-height: 0%;
}
.top_shohin_price {
    font-size: 18px;
    margin-bottom: 10px;
}
.top_shohin_price span {
    font-size: 13px;
}
.top_shohin_txt {
    font-size: 13px;
    border-top: 1px solid #C2C2C2;
    border-bottom: 1px solid #C2C2C2;
    padding: 7.5px 15px 10px;
   /* flex: 2;
    height: 100%;
    min-height: 0%;*/
}
@media screen and (max-width:1220px) {
  .top_shohin_in {
    width:100%;
    padding-left:20px;
    padding-right:20px;
  }
}
@media screen and (max-width: 1000px) {
    .top_shohin_in {
        flex-wrap: wrap;
    }
    .top_shohinlist_in {
        max-width: inherit;
    }
    .top_shohin_list {
        width: 100%;
        padding: 0 50px;
    }
    .top_shohin_list .prev-arrow {
        left: 0;
    }
    .top_shohin_list .next-arrow {
        right: 0;
    }
}
@media screen and (max-width: 768px) {
    .top_shohin_in {
        padding-left: 0;
        padding-right: 0;
    }
    #top_products h2.tatetit {
        margin-left: calc(60 / 375 * 100vw);
    }
    .top_shohin_list {
        padding: 0;
    }
    .top_shohin_list .prev-arrow {
        left: calc(20 / 375 * 100%);
    }
    .top_shohin_list .next-arrow {
        right: calc(20 / 375 * 100%);
    }
    .top_shohin_txt {
        padding: 7.5px 5px 10px;
    }
}
.top_select_shohin .col3 {
    flex-wrap: wrap;
}
.top_select_shohin .col3 h3 {
    color: #fff;
}
.top_select_shohin .col3 > div {
    width: calc((100% - 30px) / 3);
    background-color: #2A2A2A;
    border-radius: 5px;
}
.top_select_shohin .col3 > div:not(:nth-of-type(3n)) {
    margin-right: 15px;
}
.top_select_shohin .col5 {
    flex-wrap: wrap;
}
.top_select_shohin .col5 > li {
    width: calc((100% - 100px) / 5);
    margin-bottom: 30px;
}
.top_select_shohin .col5 > li:not(:nth-of-type(5n)) {
    margin-right: 25px;
}
.p-top-category-scenes__box .ts_blk_box h4 {
    margin-bottom: 0.5rem;
}
.p-top-category-scenes__img {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
}
.p-top-category-scenes__img:before {
    content: "";
    display: block;
    padding-top: calc(100% / 390 * 194);
}
.p-top-category-scenes__img img {
    width: 100%;
    height: 100%;
    background: #2A2A2A;
    margin: auto;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}
.ts_blk_box {
    padding: 0 30px 20px;
}
.top_select_ul1,.top_select_ul2 {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
.top_select_ul1 li:not(:last-of-type) {
        margin-bottom: 5px;
}
.top_select_ul1 a {
    display: block;
    background-color: #464646;
    border-radius: 5px;
    color: #C2C2C2;
    text-decoration: none;
    padding: 5px 15px 6px;
    position: relative;
}
.top_select_ul1 a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 7px;
    height: 7px;
    border-radius: 1px;
    border-top: 2px solid #C2C2C2;
    border-right: 2px solid #C2C2C2;
    transform: rotate(45deg);
    margin-top: -5px;
}
.top_select_ul2 a {
    color: #2A2A2A;
    text-decoration: none;
}
@media screen and (max-width: 1000px) {
    .top_select_shohin .col3 > div:not(:nth-of-type(3n)) {
        margin-right: auto;
    }
    .top_select_shohin .col3 > div {
        width: 100%;
        max-width: 600px;
        margin-right: auto;
        margin-left: auto;
    }
    .top_select_shohin .col3 > div:not(:last-of-type) {
        margin-bottom: 30px;
    }
    .ts_blk_box {
        padding: 0 15px 20px;
    }
    .top_select_shohin .col5 > li {
        width: calc((100% - 45px) / 4);
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(5n)) {
        margin-right: inherit;
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(4n)) {
        margin-right: 15px;
    }
}
@media screen and (max-width: 768px) {
    .top_select_shohin .col5 > li {
        width: calc((100% - 30px) / 3);
        margin-bottom: 20px;
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(4n)) {
        margin-right: inherit;
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(3n)) {
        margin-right: 15px;
    }
}
@media screen and (max-width: 550px) {
    .top_select_shohin .col5 > li {
        width: calc((100% - 15px) / 2);
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(3n)) {
        margin-right: inherit;
    }
    .top_select_shohin .col5 > li:not(:nth-of-type(2n)) {
        margin-right: 15px;
    }
}

/*お知らせ＆イベント・出店情報*/
#top_info {
    position: relative;
}
.top_info_inner.flex_w {
    justify-content: space-between;
    flex-direction: row-reverse;
    position: relative;
    z-index: 2;
}
.container_in910 {
    width: 100%;
    max-width: 910px;
}
.tab_w {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 35px;
    align-items: stretch;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
}
.tab_w .tab {
    width: calc((100% - 10px) / 3);
    background-color: #808080;
    color: #fff;
    cursor: pointer;
    font-family: "Shippori Mincho B1", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho","Noto Serif JP", serif;
    font-size: 22px;
    font-weight: bold;
    padding: 10px 15px;
    text-decoration: none;
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.tab_w .tab:not(:nth-of-type(3n)) {
    margin-right: 5px;
}
.tab_w .tab.active {
    background-color: #2A2A2A;
    position: relative;
    cursor: default;
}
.tab_w .tab.active:after {
    width: 0;
    height: 0;
    border-color: #2A2A2A transparent transparent transparent;
    border-style: solid;
    border-width: 17px 10px 0 10px;
    bottom: -7px;
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}
.tab_content_w .tab_content {
    display: none;
}
.tab_content_w .tab_content.active {
    display: block;
}
.event__list {
    display: flex;
    padding: 0 5px;
}
.event__list a {
    width: calc((100% - (50 / 1200 * 100%)) / 3);
    color: #2A2A2A;
    text-decoration: none;
    display: flex;
    flex-direction: column;
}
.event__list a:not(:last-of-type) {
    margin-right: calc(50 / 1200 * 100%);
}
.event_thumb {
    width: 100%;
    margin-bottom: 10px;
    position: relative;
}
.event_thumb:before {
    content: "";
    display: block;
    padding-top: calc(100% / 260 * 173);
    position: relative;
}
.event_thumb img {
    width: 100%;
    height: 100%;
    background: #f9f8f9;
    border-radius: 5px;
    flex-shrink: 0;
    margin: auto;
    object-fit: contain;
    position: absolute;
    top: 0;
    left: 0;
}
.event_time_label {
    background-color: #2A2A2A;
    border-top-left-radius: 5px;
    color: #fff;
    font-size: 14px;
    padding: 3px 10px 2px;
    position: absolute;
    top: 0;
    left: 0;
}
.event_time_label--red {
    background-color: #CE0202;
    border-top-left-radius: 5px;
    color: #fff;
    font-size: 14px;
    padding: 3px 10px 2px;
    position: absolute;
    top: 0;
    left: 0;
}
.event_time_label--org {
    background-color: #F24900;
    border-top-left-radius: 5px;
    color: #fff;
    font-size: 14px;
    padding: 3px 10px 2px;
    position: absolute;
    top: 0;
    left: 0;
}

.event_in {
/*    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;*/
}
.event_in .post_tit {
/*    flex: 1;
    height: 100%;
    min-height: 0%;*/
    border-left: none;
    padding-left: 0;
}
.news__list a {
    border-bottom: 1px solid #C2C2C2;
    display: flex;
    display: -ms-flexbox;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 0;
    text-decoration: none;
}
.news__list a:first-of-type {
    padding-top: 0;
}
.news__list .news_thumb {
    width: 16%;
    margin-right: 6%;
    position: relative;
}
.news__list .news_thumb:before {
    content: "";
    display: block;
    padding-top: calc(100% / 160 * 106);
}
.news__list .news_thumb img {
    width: 100%;
    height: 100%;
    background: #fff;
    border-radius: 5px;
    object-fit: contain;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
}
.news__list .news_in {
    width: 78%;
}
.date-cat_w {
    display: inline-block;
    line-height: 1.4;
    margin-bottom: 5px;
}
.post_date {
    color: #808080;
    font-size: 13px;
    margin-right: 15px;
}
.post_cat_w {
    display: inline-block;
}
.post_cat {
    border: 1px solid #707070;
    border-radius: 5px;
    color: #808080;
    display: inline-block;
    font-size: 12px;
    line-height: 1.5;
    padding: 0 10px;
}
.post_cat_end {
    background-color: #2A2A2A;
    border: 1px solid #2A2A2A;
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    line-height: 1.5;
    padding: 0 10px;
}
.post_cat:not(:last-of-type) {
    margin-right: 10px;
}
.post_tit{
    color: #2A2A2A;
    font-size: 16px;
}
.event_period {
    color: #666666;
    font-size: 13px;
    line-height: 1.4;
}
@media screen and (max-width: 1000px) {
    #top_info .container_in910 {
        width: 100%;
        max-width: inherit;
    }
    .top_info_inner.flex_w {
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 768px) {
    .top_pi_space {
        width: 80%;
        bottom: -7.5%;
        left: -45px;
    }
    .tab_w .tab {
        font-size: 14px;
        padding: 10px 5px;
    }
    .event_time_label,
    .event_time_label--red {
        font-size: 13px;
    }
    .event__list {
        flex-wrap: wrap;
        padding: 0;
    }
    .event__list a {
        width: 100%;
        border-bottom: 1px dashed #808080;
        padding: 20px 0;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
    }
    .event__list a:first-of-type {
        padding-top: 0;
    }
    .event__list a:not(:last-of-type) {
        margin-right: inherit;
    }
    .event_thumb {
        width: calc(130 / 375 * 100vw);
    }
    .event_in {
        width: calc(100% - (130 / 375 * 100vw));
        padding-left: calc(20 / 375 * 100%);
    }
    .news__list .news_thumb {
        width: calc(130 / 375 * 100vw);
        margin-right: 0;
    }
    .news__list .news_in {
        width: calc(100% - (130 / 375 * 100vw));
        padding-left: calc(20 / 375 * 100%);
    }
}
@media screen and (max-width: 550px) {
    .event_time_label,
    .event_time_label--red {
        font-size: 11px;
    }
}

#top_store_info {
    position: relative;
}
#top_store_info .top_ig_space {
    text-align: right;
    position: absolute;
    bottom: -30px;
    right: 40px;
    z-index: 1;
}
#top_store_info .container_in910{
    padding: 35px calc(50 / 910 * 100%) 40px;
    position: relative;
    z-index: 2;
}
#top_store_info table {
    width: 100%;
}
#top_store_info table th,
#top_store_info table td {
    font-size: 16px;
}
#top_store_info table tr:first-of-type th,
#top_store_info table tr:first-of-type td {
    border-top: 1px solid #C2C2C2;
}
#top_store_info table th {
    width: calc(155 / 910 * 100%);
    min-width: 100px;
    border-bottom: 1px solid #C2C2C2;
    padding: 20px 0;
    vertical-align: top;
}
#top_store_info table td {
    width: calc(100% - (155 / 910 * 100%));
    border-bottom: 1px solid #C2C2C2;
    padding: 20px 0;
}
#top_store_info table ul {
    margin-bottom: 0;
}
.top_store_info_inner.flex_w {
    justify-content: space-between;
}
.top_store_info_inner.flex_w > div:last-of-type {
    width: 760px;
    padding-left: calc(75 / 910 * 100%);
}
@media screen and (max-width: 1400px) {
    #top_store_info .top_ig_space {
        right: 0;
    }
    #top_store_info .top_ig_space img {
        max-width: 80%;
    }
}
@media screen and (max-width: 1200px) {
    #top_store_info .top_ig_space {
        bottom: calc(50% - 50px);
    }
}
@media screen and (max-width: 1000px) {
    #top_store_info .top_ig_space {
        display: none;
    }
}
@media screen and (max-width: 640px) {
    #top_store_info .container_in910 {
        position: relative;
    }
    .top_store_info_inner.flex_w {
        flex-wrap: wrap;
    }
    .top_store_info_inner.flex_w > div:first-of-type {
        position: absolute;
        top: -25px;
        left: 10px;
    }
    .top_store_info_inner.flex_w > div:last-of-type {
        width: 100%;
        padding-left: 0;
    }
    .top_store_info_inner.flex_w > div:last-of-type p {
        width: calc(220 / 335 * 100%);
        margin-right: 0;
        margin-left: auto;
    }
    #top_store_info table {
        margin-top: 70px;
    }
    #top_store_info table th,
    #top_store_info table td {
        display: block;
        width: 100%;
    }
    #top_store_info table th {
        border-bottom: none;
        padding-bottom: 15px;
    }
    #top_store_info table td {
        padding-top: 0;
    }
    #top_store_info table tr:first-of-type td {
        border-top: none;
    }
}

/*トップページバナーエリア*/
#top_banner_area {
    position: relative;
    z-index: 0;
}
#top_banner_area p {
    font-family: "Shippori Mincho B1", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho","Noto Serif JP", serif;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
}
.top_banner_u {
    margin-bottom: 50px;
}
.top_banner_s .col2 > div {
    width: calc((100% - 40px) / 2);
}
.top_banner_s .col2 > div:first-of-type {
    margin-right: 40px;
}
@media screen and (max-width: 768px) {
    #top_banner_area p {
        font-size: 14px;
        text-align: left;
    }
    .top_banner_u {
        margin-bottom: 40px;
    }
    .top_banner_s .col2.flex_w {
        flex-wrap: wrap;
    }
    .top_banner_s .col2 > div {
        width: 100%;
    }
    .top_banner_s .col2 > div:first-of-type {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

/*ご利用ガイド*/
#foot_user_guide {
    position: relative;
}
#foot_user_guide .top_ig_space {
    display: none;
    position: absolute;
    top: -35px;
    right: 0;
}
.guide_toggle_w {
    margin-top: -20px;
}
.user_guide_inner.flex_w {
    justify-content: space-between;
    position: relative;
    z-index: 2;
}
.underpage .user_guide_inner.flex_w {
    flex-wrap: wrap;
}
.guide_toggle_w {
    width: 100%;
    max-width: 900px;
}
.guide_toggle_in dl {
    border-bottom: 1px solid #C2C2C2;
    margin-bottom: 0;
}
.guide_toggle_in dt {
    font-family: "Shippori Mincho B1", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho","Noto Serif JP", serif;
    font-size: 22px;
    font-weight: bold;
    cursor: pointer;
    padding: 20px 0 20px 30px;
    margin: 0;
    position: relative;
}
.guide_toggle_in dt:before {
    background-color: #2A2A2A;
    content: "";
    height: 2px;
    position: absolute;
    right: 5px;
    top: 50%;
    transition: all 0.5s;
    width: 20px;
}
.guide_toggle_in dt:after {
    background-color: #2A2A2A;
    content: "";
    height: 2px;
    position: absolute;
    right: 5px;
    top: 50%;
    transform: rotate(90deg);
    transition: all 0.5s;
    width: 20px;
}
.guide_toggle_in dt.open:before {
    transform: rotate(180deg);
}
.guide_toggle_in dt.open:after {
    transform: rotate(0deg);
}
.guide_toggle_in dt img {
    margin-right: calc(60 / 900 * 100%);
    margin-bottom: 0;
}
.home .guide_toggle_w .guide_toggle_in dd {
    display: block;
}
.guide_toggle_in dd {
    display: none;
    margin-top: .5em;
    margin-left: calc(140 / 900 * 100%);
}
.guide_toggle1 .flex_w {
    align-items: flex-end;
}
.guide_toggle1 .flex_w div:first-of-type {
    width: 185px;
}
.guide_toggle1 .flex_w ul {
    margin-bottom: 0;
}
.guide_toggle1 .flex_w img {
    margin-bottom: 0;
}
.guide_toggle2 ul {
    display: flex;
    flex-wrap: wrap;
}
.guide_toggle2 ul li {
    width: calc(100% / 5);
}
.box__gray {
    background-color: #F9F8F9;
    padding: 15px 30px 20px;
}
.guide_toggle4 .flex_w div:first-of-type {
    margin-right: calc(30 / 760 * 100%);
}
@media screen and (max-width: 1000px) {
    #foot_user_guide .top_ig_space {
        display: block;
    }
    .user_guide_inner.flex_w {
        flex-wrap: wrap;
    }
    .guide_toggle2 ul li {
        width: calc(100% / 3);
    }
}
@media screen and (max-width: 768px) {
    .guide_toggle_w {
        margin-top: -15px;
    }
    .guide_toggle_in dt {
        font-size: 20px;
        padding: 15px 0 15px 5px;
    }
    .guide_toggle_in dt img {
        width: 30px;
        margin-right: calc(15 / 375 * 100%);
    }
    .guide_toggle_in dd {
        margin-left: 0;
    }
    .box__gray {
        padding: 15px 20px 20px;
    }
}
@media screen and (max-width: 480px) {
    .guide_toggle1 .flex_w {
        flex-wrap: wrap;
    }
    .guide_toggle2 ul li {
        width: calc(100% / 2);
    }
}

/*公式SNS*/
.foot_sns_inner {
    width: 100%;
    max-width: 1560px;
    margin: auto;
}
.foot_sns_inner h3 {
    font-size: 22px;
    display: flex;
    align-items: center;
    background-color: #F9F8F9;
}
.foot_sns_inner h3 span {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    margin-left: 20px;
}
.foot_sns_inner h3 span:before {
    border-top: 1px solid #2A2A2A;
    content: "";
    width: 35px;
}
.foot_sns_inner .col3.flex_w > div {
    width: calc((100% - 60px) / 3);
}
.foot_sns_inner .col3.flex_w > div:not(:last-of-type) {
    margin-right: 30px;
}
.foot_sns_inner .col3.flex_w > div:not(:first-of-type) {
    background-color: #fff;
}
.foot_sns_inner .col3.flex_w > div:not(:first-of-type) .foot_sns_box {
    padding: 30px calc(50 / 500 * 100%);
}
.foot_sns_line .flex_w div:first-of-type {
    width: 60px;
    margin-right: 10px;
}
.foot_sns_line .flex_w div:last-of-type {
    width: calc(100% - 70px);
}
@media screen and (max-width: 1600px) {
    .foot_sns_inner {
        padding-right: 20px;
        padding-left: 20px;
    }
}
@media screen and (max-width: 1000px) {
    .foot_sns_inner .col3.flex_w {
        flex-wrap: wrap;
    }
    .foot_sns_inner .col3.flex_w > div:not(:last-of-type) {
        margin-right: auto;
        margin-bottom: 50px;
    }
    .foot_sns_inner .col3.flex_w > div {
        width: 100%;
        max-width: 600px;
        margin: auto;
    }
}
@media screen and (max-width: 768px) {
    .foot_sns_inner h3 {
        font-size: 20px;
    }
    .foot_sns_inner h3 span {
        font-size: 16px;
    }
}

/*お知らせアーカイブ*/
.news.post_category-wrap {
    padding-top: 100px;
    margin-top: -100px;
}
.post-archive-title {
    margin-top: 110px;
    margin-bottom: 70px;
}
#news_archive_contents .event__list {
    flex-wrap: wrap;
    padding: 0;
    margin-bottom: 80px;
}
#news_archive_contents .event__list a {
    width: calc((100% - (120 / 1200 * 100%)) / 3);
    margin-bottom: 60px;
}
#news_archive_contents .event__list a:not(:last-of-type) {
    margin-right: inherit;
}
#news_archive_contents .event__list a:not(:nth-of-type(3n)) {
    margin-right: calc(60 / 1200 * 100%);
}
/*#news_archive_contents .event__list a:not(:nth-last-of-type(-n+3)) {
    margin-bottom: 60px;
}*/
#news_archive_contents .news__list {
    margin-bottom: 40px;
}
#news_archive_contents .news__list a {
    padding-right: calc(100 / 1200 * 100%);
    padding-left: calc(100 / 1200 * 100%);
}
@media screen and (max-width: 768px) {
    #news_archive_contents .event__list a {
        width: 100%;
        margin-bottom: 0;
    }
    #news_archive_contents .event__list a:not(:nth-of-type(3n)) {
        margin-right: inherit;
    }
    #news_archive_contents .news__list a {
        padding-right: 0;
        padding-left: 0;
    }
    #news_archive_contents .news__list .news_thumb {
        width: 130px;
        margin-right: 20px;
    }
    #news_archive_contents .news__list .news_in {
        width: calc(100% - 150px);
        padding-left: 0;
    }
}

/*絵ろうそく*/
.page_thumbnail {
    margin-bottom: 60px;
}
.page_thumbnail img {
    margin-bottom: 0;
}
.youtube_wrap {
    width: 100%;
    max-width: 600px;
    margin: 50px auto 0;
}
.youtube_inner {
    position: relative;
    width:100%;
    height:0;
    padding-top: calc(100% / 600 * 336);
}
.youtube_inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}
.col2_w64 {
    margin-bottom: 0;
}
.col2_w64 > .col2_w64_item {
    display: flex;
    justify-content: space-between;
}
.col2_w64 > .col2_w64_item:nth-of-type(even) {
    flex-direction: row-reverse;
}
.col2_w64 > .col2_w64_item:not(:last-of-type) {
    margin-bottom: 60px;
}
.col2_w64 > .col2_w64_item .col2_w64_image {
    width: calc(650 / 1200 * 100%);
    max-width: 650px;
}
.col2_w64 > .col2_w64_item .col2_w64_image img {
    margin-bottom: 0;
}
.col2_w64 > .col2_w64_item .col2_w64_txt {
    width: calc(450 / 1200 * 100%);
}
.col2_w {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0;
}
.col2_w > .col2_w_item {
    width: calc(450 / 1000 * 100%);
}
.col3_w {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
}
.col3_w > .col3_w_item {
    width: calc((100% - 90px) / 3);
}
.col3_w > .col3_w_item:not(:nth-of-type(3n)) {
    margin-right: 45px;
}
.col4_w {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.col4_w > .col4_w_item {
    width: calc((100% - 120px) / 4);
}
.col4_w > .col4_w_item:not(:nth-of-type(4n)) {
    margin-right: 40px;
}
.col2_w .col2_w_image,
.col3_w .col3_w_image,
.col4_w .col4_w_image {
    margin-bottom: 1rem;
    /*
    padding-top: 74%;
    position: relative;
    */
    width: 100%;
}
.col2_w .col2_w_image img,
.col3_w .col3_w_image img,
.col4_w .col4_w_image img {
    margin-bottom: 0;
    /*
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    font-family: 'object-fit: contain;';
    position: absolute;
    top: 0;
    left: 0;
    */
    width: 100%;
}
.pamf_w {
    display: grid;
    grid-template-columns: repeat(auto-fit,230px);
    grid-column-gap: 2.5%;
    grid-row-gap: 2rem;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
}
.pamf_w a {
    text-align: center;
}
.pamf_w img {
    display: block;
    margin: 0 auto 10px;
    max-width:130px;
    width: 100%;
}
.pamf_w a:hover img {
    opacity: 1;
}
@media screen and (max-width: 768px) {
    .page_thumbnail {
        margin-bottom: 30px;
    }
    .col2_w64 > .col2_w64_item {
        flex-wrap: wrap;
    }
    .col2_w64 > .col2_w64_item .col2_w64_image,
    .col2_w64 > .col2_w64_item .col2_w64_txt {
        width: 100%;
    }
    .col2_w64 > .col2_w64_item .col2_w64_image img {
        margin-bottom: 20px;
    }
    .col4_w > .col4_w_item {
        width: calc((100% - 20px) / 2);
    }
    .col4_w > .col4_w_item:not(:nth-of-type(4n)) {
        margin-right: inherit;
    }
    .col4_w > .col4_w_item:not(:nth-of-type(2n)) {
        margin-right: 20px;
    }
    .col4_w > .col4_w_item:not(:nth-last-of-type(-n+2)) {
        margin-bottom: 40px;
    }
}
@media screen and (max-width: 640px) {
    .col3_w > .col3_w_item:not(:nth-of-type(3n)) {
        margin-right: auto;
    }
    .col3_w > .col3_w_item {
        width: 100%;
        max-width: 370px;
        margin: auto;
    }
    .col3_w > .col3_w_item:not(:last-of-type) {
        margin-bottom: 20px;
    }
    .col2_w > .col2_w_item {
        width: 100%;
        max-width: 370px;
        margin: auto;
    }
    .col2_w > .col2_w_item:not(:last-of-type) {
        margin-bottom: 20px;
    }
    .pamf_w {
        grid-template-columns: 1fr 1fr;
        grid-column-gap: 20px;
    }
}

/*店舗紹介*/
.btn_list_col3 {
    margin-bottom: 80px;
    display: flex;
    flex-wrap: wrap;
}
.btn_list_col3 > div {
    width: calc((100% - 30px) / 3);
}
.btn_list_col3 > div:not(:nth-of-type(3n)) {
    margin-right: 15px;
}
.btn_list_col3 > div:not(:nth-last-of-type(-n+3)) {
    margin-bottom: 15px;
}
.btn_list_col3 > div:nth-last-of-type(-n+3) {
    margin-bottom: 0;
}
.col2_center50 {
    display: flex;
    flex-wrap: wrap;
}
.col2_center50 > div {
    width: 50%;
}
.col2_center50 > div.col2_center50_txt {
    padding-right: calc(50 / 1200 * 100%);
}
.col2_center40 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.col2_center40 > li,
.col2_center40 > div {
    width: calc((100% - 40px) / 2);
}
.col2_center40 > li:nth-of-type(odd),
.col2_center40 > div:nth-of-type(odd) {
    margin-right: 40px;
}
.col2_center40 > li:not(:nth-last-of-type(-n+2)),
.col2_center40 > div:not(:nth-last-of-type(-n+2)) {
    margin-bottom: 30px;
}
.col2_center40 > li img,
.col2_center40 > div img {
    margin-bottom: 0;
}
.transit_w {
    border: 1px solid #C2C2C2;
    display: flex;
    flex-wrap: wrap;
    padding: 50px 100px;
    margin: 50px auto;
}
.transit_w > div:nth-of-type(1),
.transit_w > div:nth-of-type(3) {
    width: calc(320 / 1000 * 100%);
}
.transit_w > div:nth-of-type(1) {
    padding-right: calc(40 / 1000 * 100%);
}
.transit_w > div:nth-of-type(2) {
    width: calc(360 / 1000 * 100%);
    border-right: 1px solid #C2C2C2;
    border-left: 1px solid #C2C2C2;
    padding: 0 calc(40 / 1000 * 100%);
}
.transit_w > div:nth-of-type(3) {
    padding-left: calc(40 / 1000 * 100%);
}
.transit_w h3 {
    display: flex;
    align-items: center;
}
.transit_w h3 img {
    margin-bottom: 0;
}
.transit_w h3 span {
    margin-left: 10px;
}
.accessmap_w {
    background-color: #F9F8F9;
    display: flex;
    align-items: center;
}

.g_map_w {
    padding-top: 50%;
    position: relative;
    width: 100%;
}
.g_map_w iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}
.nobori-flag_w {
    width: 400px;
    display: flex;
    justify-content: space-between;
    padding: 50px 20px 50px 30px;
}
.nobori-flag_w > div:first-of-type {
    width: 150px;
}
.nobori-flag_w > div:last-of-type {
    width: 200px;
    padding-left: 20px;
}
.nobori-flag_w a {
    color: #444;
    text-decoration: none;
}
.shop-gaiyou_tbl ul,
.shop-awards_tbl ul,
.shop-media_tbl ul {
    font-size: 14px;
    margin-bottom: 0;
}
.shop-gaiyou_tbl ul li:not(:last-of-type) {
    margin-bottom: 0.6em;
}
.shop-gaiyou_tbl .ad-year {
    color: #444444;
    font-weight: bold;
}
#shop-awards {
    background-color: #130907;
}
.shop-awards_bg {
    background-image: url(/wp-content/themes/hanarousoku/images/shop-awards_bg.png);
    background-position: left top;
    background-repeat: no-repeat;
    padding-top: 270px;
}
#shop-awards h2 {
    color: #fff;
}
.shop-gaiyou_tbl,
.shop-awards_tbl,
.shop-media_tbl {
    width: 100% !important;
}
.shop-awards_tbl {
    max-width: 1000px;
    margin: auto;
}
.shop-gaiyou_tbl th,
.shop-awards_tbl th,
.shop-media_tbl th {
    width: 30%;
    background-color: #F9F8F9;
    vertical-align: top;
}
.shop-gaiyou_tbl th,
.shop-gaiyou_tbl td,
.shop-media_tbl th,
.shop-media_tbl td {
    border: 1px solid #C2C2C2;
    color: #444444;
    padding: 10px;
}
.shop-awards_tbl th,
.shop-awards_tbl td {
    background-color: transparent;
    border: 1px solid #808080;
    color: #C2C2C2;
    padding: 10px;
}
.shop-gaiyou_tbl th:first-child,
.shop-gaiyou_tbl td:first-child,
.shop-awards_tbl th:first-child,
.shop-awards_tbl td:first-child,
.shop-media_tbl th:first-child,
.shop-media_tbl td:first-child {
    border-right: none;
}
.shop-awards_tbl td ul li:not(:last-of-type),
.shop-media_tbl td ul li:not(:last-of-type) {
    margin-bottom: 0.6em;
}
.shop-gaiyou_tbl a {
    color: #444;
    text-decoration: none;
}
.shop-awards_tbl a {
    color: #B59A3E;
}
@media screen and (max-width: 1000px) {
    .transit_w {
        padding: 30px 20px;
    }
}
@media screen and (max-width: 768px) {
    .btn_list_col3 {
        margin-bottom: 40px;
    }
    .col2_center50 > div {
        width: 100%;
    }
    .col2_center50 > div.col2_center50_txt {
        padding-right: 0;
    }
    .accessmap_w {
        flex-wrap: wrap;
    }
    .g_map_w {
        padding-top: calc(350 / 375 * 100%);
        width: 100%;
    }
    .nobori-flag_w {
        width: 100%;
        max-width: 500px;
        margin: auto;
        padding: 25px 15px;
    }
    .nobori-flag_w > div:last-of-type {
        width: calc(100% - 150px);
        min-width: 180px;
    }
    .shop-gaiyou_tbl ul,
    .shop-awards_tbl ul,
    .shop-media_tbl ul {
        font-size: 12px;
    }
    .shop-awards_bg {
        background-position: top;
        background-size: 165%;
    }
}
@media screen and (max-width: 640px) {
    .btn_list_col3 > div {
        width: calc((100% - 15px) / 2);
    }
    .btn_list_col3 > div:not(:nth-of-type(3n)) {
        margin-right: inherit;
    }
    .btn_list_col3 > div:not(:nth-of-type(2n)) {
        margin-right: 15px;
    }
    .btn_list_col3 > div:not(:nth-last-of-type(-n+2)) {
        margin-bottom: 10px;
    }
    .btn_list_col3 > div:nth-last-of-type(-n+2) {
        margin-bottom: 0;
    }
    .col2_center40 > li,
    .col2_center40 > div {
        width: calc((100% - 20px) / 2);
    }
    .col2_center40 > li:nth-of-type(odd),
    .col2_center40 > div:nth-of-type(odd) {
        margin-right: 20px;
    }
    .col2_center40 > li:not(:nth-last-of-type(-n+2)),
    .col2_center40 > div:not(:nth-last-of-type(-n+2)) {
        margin-bottom: 20px;
    }
    .transit_w {
        padding: 20px 15px;
        margin: 30px auto;
    }
    .transit_w > div:nth-of-type(1),
    .transit_w > div:nth-of-type(2),
    .transit_w > div:nth-of-type(3) {
        width: 100%;
    }
    .transit_w > div:nth-of-type(1) {
        padding-right: 0;
    }
    .transit_w > div:nth-of-type(2) {
        border-right: none;
        border-left: none;
        padding: 0;
    }
    .transit_w > div:nth-of-type(3) {
        padding-left: 0;
    }
    .transit_w > div:not(:first-of-type) {
        padding-top: 15px;
    }
    .transit_w > div:not(:last-of-type) {
        border-bottom: 1px solid #C2C2C2;
        padding-bottom: 10px;
    }
    .shop-gaiyou_tbl th,.shop-awards_tbl th,.shop-media_tbl th,
    .shop-gaiyou_tbl td,.shop-awards_tbl td,.shop-media_tbl td {
        display: block;
        width: 100%;
        padding: 15px 10px;
    }
    .shop-gaiyou_tbl th,.shop-media_tbl th {
        border-top: none;
        border-bottom: none;
    }
    .shop-awards_tbl th,.shop-awards_tbl td {
        border-top: none;
    }
    .shop-gaiyou_tbl tr:first-of-type th,.shop-media_tbl tr:first-of-type th {
        border-top: 1px solid #C2C2C2;
    }
    .shop-awards_tbl tr:first-of-type th {
        border-top: 1px solid #808080;
    }
    .shop-gaiyou_tbl th:first-child,.shop-media_tbl th:first-child {
        border-right: 1px solid #C2C2C2;
    }
    .shop-awards_tbl th:first-child {
        border-right: 1px solid #808080;
    }
    .shop-awards_tbl th {
        border-bottom: 1px dashed #808080;
    }
    .shop-awards_tbl th,
    .shop-media_tbl th,
    .shop-awards_tbl td,
    .shop-media_tbl td {
        font-size: 14px;
    }
}
@media screen and (max-width: 480px) {
    .btn_list_col3 .btn4_w a.btn4 {
        font-size: 14px;
        height: 50px;
        padding: 0.5em 2em 0.5em 1em;
    }
    .col2_center40 > li,
    .col2_center40 > div {
        width: 100%;
    }
    .col2_center40 > li:nth-of-type(odd),
    .col2_center40 > div:nth-of-type(odd) {
        margin-right: 0;
    }
    .col2_center40 > li:not(:nth-last-of-type(-n+2)),
    .col2_center40 > div:not(:nth-last-of-type(-n+2)) {
        margin-bottom: inherit;
    }
    .col2_center40 > li:not(:last-of-type),
    .col2_center40 > div:not(:last-of-type) {
        margin-bottom: 20px;
    }
    .g_map_inner {
        padding-top: calc(100% / 300 * 400);
    }
    .nobori-flag_w {
        flex-wrap: wrap;
    }
    .nobori-flag_w > div:first-of-type {
        width: 100%;
        text-align: center;
    }
    .nobori-flag_w > div:last-of-type {
        width: 100%;
        min-width: inherit;
        padding-left: 0;
    }
    .sp_height_big img {
        height: 150px;
        object-fit: cover;
        object-position: center;
    }
    .fancybox-image {
        width: inherit;
        max-width: calc(100% - 30px);
        height: inherit;
        margin: 0 auto;
        right: 0;
    }
}

.page-gift_u {
    background-color: #F9F8F9;
    background-image: url(./images/gift_message_bg.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 105%;
}
.page-illust_col2 > div:first-of-type {
    margin-top: 80px;
}
.gift-products_section > h3 {
    margin-bottom: 30px;
}
.gift-products_section > h3,
.gift-products_section > p {
    text-align: center;
}
.gift-products_wrap {
    margin-top: 35px;
}
.gift-products_wrap .c-products__img {
    margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
    .gift-products_wrap .c-products__price {
        font-size: 14px;
    }
}
@media screen and (max-width: 640px) {
    .page-gift_u {
        background-size: 200%;
    }
}
@media screen and (max-width: 480px) {
    .page-illust_col2 > div:first-of-type {
        margin-top: 0;
        order: 2;
    }
    .page-illust_col2 > div:last-of-type {
        order: 1;
    }
}


/*商品取扱店舗一覧*/
.btn_list_store {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 60px;
}
.btn_list_store .btn4_w {
    width: 100%;
    max-width: 390px;
    margin: 0 10px;
}
@media screen and (max-width:900px) {
    .btn_list_store {
        margin-top: 30px;
    }
    .btn_list_store .btn4_w {
        margin: 10px 10px;
    }
}

.page-stores-kennai_u {
    background-color: #F9F8F9;
}
.page-stores-kengai_u {
    background-color: #FFF;
}
.store-ichiran a {
    color: #000;
}
ul.col4 {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
}
ul.col4 li {
    width: calc(25% - 40px);
    margin-bottom: 10px;
    margin-left: 25px;
}
@media screen and (max-width: 768px) {
    ul.col4 li {
        width: calc(50% - 25px);
    }
}
@media screen and (max-width: 500px) {
    ul.col4 li {
        width: 100%;
    }
}
.tyuki {
    font-size: 14px;
    color: #808080;
}
.store-list {
    margin-top: 50px;
}
.store-in {
    padding: 50px 0;
    border-top: 1px solid #C2C2C2;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
}
.store-image {
    width: 450px;
    margin-right: 50px;
}
.store-detail {
    width: calc(100% - 500px);
}
.store-detail .sp_disp img {
    width: 100%;
}
@media screen and (max-width:1000px) {
    .store-image {
        width: 300px;
        margin-right: 30px;
    }
    .store-detail {
        width: calc(100% - 330px);
    }
}
@media screen and (max-width:768px) {
    .store-in {
        flex-direction: row;
    }
    .store-image {
        width: 100%;
        margin-right: 0;
    }
    .store-detail {
        width: 100%;
    }
    .store-detail .sp_disp img {
        width: 100%;
        margin-bottom: 30px;
    }
}

.store-area {
    background: #2A2A2A;
    border-radius: 20px;
    padding: 2px 10px;
    color:#fff;
    font-size: 12px;
    text-align: center;

    display: inline-block;
    margin-bottom: 5px;
}
h3.store-name {
    font-size: 25px;
}
.store-info-icon {
    height: 20px;
    width: 20px;
    margin: 0 10px 0 0;
}
.store-info-title {
    display: inline-block;
}

/*店舗情報テーブル*/
.store-info-tbl {
    width: 100%;
    background-color: #fff;
    padding: 0 20px 20px;
    border-collapse: unset;
    margin-top: 30px;
}
.page-stores-kengai_u .store-info-tbl {
    background-color: #F9F8F9;
}
.store-info-tbl tr {
    border-bottom: #C2C2C2 1px dashed;
    display: block;
}
.store-info-tbl th {
    width: 130px;
    vertical-align: top;
    padding: 15px 0;
}
.store-info-tbl td {
    width: calc(100% - 130px);
    vertical-align: top;
    padding: 15px 0 15px 20px;
}
@media screen and (max-width:768px) {
    .store-info-tbl {
        font-size: 13px;
        margin-bottom: 30px;
    }
    .store-info-icon {
        height: 14px;
        width: 14px;
        margin: 0 8px 3px 0;
    }
}
@media screen and (max-width:500px) {
    .store-info-tbl th {
        width: 90px;
        vertical-align: top;
        padding: 10px 0;
    }
    .store-info-tbl td {
        width: calc(100% - 90px);
        vertical-align: top;
        padding: 10px 0 10px 10px;
    }
}

/*小さい店舗写真*/
.square-image {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.square-in {
    width:220px;
    padding-top:220px;
    position:relative;

    margin-right: 10px;
    margin-bottom: 10px;
}
.square-in img {
    object-fit: cover;
    top:0;
    right:0;
    bottom:0;
    left:0;
    position:absolute;

    width: 100%;
    height: 100%;
}
.square-image .square-in:nth-of-type(2n) {
    margin-right: 0;
}
.square-image .square-in:nth-of-type(3)
,.square-image .square-in:nth-of-type(4)  {
    margin-bottom: 0;
}
@media screen and (max-width: 1000px) {
    .square-image .square-in {
        width: calc(50% - 5px);
        padding-top: calc(50% - 5px);
    }
}
