@charset "UTF-8"; *, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 100%;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html, button, input, select, textarea {
    /* 不要な指定は消す */
    font-family: 'Shippori Mincho B1', serif;
}

body {
    color: #4D4D4D;
    font-size: 1.111vw;
    line-height: 1.7;
    margin: 0px;
    background-color: #FFFFFF;
    overflow: hidden;
    position: relative;
    padding-right: 2.431vw;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0px;
}

a:link {
    color: #004CCA;
}

a:visited {
    color: #6219DB;
}

a:hover {
    color: #048ADE;
    text-decoration: none;
}

a:active {
    color: #048ADE;
    text-decoration: none;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

ul {
    padding: 0px;
    list-style: none;
    margin: 0;
}

.oh {
    overflow: hidden;
}

.L {
    float: left;
}

.R {
    float: right;
}

.sp {
    display: none;
}

.pr {
    position: relative;
}

.pa {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#menu {
    display: none;
}

.flex {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
}

.flex-sb {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    justify-content: space-between;
}

.wrap {
    width: 55.556vw;
    margin: 0 auto;
}

.wrap_01 {
    width: 93.056vw;
    margin: 0 auto;
}

.wrap_02 {
    width: 72.222vw;
    margin: 0 auto;
}

.cjk {
    font-family: noto-sans-cjk-jp, sans-serif;
}

/*　メインビジュアル　PC */
a.mv_scroll {
    display: block;
    writing-mode: vertical-lr;
    position: absolute;
    left: 3.472vw;
    top: 24.583vw;
    color: #4d4d4d;
}

section.mv {
    padding: 10.417vw 0 19.167vw;
}

section.mv p.ttl {
    font-size: 1.736vw;
    letter-spacing: .1em;
    margin-top: 4.861vw;
}

#mv_pager {
    position: absolute;
    right: calc( 20px + 3.472vw );
    bottom: 100px;
    width: 100%;
    text-align: right;
}

#mv_pager a {
    display: inline-block;
    width: 20px;
    position: relative;
    margin-left: 15px;
    transition: .3s;
    pointer-events: none;
}

#mv_pager a:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background: #f1f1f1;
    border-radius: 100%;
}

#mv_pager svg {
    transform: rotate(-90deg);
    position: absolute;
    left: -10px;
    top: -10px;
    width: 30px;
}

#mv_pager circle {
    fill: transparent;
    stroke: #4D4D4D;
    stroke-width: 7;
    opacity: 0;
}

#mv_pager .active circle {
    animation: circle 6s infinite 0s;
    /* keyframes名 速さ 繰り返し 開始までの間隔 */
    opacity: 1;
}

#mv_pager .active:before {
    background: #4D4D4D;
}

@keyframes circle {
    0% {
        stroke-dasharray: 0 366;
    }

    99.9%,to {
        stroke-dasharray: 366 366;
    }
}

ul.mv_slider li {
    border-radius: 0 0 0 12.5vw;
    overflow: hidden;
    width: 69.444vw;
}

/* ul.mv_slider {
    top: 0;
    width: 68.056vw;
    position: absolute;
    right: 0;
} */
.mv_slider_wrap {
    top: 0;
    width: 68.056vw;
    position: absolute;
    right: 0;
}

.mv_slider_wrap .bx-wrapper {
    background: none;
    border: none;
    box-shadow: none;
}

section.mv h1 {
    margin-left: -2.639vw;
    width: 16.528vw;
}

section.mv .wrap_01 {
    position: relative;
}

section.mv .wrap_01 {
    position: relative;
}

a {
    text-decoration: none;
}

p.copy_right {
    writing-mode: vertical-lr;
    position: absolute;
    left: 1.042vw;
    top: 14.653vw;
    font-size: 0.694vw;
    letter-spacing: .06em;
}

a.mv_scroll::before {
    content: "";
    position: absolute;
    bottom: -7.222vw;
    width: 0.069vw;
    height: 6.597vw;
    background: #4d4d4d;
    left: -0.278vw;
    right: 0;
    margin: auto;
}

body::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/bg.png) center repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/* コンセプト　PC */
section.concept p.eng {
    width: 19.4448vw;
}

section.concept {
    padding: 0 0 14.583vw;
    margin-top: 15vw;
}

section h2 {
    font-size: 1.111vw;
}

section.concept h2 {
    margin-top: -1.181vw;
}

section.concept .flame + .flame {
    margin-top: 8.333vw;
    padding-top: 6.944vw;
}

section.concept .flame p.text {
    font-size: 1.25vw;
    font-weight: 500;
    letter-spacing: .08em;
    line-height: 2.2;
}

section.concept .flame p.text + p.text {
    margin-top: 3.472vw;
}

section .ttl_box p.ttl {
    font-size: 2.083vw;
    letter-spacing: .28em;
    margin-top: 5.208vw;
}

section.concept .flame {
    position: relative;
    padding-bottom: 6.944vw;
}

section.concept .flame.mid .text_box {
    width: 24.306vw;
    margin-left: auto;
}

section.concept .flame .img {
    position: absolute;
    right: 0;
    width: 43.75vw;
    background: url(../img/3R3A0087.jpg) center no-repeat;
    background-size: cover;
    height: 100%;
    border-radius: 0 0 0 5.556vw;
    width: calc(45.139vw + (50vw - 51.389vw));
    top: 0;
}

section.concept .flame.mid .img {
    right: auto;
    border-radius: 0 0 5.556vw 0;
    background: url(../img/concept_img2.jpg) center no-repeat;
    background-size: cover;
}

section.concept .flame.btm .img {
    background: url(../img/3R3A1254.jpg) center no-repeat;
    background-size: cover;
}

section.concept .flame.btm {
    padding: 10.417vw 0;
}

/* ギフトボックス　PC */
section.gift_box .ttl_box {
    text-align: center;
}

section.gift_box p.eng {
    width: 22.2224vw;
    margin: auto;
}

section.gift_box h2 {
    margin-top: -1.389vw;
}

/* モーダルCSS */
.modalArea {
    display: none;
    position: fixed;
    z-index: 10;
    /*サイトによってここの数値は調整 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 20000;
}

.modalBg {
    width: 100%;
    height: 100%;
    background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    max-width: 77.778vw;
    padding: 3.472vw 4.861vw 3.472vw 4.861vw;
    background-color: #EAEAEA;
}

.closeModal {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    cursor: pointer;
}

/* 以下ボタンスタイル */
button {
    padding: 0.694vw;
    background-color: #fff;
    border: 1px solid #282828;
    border-radius: 0.139vw;
    cursor: pointer;
}

.gift_box_flame .modal_trigger {
    width: 48%;
    transition: .3s;
}

.gift_box_flame {
    text-align: center;
    /* margin-top: 1.736vw; */
    width: 48%;
}

.gift_box_flame .btn_box {
    justify-content: center;
    margin-top: 1.042vw;
}

.gift_box_flame .text_box {
    padding: 1.389vw 0;
}

.gift_box_flame .text_box {
    padding: 1.389vw 0;
}

.gift_box_flame .text_box {
    padding: 1.042vw 0;
}

.gift_box_flame .modal_trigger p.catch {
    font-size: 1.389vw;
    letter-spacing: .08em;
}

.gift_box_flame .modal_trigger h3 {
    font-size: 1.111vw;
    letter-spacing: .08em;
    margin-top: 1.528vw;
}

.gift_box_flame .text_box p.price {
    font-size: 1.181vw;
    color: #826E4D;
}

.gift_box_flame .text_box p.price span {
    font-size: 0.833vw;
}

.btn_box a.modal_btn, p.modal_btn.openModal {
    color: #fff;
    font-size: 1.042vw;
    display: block;
    background: #736357;
    width: 9.722vw;
    text-align: center;
    line-height: 2.778vw;
    margin: 0.556vw;
    position: relative;
    transition: .3s;
    border: solid 1px #a9a8a8;
    cursor: pointer;
}

.gift_box_flame .btn_box a.modal_btn.buy::before, section.item .btn_box a.modal_btn.buy::before {
    content: "";
    position: absolute;
    right: 0.833vw;
    top: 0;
    bottom: 0;
    margin: auto;
    background: url(../img/note_icon.png) center no-repeat;
    background-size: contain;
    width: 0.833vw;
    height: 0.833vw;
}

.gift_box_flame .btn_box a.modal_btn.detail::before, p.modal_btn.openModal::before {
    content: "";
    position: absolute;
    right: 0.833vw;
    top: 0;
    bottom: 0;
    margin: auto;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    width: 0.625vw;
    height: 0.625vw;
    transform: rotate(45deg);
    transition: .3s;
}

.gift_box_flame .btn_box a.modal_btn:hover, .item_flame .btn_box a.modal_btn:hover, section.item p.modal_btn.openModal:hover, .modalArea .btn_box a.modal_btn:hover {
    background: #414141;
    color: #fff;
}

section.gift_box {
    padding-bottom: 16.667vw;
}

section.feature .ttl_box p.eng {
    width: 19.4448vw;
    margin: 0 0 0 -1.389vw;
}

section.feature h2 {
    margin-top: 0.556vw;
}

section.feature {
    /* padding-top: 16.667vw; */
}

section.feature .img_num {
    width: 16.319vw;
}

.feature_flame {
    margin-top: 8.333vw;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.feature_flame .text_box {
    width: 47%;
    /* flex-shrink: 0; */
    /* margin-right: 3.472vw; */
    letter-spacing: .08em;
}

.feature_flame .img {
    border-radius: 0 5.556vw 0 5.556vw;
    overflow: hidden;
    position: relative;
    height: 20.833vw;
    width: 27.083vw;
    margin-top: 7.639vw;
}

.feature_flame .img img {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    /* border-radius: 0 5.556vw 0 5.556vw; */
    width: 100%;
    height: 100%;
}

.feature_flame .text_box p.text {
    font-size: 0.972vw;
    line-height: 2.5;
    letter-spacing: .02em;
    margin-top: 1.736vw;
}

.feature_flame .text_box h3 {
    line-height: 1.8;
    margin-top: 0.694vw;
    letter-spacing: .1em;
    font-weight: 400;
}

.feature_flame:nth-child(even) .text_box {
    order: 1;
    text-align: right;
}

.feature_flame:nth-child(even) .text_box p.text {
    text-align: left;
}

.feature_flame:nth-child(even) .img {
    border-radius: 5.556vw 0 5.556vw 0;
    margin-top: 5.069vw;
}

section.feature .wrap_02::before {
    content: "";
    position: absolute;
    left: 0;
    top: -17vw;
    background: url(../img/bg_gray.png) center repeat;
    background-size: contain;
    width: 100%;
    height: 113%;
    z-index: -1;
    opacity: .3;
}

section.feature .wrap_02 {
    position: relative;
    padding: 0 0 8.333vw;
    margin-top: 16vw;
}

/* よくある質問　PC */
.faq_box .ttl_box {
    width: 23%;
    flex-wrap: nowrap;
    margin-right: 11.111vw;
}

section.faq p.eng {
    width: 10vw;
}

section.faq h2 {
    letter-spacing: .07em;
}

.faq_box {
    flex-wrap: nowrap;
    align-items: flex-start;
}

section.faq dd {
    margin-left: 0;
    font-size: 0.972vw;
    letter-spacing: .05em;
    line-height: 2;
    margin-top: 1.389vw;
}

section.faq dd, section.faq dt {
    padding-left: 3.819vw;
    position: relative;
    width: 31.9vw;
}

section.faq dt.nowOpen span.mark::after {
    transform: rotate(90deg);
}

section.faq dd::before, section.faq dt::before {
    content: "Q";
    position: absolute;
    left: 0;
    top: -0.833vw;
    font-size: 1.944vw;
}

section.faq dd::before {
    content: "A";
}

section.faq {
    padding: 0 0 7.639vw;
    margin-top: 15vw;
}

section.faq dl + dl {
    margin-top: 0;
    border-top: 0;
}

section.faq dl span.dt {
    display: block;
}

section.faq dt span.mark {
    position: absolute;
    right: 0;
    top: 0.2vw;
    display: block;
    width: 1.5vw;
    height: 1.5vw;
}

section.faq dt span.mark::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 1px;
    width: 100%;
    background: #4d4d4d;
    left: 0;
    margin: auto;
    bottom: 0;
    transition: .3;
}

section.faq dt span.mark::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    background: #4d4d4d;
    left: 0;
    margin: auto;
    bottom: 0;
    width: 1px;
    height: 100%;
    transition: .3s;
}

section.faq dl {
    padding: 1.528vw 0;
    border-top: solid 1px;
    border-bottom: solid 1px;
    margin-bottom: 0;
}

.faq_box .detail_box {
    margin-top: -0.694vw;
}

.shop_btn_box a {
    display: block;
    width: 8.333vw;
    transition: .3s;
}

.shop_btn_box a:hover {
    opacity: .7;
}

section.shop p.eng {
    width: 10vw;
}

/*　ショップ　PC */
section.shop .shop_box {
    flex-wrap: nowrap;
    align-items: center;
}

.shop_btn_box a + a {
    margin-left: 0.694vw;
}

section.shop h2 {
    margin-top: -2.431vw;
}

section.shop::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/bg_gray.png) center repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: .4;
}

section.shop {
    padding: 6.736vw 0 6.458vw;
    position: relative;
}

section.sns h2 {
    width: 8.681vw;
    margin: auto;
}

section.sns {
    text-align: center;
    padding: 7.5vw 0 13.889vw;
}

.sns_icons_box {
    justify-content: center;
    margin-top: 3.472vw;
}

.sns_icons_box a {
    display: block;
    width: 2.778vw;
    transition: .3s;
}

.sns_icons_box a:hover {
    opacity: .7;
}

.sns_icons_box a + a {
    margin-left: 2.222vw;
}

/*　フッター　PC */
footer {
    text-align: center;
    padding: 4.653vw 0 1.181vw;
    position: relative;
}

.ft_desk ul {
    justify-content: center;
}

.ft_logo a {
    width: 16.667vw;
    margin: auto;
    display: block;
}

.ft_desk {
    margin-top: 6.25vw;
}

.ft_desk li a {
    display: block;
    color: #4d4d4d;
    font-size: 1.042vw;
}

.ft_desk li + li {
    margin-left: 3.472vw;
}

p.ft_copy_copy {
    font-size: 0.694vw;
    margin-top: 3.056vw;
    letter-spacing: .06em;
}

footer::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: .4;
    background: #969696;
}

/* アイテム　PC */
.item_flame {
    width: 33%;
    position: relative;
    height: 27vw;
    overflow: hidden;
}

.item_flame .text_box {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0.694vw 0.736vw 1.389vw 0.736vw;
    color: #fff;
    flex-wrap: nowrap;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: .2s;
}

.item_flame .text_box::before {
    content: "";
    background: #4D4D4D;
    opacity: .8;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #4D4D4D;
    height: 100%;
    z-index: -1;
}

.item_flame:hover .text_box {
    opacity: 1;
    visibility: visible;
}

.item_flame > * {
    position: relative;
    z-index: 100;
}

.item_flame p.detail {
    font-size: 1.042vw;
    letter-spacing: .02em;
}

.item_flame .img img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}

.item_flame h3 {
    font-size: 0.972vw;
    letter-spacing: .1em;
    margin-top: 0.972vw;
}

.item_flame p.price {
    color: #F4E3C2;
}

.item_flame p.price span.small {
    font-size: 0.833vw;
}

.item_flame .detail_box {
    margin-top: 0.208vw;
    flex-shrink: 0;
}

.item_flame .modalArea .text_box::before {
    display: none;
}

section.item .ttl_box {
    text-align: center;
}

section.item .ttl_box p.eng {
    width: 11.806vw;
    margin: auto;
}

section.item {
    margin-top: 16.528vw;
}

section.item .item_box {
    margin-top: 7.778vw;
}

section.item .btn_box a.modal_btn, section.item p.modal_btn.openModal {
    background: #ccc;
    color: #4D4D4D;
    border: solid 2px #afabab;
    font-weight: 500;
    width: 6.597vw;
    font-size: 0.833vw;
    padding-right: 1.042vw;
    line-height: 1.875vw;
    margin: 0.556vw 0 0;
}

section.item .btn_box a.modal_btn.buy::before {
    background: url(../img/note_icon_bk.png) center no-repeat;
    background-size: contain;
    z-index: 10;
}

.item_flame .text_box p.modal_btn.openModal::before {
    border-top: solid 2px #7d7d7d;
    border-right: solid 2px #7c7d7d;
}

/* 商品モーダル内　PC */
.modal_img {
    width: 34.722vw;
    position: relative;
    height: 38.194vw;
}

.modalContents .text_box {
    width: 30.556vw;
    text-align: left;
}

.modalArea .btn_box a.modal_btn::before {
    content: "";
    position: absolute;
    right: 0.833vw;
    top: 0;
    bottom: 0;
    margin: auto;
    background: url(../img/note_icon.png) center no-repeat;
    background-size: contain;
    width: 0.833vw;
    height: 0.833vw;
}

.modal_img .img {
    background: url(../img/3R3A9697_k.jpg) center no-repeat;
    background-size: cover;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    opacity: 0;
    transition: .3s;
}

.modal_img .img.on {
    opacity: 1;
}

.modal_small_image .img {
    height: 5.556vw;
    width: 5.556vw;
    background: url(../img/3R3A9697_k.jpg) center no-repeat;
    background-size: cover;
    margin-right: 0.347vw;
    opacity: .4;
    transition: .3s;
}

.modal_small_image .on .img {
    opacity: 1;
}

.modalContents h4 {
    font-size: 1.389vw;
    letter-spacing: .08em;
}

.modalContents p.products {
    font-size: 1.181vw;
}

.modalContents p.text {
    letter-spacing: .05em;
    font-size: 0.972vw;
    line-height: 2;
    margin: 1.389vw 0 1.25vw;
}

.modalContents p.price {
    color: #826E4D;
    font-size: 20px;
}

.modalContents span.small {
    font-size: 14px;
}

.modalContents .cat_box p.ttl {
    font-size: 0.903vw;
    border: solid 1px;
    width: 6.944vw;
    text-align: center;
    margin-right: 0.694vw;
    line-height: 1;
    padding: .2vw 0 .3vw 0;
   
}

.modalContents .cat_box + .cat_box {
    margin-top: 0.694vw;
}

.modalContents .cat_box p.conts {
    font-size: 0.972vw;
    letter-spacing: .02em;
}

.modal_small_image {
    margin: 1.389vw 0 0;
    padding-bottom: 3vw;
}

.modal_small_image.sp {
    display: none;
}

.modalContents .btn_box {
    margin-top: 3.472vw;
}

.modal_small_image.mamaset div:nth-child(2) .img {
    background: url(../img/3R3A9718_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.mamaset div:nth-child(3) .img {
    background: url(../img/3R3A9704_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.mamaset div:nth-child(4) .img {
    background: url(../img/3R3A9726_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.mamaset div:nth-child(5) .img {
    background: url(../img/3R3A9686_K.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.mamaset .img:nth-child(2) {
    background: url(../img/3R3A9718_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.mamaset .img:nth-child(3) {
    background: url(../img/3R3A9704_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.mamaset .img:nth-child(4) {
    background: url(../img/3R3A9726_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.mamaset .img:nth-child(5) {
    background: url(../img/3R3A9686_K.jpg) center no-repeat;
    background-size: cover;
}

p.modal_btn.openModal:hover {
    background: #414141;
}

section.item .btn_box a.modal_btn.buy:hover::before {
    background: url(../img/note_icon.png) center no-repeat;
    background-size: contain;
}

section.item p.modal_btn.openModal:hover::before {
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
}

.item_flame .modalContents .text_box {
    position: relative;
    color: #4d4d4d;
    padding: 0;
}

/* ハンバーガーメニュー　PC */
body::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 3.472vw;
    height: 100%;
    background: #969696;
    z-index: 1000;
}

.humberger_menu {
    position: fixed;
    z-index: 1000;
    top: calc( 50% - 7px );
    right: 0.347vw;
    width: 2.639vw;
    height: 0.972vw;
    z-index: 20000;
}

.humberger_menu span {
    height: 0.139vw;
    width: 100%;
    background: #fff;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transition: .3s;
}

.humberger_menu span:nth-child(2) {
    height: 0.139vw;
    background: #fff;
    width: 1.597vw;
    bottom: 0;
    top: auto;
    right: 0;
    left: auto;
}

div#humberger_menu_cont {
    width: 17.36vw;
    position: fixed;
    right: -18.639vw;
    z-index: 1000;
    background: #414141;
    height: 100vh;
    padding: 6.417vw 0 0 1.389vw;
    transition: .3s;
    z-index: 40000;
}

div#humberger_menu_cont a {
    color: #fff;
    font-size: 1.111vw;
    transition: .3s;
}

div#humberger_menu_cont a span.eng {
    display: block;
    letter-spacing: .08em;
    font-size: 0.764vw;
    color: #B0A493;
    line-height: 1.2;
    transition: .3s;
}

div#humberger_menu_cont a:hover {
    color: #E3B867;
}

div#humberger_menu_cont a:hover span.eng {
    color: #E3B867;
}

div#humberger_menu_cont li + li {
    margin-top: 2.431vw;
}

div#humberger_menu_cont .sns_box a {
    display: block;
    width: 2.083vw;
    transition: .3s;
}

div#humberger_menu_cont .sns_box a:hover {
    opacity: .7;
}

div#humberger_menu_cont .sns_box a.facebook img {
    max-height: 100%;
}

div#humberger_menu_cont .sns_box a + a {
    margin-left: 1.389vw;
}

div#humberger_menu_cont .sns_box a.facebook {
    width: 1.111vw;
    margin-left: 1.736vw;
}

div#humberger_menu_cont .sns_box {
    margin-top: 4.544vw;
}

div#humberger_menu_cont p.copy_right {
    color: #fff;
    writing-mode: horizontal-tb;
    position: static;
    font-size: 0.694vw;
    letter-spacing: .06em;
    margin-top: 3.472vw;
}

.humberger_menu.active span {
    transform: rotate(-45deg);
    width: 2.778vw;
}

.humberger_menu.active span:nth-child(2) {
    transform: rotate(45deg);
    width: 2.778vw;
    top: 0.069vw;
}

ul.slick-dots li {
    width: 0.556vw;
    border-radius: 50%;
    height: 0.556vw;
    background: #fff;
    margin: 0 1.389vw;
}

ul.slick-dots {
    bottom: 1.389vw;
    text-align: right;
    right: 6.944vw;
}

/* 
ul.slick-dots li.slick-active::before {
    content: width: 2.083vw;
    height: 2.083vw;
    position: absolute;
    left: 0;
    z-index: 1000000;
    stroke: #0999ac;
    stroke-width: 3;
    fill: transparent;
    animation: circle 2s infinite 3s;
} */
ul.slick-dots li.slick-active {
    background: #4d4d4d;
    position: relative;
    /* overflow: inherit; */
}

.modal_img.cable .img.on {
    background: url(../img/3R3A9764.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.cable .img:nth-child(2) {
    background: url(../img/3R3A9768.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.cable .img:nth-child(3) {
    background: url(../img/3R3A9766.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.cable div .img.on {
    background: url(../img/3R3A9764.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.cable div:nth-child(2) .img {
    background: url(../img/3R3A9768.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.cable div:nth-child(3) .img {
    background: url(../img/3R3A9766.jpg) center no-repeat;
    background-size: cover;
    background-size: cover;
}

.modal_small_image.cable .img {
    background: url(../img/3R3A9764.jpg) center no-repeat;
    background-size: cover;
}

.modalContents .btn_box {
    position: absolute;
    bottom: -0.556vw;
}

.modalContents {
    position: relative;
    align-items: center;
}

.item_flame img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}

.item_flame.soldout p.label {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    z-index: 100;
    width: 13.889vw;
    height: 1.389vw;
    z-index: 1000;
    text-align: center;
    font-size: 1.528vw;
    letter-spacing: .08em;
    color: #fff;
}

.item_flame.soldout::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.4);
    width: 100%;
    height: 100%;
    z-index: 150;
}

/* サイドケーブル　*/
.modal_img.side_cable .img {
    background: url(../img/3R3A9775.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.side_cable .img:nth-child(2) {
    background: url(../img/3R3A9773.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.side_cable .img:nth-child(3) {
    background: url(../img/3R3A9771.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.side_cable .img {
    background: url(../img/3R3A9775.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.side_cable div:nth-child(2) .img {
    background: url(../img/3R3A9773.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.side_cable div:nth-child(3) .img {
    background: url(../img/3R3A9771.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.side_cable .img {
    background: url(../img/3R3A9775.jpg) center no-repeat;
    background-size: cover;
}

/* 猫耳帽子　*/
.modal_img.nekomimi_hat .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.nekomimi_hat .img :nth-child(2) {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.nekomimi_hat .img :nth-child(3) {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.nekomimi_hat .img :nth-child(4) {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.nekomimi_hat .img :nth-child(5) {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.nekomimi_hat .img :nth-child(6) {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat div:nth-child(2) .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat div:nth-child(3) .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat div:nth-child(4) .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat div:nth-child(5) .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.nekomimi_hat div:nth-child(6) .img {
    background: url(../img/3R3A9754.jpg) center no-repeat;
    background-size: cover;
}

/* ロンパース　*/
.modal_img.waffle_rompers .img {
    background: url(../img/3R3A9799.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.waffle_rompers .img:nth-child(2) {
    background: url(../img/3R3A9801.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.waffle_rompers .img:nth-child(3) {
    background: url(../img/3R3A9796.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.waffle_rompers .img {
    background: url(../img/3R3A9799.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.waffle_rompers div:nth-child(2) .img {
    background: url(../img/3R3A9801.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.waffle_rompers div:nth-child(3) .img {
    background: url(../img/3R3A9796.jpg) center no-repeat;
    background-size: cover;
}

/* レッグウォーマー　*/
.modal_img.leg_warmer .img {
    background: url(../img/3R3A9794.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.leg_warmer .img:nth-child(2) {
    background: url(../img/3R3A9793.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.leg_warmer .img:nth-child(3) {
    background: url(../img/3R3A9790.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.leg_warmer .img {
    background: url(../img/3R3A9794.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.leg_warmer div:nth-child(2) .img {
    background: url(../img/3R3A9793.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.leg_warmer div:nth-child(3) .img {
    background: url(../img/3R3A9790.jpg) center no-repeat;
    background-size: cover;
}

/* ケーブルソックス（ベビー) */
.modal_img.socks_baby .img {
    background: url(../img/3R3A9741.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.socks_baby .img:nth-child(2) {
    background: url(../img/3R3A9745.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.socks_baby .img:nth-child(3) {
    background: url(../img/3R3A9748.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_baby .img {
    background: url(../img/3R3A9741.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_baby div:nth-child(2) .img {
    background: url(../img/3R3A9745.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_baby div:nth-child(3) .img {
    background: url(../img/3R3A9748.jpg) center no-repeat;
    background-size: cover;
}

/* ケーブルソックス（レディ) */
.modal_img.socks_lady .img {
    background: url(../img/3R3A9739.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.socks_lady .img:nth-child(2) {
    background: url(../img/3R3A9743.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.socks_lady .img:nth-child(3) {
    background: url(../img/3R3A9746.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_lady .img {
    background: url(../img/3R3A9739.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_lady div:nth-child(2) .img {
    background: url(../img/3R3A9743.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.socks_lady div:nth-child(3) .img {
    background: url(../img/3R3A9746.jpg) center no-repeat;
    background-size: cover;
}

.item_flame.gift_box {
    width: 48%;
    margin-top: 6.25vw;
    height: 26.6vw;
}

section.gift_box .ttl_box p.ttl {
    margin-bottom: 1.736vw;
}

.gift_box_flame:nth-child(n + 3) {
    margin-top: 6.25vw;
}

.modalContents .cat_box {
    flex-wrap: nowrap;
    align-items: flex-start;
}

ul.mv_slider.sp {
    display: none;
    top: 55px;
}

.gift_box_flame h3 {
    font-size: 1.111vw;
    margin-top: 1.042vw;
}

.gift_box_flame p.catch {
    font-size: 1.528vw;
}

/* プチコーディネート　PC */
.modal_img.putit .img {
    background: url(../img/3R3A9644_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.putit .img:nth-child(2) {
    background: url(../img/3R3A9642_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.putit .img:nth-child(3) {
    background: url(../img/3R3A9649_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.putit .img {
    background: url(../img/3R3A9644_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.putit div:nth-child(2) .img {
    background: url(../img/3R3A9642_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.putit div:nth-child(3) .img {
    background: url(../img/3R3A9649_k.jpg) center no-repeat;
    background-size: cover;
}

/* トータルコーディネートセット PC　*/
.modal_img.total .img {
    background: url(../img/3R3A9623_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.total .img:nth-child(2) {
    background: url(../img/3R3A9628_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_img.total .img:nth-child(3) {
    background: url(../img/3R3A9632_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.total .img {
    background: url(../img/3R3A9623_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.total div:nth-child(2).img {
    background: url(../img/3R3A9628_k.jpg) center no-repeat;
    background-size: cover;
}

.modal_small_image.total div:nth-child(3).img {
    background: url(../img/3R3A9632_k.jpg) center no-repeat;
    background-size: cover;
}

/* 購入する　モーダル　PC */
.buy_modal {
    position: absolute;
    display: none;
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 50000;
}

.buy_modal .inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    max-width: 77.778vw;
    padding: 6.944vw 4.861vw 6.944vw 4.861vw;
    background-color: #EAEAEA;
}

.buy_modal a {
    position: relative;
    display: block;
    width: 11.389vw;
    height: 11.389vw;
    transition: .3s;
}

.buy_modal a:hover {
    opacity: .7;
}

.buy_modal a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/rakuten_mark.png) center no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
}

.buy_modal ul {
    justify-content: center;
}

.buy_modal_bg {
    width: 100%;
    height: 100%;
    background-color: rgba(30,30,30,0.9);
}

.buy_modal li {
    margin: 0.833vw;
}

.buy_modal a.yahoo::before {
    background: url(../img/yahoo_mark.png) center no-repeat;
    background-size: cover;
}

.buy_modal a.base::before {
    background: url(../img/pay_mark.png) center no-repeat;
    background-size: cover;
}

.buy_modal a.amazon::before {
    background: url(../img/amazon_mark.png) center no-repeat;
    background-size: cover;
}

.buy_modal p.notion {
    text-align: center;
    font-size: 1.319vw;
    letter-spacing: .08em;
    margin-bottom: 1.389vw;
}

.modalBg span, .buy_modal_bg span.close {
    display: block;
    position: absolute;
    right: 10%;
    width: 1.736vw;
    height: 1.736vw;
    top: 3%;
}

.modalBg span::before, .buy_modal_bg span.close::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 0.069vw;
    background: #fff;
    transform: rotate(45deg);
}

.modalBg span::after, .buy_modal_bg span.close::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 0.069vw;
    background: #fff;
    transform: rotate(-45deg);
}

.buy_modal_bg span.close {
    top: 15%;
}

div#humberger_menu_cont.active {
    right: 3.46vw;
}

/* 追従ボタン　PC */
a.fallow_btn {
    display: flex;
    position: fixed;
    right: 4.16vw;
    z-index: 20000;
    width: 6.94vw;
    height: 6.94vw;
    color: #242031;
    background: #eeebeb;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    border: solid #969696 1px;
    text-align: center;
    line-height: 1.5;
    transition: .3s;
    font-size: 1.1vw;
    bottom: 1vw;
    transition: .3s;
}

a.fallow_btn:hover {
    color: #fff;
    background: #242031;
}

@media (max-width: 750px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    /*********************************************
     * SPヘッダー
     *********************************************/
    header#sp_header {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        background: #969696;
        box-shadow: 1px 1px #ccc;
        z-index: 20000;
        height: 50px;
    }

    header#sp_header .logo {
        position: absolute;
        left: 10px;
        top: 7px;
        line-height: 0;
    }

    header#sp_header .logo img {
        height: auto;
    }

    header#sp_header a.icon {
        color: #000;
        position: absolute;
    }

    header#sp_header a.mail {
        right: 4.861vw;
        top: 0.903vw;
        font-size: 1.736vw;
    }

    header#sp_header a.tel {
        right: 7.639vw;
        top: 1.042vw;
        font-size: 1.389vw;
    }

    /*　ハンバーガーボタン　*/
    .hamburger {
        display : block;
        position: fixed;
        z-index : 99999;
        right : 0.903vw;
        top : 0.833vw;
        width : 2.917vw;
        height: 2.917vw;
        cursor: pointer;
        text-align: center;
    }

    .hamburger span {
        display : block;
        position: absolute;
        width : 2.083vw;
        height : 0.139vw ;
        left : 0.417vw;
        background : #555;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition : 0.5s ease-in-out;
        transition : 0.5s ease-in-out;
    }

    .hamburger span:nth-child(1) {
        top: 0.694vw;
    }

    .hamburger span:nth-child(2) {
        top: 1.389vw;
    }

    .hamburger span:nth-child(3) {
        top: 2.083vw;
    }

    /* ナビ開いてる時のボタン */
    .hamburger.active span:nth-child(1) {
        top : 1.111vw;
        left: 0.417vw;
        -webkit-transform: rotate(315deg);
        -moz-transform : rotate(315deg);
        transform : rotate(315deg);
    }

    .hamburger.active span:nth-child(2), .hamburger.active span:nth-child(3) {
        top: 1.111vw;
        -webkit-transform: rotate(-315deg);
        -moz-transform : rotate(-315deg);
        transform : rotate(-315deg);
    }

    nav.globalMenuSp {
        position: fixed;
        z-index : 999;
        top : 0;
        left : 0;
        color: #000;
        background: #fff;
        text-align: center;
        transform: translateX(100%);
        transition: all 0.6s;
        width: 100%;
        height: 100vh;
        align-items: center;
        background: #ccc;
        overflow: scroll;
    }

    nav.globalMenuSp ul {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }

    nav.globalMenuSp ul li {
        list-style-type: none;
        padding: 0;
        width: 100%;
        border-bottom: 1px solid #fff;
    }

    nav.globalMenuSp ul li:last-child {
        padding-bottom: 0;
        border-bottom: none;
    }

    nav.globalMenuSp ul li:hover {
        background : #ddd;
    }

    nav.globalMenuSp ul li a {
        display: block;
        color: #000;
        padding: 1em 0;
        text-decoration : none;
    }

    /* このクラスを、jQueryで付与・削除する */
    nav.globalMenuSp.active {
        transform: translateX(0%);
    }

    body {
        font-size: 3.6vw;
        line-height: 1.6;
        overflow: hidden;
        padding: 0;
        position: red;
    }

    .wrap, wrap_01, .wrap_02 {
        max-width: 90%;
        width: auto;
    }

    /* メインビジュアル　SP */
    body::after {
        display: none;
    }

    #mv_pager a {
    width: 2vw;
    /* height: 3vw; */
}

    #mv_pager a:before {
    width: 2vw;
    height: 2vw;
}

#mv_pager svg {
    width: 7vw;
    left: -2.3vw;
    top: -2.3vw;
}
    
    .mv_slider_wrap {
        width: 70vw;
        height: 141vw;
        margin-top: 48px;
    }

    section.mv {
        padding: 65vw 0px;
        margin-top: 50px;
    }

    ul.mv_slider li {
        border-radius: 0 0 0 65px;
    }

    p.copy_right {
        font-size: 2vw;
        top: 51vw;
    }

    a.mv_scroll {
        left: 2vw;
        top: 40vw;
    }

    section.mv .text_box.sp {
        position: absolute;
        top: 121vw;
        right: 0;
        left: 19vw;
        margin: auto;
        width: 59vw;
    }

    section.mv p.ttl {
        letter-spacing: .15em;
        font-size: 6.5vw;
        word-break: break-all;
    }

    ul.slick-dots {
        right: 0;
        bottom: 42vw;
    }

    ul.slick-dots li {
        border-radius: 50%;
        width: 2vw;
        height: 2vw;
        margin: 0px 3vw;
    }

    /* コンセプト SP */
    section.concept {
        padding: 4vw 0 35vw;
        margin-top: 46vw;
    }

    section.concept p.eng {
        width: 37.6vw;
        margin-left: 10vw;
    }

    section.concept .flame .img {
        position: relative;
        width: 84%;
        height: 48vw;
        margin-left: auto;
        border-radius: 0 0 0 2.778vw;
        background-position: bottom left;
    }

    section.concept h2 {
        font-size: 3.2vw;
        margin-left: 10vw;
        padding-bottom: 18vw;
    }

    section.concept .wrap {
        max-width: 100%;
    }

    section .ttl_box p.ttl {
        font-size: 6vw;
        margin: 10vw 0 0 8vw;
    }

    section.concept .flame {
        padding-bottom: 0;
    }

    section.concept .flame + .flame {
        padding: 0;
        margin-top: 13vw;
    }

    section.concept .flame.mid .img {
        margin-right: auto;
        margin-left: 0;
        border-radius: 0 0 2.778vw 0;
    }

    section.concept .flame.mid .text_box {
        width: 100%;
        padding: 10vw 13vw 0;
    }

    section.concept .flame p.text {
        font-size: 4vw;
        letter-spacing: .02em;
        line-height: 2;
    }

    section.concept .flame p.text + p.text {
        margin-top: 10vw;
    }

    section.concept .flame.btm p.text {
        text-align: right;
        padding: 10vw 14vw 0 0;
    }

    /* ギフトボックス　SP */
    section.gift_box p.eng {
        width: 50.4%;
    }

    section.gift_box h2 {
        margin-top: -.5vw;
        font-size: 3.2vw;
    }

    section.gift_box .ttl_box p.ttl {
        margin: 14vw auto 10vw;
        font-size: 5vw;
        letter-spacing: .15em;
    }

    .gift_box_flame {
        width: 100%;
    }

    .gift_box_wrap {
        display: block;
    }

    .gift_box_flame .text_box p.catch {
        font-size: 5vw;
        letter-spacing: .08em;
    }

    .gift_box_flame .text_box h3 {
        font-size: 4vw;
        margin-top: 3vw;
        letter-spacing: .05em;
    }

    .gift_box_flame .text_box p.price {
        font-size: 5vw;
    }

    .gift_box_flame .text_box p.price span {
        font-size: 3.6vw;
    }

    .gift_box_flame .btn_box {
        margin-top: 2vw;
    }

    .btn_box a.modal_btn, p.modal_btn.openModal {
        width: 41vw;
        font-size: 4vw;
        line-height: 12vw;
        margin: 1.5vw;
    }

    .gift_box_flame .btn_box a.modal_btn.detail::before, p.modal_btn.openModal::before {
        width: 2vw;
        height: 2vw;
        right: 4vw;
    }

    .gift_box_flame .btn_box a.modal_btn.buy::before, section.item .btn_box a.modal_btn.buy::before {
        width: 4vw;
        height: 4vw;
        right: 4vw;
    }

    .gift_box_flame p.modal_btn.openModal::before {
        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
    }

    .gift_box_flame + .gift_box_flame {
        margin-top: 8vw;
    }

    .item_flame.gift_box {
        width: 100%;
        height: 75vw;
        margin-top: 8vw;
    }

    section.gift_box {
        padding-bottom: 35vw;
    }

    /* いとふみのこだわり　SP */
    section.feature .wrap_02 {
        padding: 4vw 0 20vw;
        margin-top: 30vw;
    }

    section.feature {
        margin-top: 20vw;
    }

    section.feature .wrap_02::before {
        background: #bfbdbd;
        top: -11vw;
        height: 102%;
    }

    section.feature .ttl_box p.eng {
        width: 64%;
        margin: 0 0 0 -1vw;
    }

    section.feature h2 {
        font-size: 4vw;
        margin-top: 1vw;
    }

    .feature_flame {
        margin-top: 10vw;
        display: block;
    }

    .feature_flame .text_box {
        width: 100%;
    }

    section.feature .img_num {
        width: 54vw;
    }

    section.feature .ttl_box .wrap {
        max-width: 100%;
    }

    .feature_flame .text_box h3 {
        font-size: 5vw;
        letter-spacing: .2em;
    }

    .feature_flame .text_box p.text {
        letter-spacing: .01em;
        font-size: 4vw;
        padding-right: 2vw;
        line-height: 2.2;
        margin-top: 4.5vw;
    }

    .feature_flame .img {
        width: 100%;
        height: 59vw;
        margin-top: 10vw;
        border-radius: 0 2.778vw 0 2.778vw;
    }

    .feature_flame:nth-child(even) .img_num {
        margin-left: auto;
    }

    .feature_flame:nth-child(even) h3 {
        text-align: left;
        letter-spacing: .08em;
        line-height: 1.8;
    }

    .feature_flame:nth-child(even) .img {
        border-radius: 2.778vw 0 2.778vw 0;
        margin-top: 10vw;
    }

    /* アイテム　SP */
    section.item {
        padding-top: 0;
        margin-top: 30vw;
    }

    section.item .ttl_box p.eng {
        width: 37%;
    }

    section.item .ttl_box h2 {
        font-size: 4vw;
        margin-top: 2vw;
    }

    section.item .item_box {
        margin-top: 12vw;
        display: block;
    }

    .item_flame {
        width: 100%;
        height: 116vw;
        padding-bottom: 17vw;
    }

    .item_flame .text_box {
        display: block;
        text-align: center;
        padding: 5vw;
        opacity: 1;
        visibility: visible;
    }

    .item_flame .text_box .btn_box {
        display: flex;
        justify-content: center;
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flexbox;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
    }

    section.item .btn_box a.modal_btn, section.item p.modal_btn.openModal {
        margin: 3vw 1.5vw 0;
        width: 48%;
        line-height: 10vw;
        font-size: 4vw;
    }

    .item_flame h3 {
        font-size: 4vw;
        margin-top: 2vw;
    }

    .item_flame p.detail {
        font-size: 5vw;
        letter-spacing: .08em;
    }

    .item_flame p.price span.small {
        font-size: 3.2vw;
    }

    .item_flame p.price {
        font-size: 4.5vw;
        margin-top: 0;
    }

    .item_flame + .item_flame {
        margin-top: 5vw;
    }

    .item_flame.soldout {
        padding: 0;
        height: 67vw;
    }

    .item_flame.soldout img {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 0;
        right: 0;
        width: 100%;
        height: auto;
    }

    .item_flame.soldout p.label {
        height: 8vw;
        font-size: 5vw;
        width: 85%;
    }

    /* よくある質問　SP */
    section.faq {
        padding: 4vw 0 0;
        margin-top: 25vw;
    }

    .faq_box {
        display: block;
        padding-left: 4vw;
    }

    .faq_box .ttl_box {
        width: 100%;
    }

    section.faq dt span.mark {
        width: 4vw;
        height: 4vw;
        top: 5.2vw;
    }

    section.faq p.eng {
        width: 28%;
    }

    section.faq h2 {
        font-size: 4vw;
        letter-spacing: .04em;
    }

    section.faq dd, section.faq dt {
        font-size: 4.2vw;
        padding-left: 8vw;
        letter-spacing: .02em;
        line-height: 1.8;
        width: 100%;
    }

    section.faq dd::before, section.faq dt::before {
        font-size: 6vw;
        top: 0vw;
    }

    section.faq dt {
        font-size: 4.8vw;
        padding: 3vw 14vw;
        position: relative;
        /* width: 100%; */
    }

    section.faq dd {
        margin-top: 3vw;
    }

    /* ショップ　SP */
    section.shop .shop_box {
        display: block;
        padding-left: 4vw;
    }

    section.shop p.eng {
        width: 30.4%;
    }

    section.shop h2 {
        margin-top: -4vw;
    }

    section h2 {
        font-size: 3.2vw;
    }

    .shop_btn_box {
        margin-top: 10vw;
    }

    .shop_btn_box a {
        width: 32vw;
    }

    .shop_btn_box a:nth-child(3) {
        margin-left: 11vw;
    }

    .shop_btn_box a:nth-child(n + 3) {
        margin-top: 5vw;
    }

    section.faq dl + dl {
        border-top: 0;
    }

    .faq_box .detail_box {
        margin-top: 9vw;
    }

    section.shop {
        padding: 4vw 0 13vw;
        margin-top: 22vw;
    }

    section.sns {
        padding: 13vw 0 30vw;
    }

    section.sns h2 {
        width: 24%;
    }

    .sns_icons_box.flex {
        margin-top: 6vw;
    }

    .sns_icons_box a {
        width: 12vw;
    }

    .sns_icons_box a + a {
        margin-left: 7vw;
    }

    .ft_logo a {
        width: 50%;
    }

    .ft_desk {
        margin-top: 10vw;
    }

    .ft_desk li a {
        font-size: 4vw;
    }

    p.ft_copy_copy {
        margin-top: 20vw;
        font-size: 2vw;
        letter-spacing: .03em;
    }

    ul.mv_slider.sp {
        display: block;
        margin-top: -5px;
    }

    ul.mv_slider.pc {
        display: none;
    }

    /* 詳細モーダル内　SP */
    .modalContents {
        display: block;
        /* height: 1000px; */
        /* overflow-y: scroll; */
    }

    .modal_img {
        width: 100%;
        height: 84vw;
    }

    .modalContents .text_box {
        width: 100%;
        margin-top: 6vw;
    }

    .modalWrapper {
        max-width: 91%;
        overflow-y: scroll;
        height: 80%;
        padding-bottom: 20vw;
    }

    .modalContents .cat_box {
        display: block;
    }

    .modalContents .cat_box p.ttl {
        width: 30%;
        font-size: 3.5vw;
        line-height: 1;
        padding: .7vw 0 1vw 0;
    }

    .modalContents p.text {
        font-size: 4vw;
        line-height: 1.7;
        margin: 4vw 0 6vw;
    }

    .modalContents p.products {
        font-size: 4vw;
    }

    .modalContents p.price {
        font-size: 5vw;
        margin-top: 1vw;
    }

    .modalContents p.price span.small {
        font-size: 3.2vw;
    }

    .modalContents h4 {
        font-size: 5vw;
        letter-spacing: .01em;
        line-height: 1.1;
    }

    .modalContents .cat_box p.conts {
        font-size: 4vw;
    }

    .modalContents .cat_box + .cat_box {
        margin-top: 3vw;
    }

    .modal_small_image.sp {
        display: flex;
        margin: 5vw auto 0;
        width: 85%;
        flex-wrap: wrap;
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flexbox;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
    }

    .modal_small_image .img {
        width: 21vw;
        height: 21vw;
        margin: 1vw;
    }

    .modalContents .btn_box {
        bottom: -17vw;
    }

    .modalArea .btn_box a.modal_btn {
        margin: 0;
    }

    .modalBg span, .buy_modal_bg span.close {
        width: 20px;
        height: 20px;
        left: 7vw;
        top: 25px;
        right: auto;
    }

    .modalBg span::before, .buy_modal_bg span.close::before,
    .modalBg span::after, .buy_modal_bg span.close::after {
        width: 2px;
    }

    /* 購入する　モーダルSP */
    .buy_modal .inner {
        max-width: 90%;
        padding: 10vw 3vw;
    }

    .buy_modal li {
        width: 40%;
        margin: 2vw;
    }

    .buy_modal a {
        width: 30vw;
        height: 30vw;
        margin: auto;
    }

    .buy_modal p.notion {
        font-size: 4vw;
        letter-spacing: .05em;
        margin-bottom: 4vw;
    }

    /* ヘッダー SP */
    header#sp_header .logo a {
        display: block;
        width: 85px;
    }

    .humberger_menu.sp {
        width: 30px;
        height: 12px;
        top: 20px;
        right: 10px;
    }

    .humberger_menu span {
        height: 1.5px;
    }

    .humberger_menu span:nth-child(2) {
        width: 17px;
        height: 1.5px;
    }

    .humberger_menu.sp.active {
        height: 30px;
        top: 23px;
    }

    .humberger_menu.active.sp span {
        width: 100%;
    }

    div#humberger_menu_cont {
        width: 60%;
        right: -60%;
    }

    div#humberger_menu_cont a:hover {
        color: #fff;
    }

    div#humberger_menu_cont a:hover span.eng {
        color: #B0A493;
    }

    div#humberger_menu_cont a {
        font-size: 16px;
        letter-spacing: .05em;
    }

    div#humberger_menu_cont li + li {
        margin-top: 23px;
    }

    div#humberger_menu_cont .sns_box {
        margin-top: 100px;
    }

    div#humberger_menu_cont .sns_box a {
        width: 30px;
        height: 30px;
    }

    div#humberger_menu_cont .sns_box a.facebook {
        width: 15px;
        margin-left: 21px;
        height: 17px;
    }

    div#humberger_menu_cont .sns_box a + a {
        margin-left: 16px;
    }

    div#humberger_menu_cont p.copy_right {
        font-size: 3vw;
        margin-top: 6vw;
    }

    div#humberger_menu_cont a span.eng {
        font-size: 10px;
    }

    a.mv_scroll::before {
        height: 20vw;
        bottom: -22vw;
        left: -0.978vw;
        width: 1px;
    }

    div#humberger_menu_cont {
        padding: 120px 0 0 5vw;
    }

    .modalArea .btn_box a.modal_btn::before {
        width: 4vw;
        height: 4vw;
        right: 4vw;
    }

    section.item .btn_box a.modal_btn:hover, section.item p.modal_btn.openModal:hover {
        background: #ccc;
        color: #4D4D4D;
    }

    section.item .btn_box a.modal_btn.buy:hover::before {
        background: url(../img/note_icon_bk.png) center no-repeat;
        background-size: contain;
    }

    section.item p.modal_btn.openModal:hover::before {
        border-top: solid 2px #7d7d7d;
        border-right: solid 2px #7c7d7d;
    }

    .modalArea .btn_box a.modal_btn:hover {
        background: #736357;
    }

    .modal_small_image.sp {
        display: flex;
    }

    div#humberger_menu_cont.active {
        right: -1%;
    }

    a.fallow_btn {
        width: 20vw;
        height: 20vw;
        right: 2vw;
        font-size: 3.5vw;
        line-height: 1.3;
        bottom: auto;
        top: 55px;
    }

    a.fallow_btn:hover {
        background: #eeebeb;
        color: #242031;
    }

    #mv_pager {
        right: 30px;
        bottom: 40vw;
    }

    .humberger_menu {
        z-index: 50000;
    }

    section.shop::before {
    height: 106%;
    top: -7vw;
}

    .btn_box a.modal_btn:hover, p.modal_btn.openModal:hover, .gift_box_flame .btn_box a.modal_btn:hover {
    background: #736357;
    color: #fff;
}

div#humberger_menu_cont .sns_box a.facebook img {
    max-height: unset;
}

    
}
