@charset "utf-8";
.mainvisual {
    text-align: center;
}

.mainvisual img {
    max-width: 100% !important;
    width: 100%;
    height: auto;
}


/*--------------------------------------------------------------------*/


/*--------------------------------------------------------------------*/

.market_price {
    padding: 1em;
}

.market_price .head {
    margin-bottom: .5em;
}

.market_price .index {
    white-space: nowrap;
}

.market_price .body {
    overflow: hidden;
    display: inline-flex;
    /* border: 4px solid #EDEDED; */
    border-radius: 6px;
    width: 100%;
    /* max-width: 330px; */
    box-sizing: border-box;
}

.market_price .body .panel {
    /* width: 100%; */
}

.market_price .body .panel .item {
    flex: 1;
    padding: 5px;
    border: 1px solid #666;
    border-radius: 4px 0 0 4px;
    font-weight: bold;
}

.market_price .body .panel .item+.item {
    border-left: 0;
    border-radius: 0 4px 4px 0;
}

.market_price .body .panel .index {
    white-space: nowrap;
    padding-bottom: .5em;
    margin-bottom: .5em;
}

.market_price .body .panel .index:after {
    width: 100%;
    height: 1px;
    background-color: #333;
    bottom: 0;
}

.market_price .body .panel .gold {
    color: #9A854A;
}

.market_price .body .panel .platinum {
    color: #7B7F82;
}

.market_price .body .panel .gold .index:after {
    background: rgb(154, 133, 74);
    background: -moz-linear-gradient(90deg, rgba(154, 133, 74, 0) 0%, rgba(154, 133, 74, 1) 35%, rgba(154, 133, 74, 1) 70%, rgba(154, 133, 74, 0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(154, 133, 74, 0) 0%, rgba(154, 133, 74, 1) 35%, rgba(154, 133, 74, 1) 70%, rgba(154, 133, 74, 0) 100%);
    background: linear-gradient(90deg, rgba(154, 133, 74, 0) 0%, rgba(154, 133, 74, 1) 35%, rgba(154, 133, 74, 1) 70%, rgba(154, 133, 74, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#9a854a", endColorstr="#9a854a", GradientType=1);
}

.market_price .body .panel .platinum .index:after {
    background: rgb(123, 127, 130);
    background: -moz-linear-gradient(90deg, rgba(123, 127, 130, 0) 0%, rgba(123, 127, 130, 1) 35%, rgba(123, 127, 130, 1) 70%, rgba(123, 127, 130, 0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(123, 127, 130, 0) 0%, rgba(123, 127, 130, 1) 35%, rgba(123, 127, 130, 1) 70%, rgba(123, 127, 130, 0) 100%);
    background: linear-gradient(90deg, rgba(123, 127, 130, 0) 0%, rgba(123, 127, 130, 1) 35%, rgba(123, 127, 130, 1) 70%, rgba(123, 127, 130, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#7b7f82", endColorstr="#7b7f82", GradientType=1);
}

.market_price .date {
    color: #939393;
    font-weight: bolder;
    padding: 1em;
}

.market_price .note {
    color: #555;
    text-align: left;
    font-size: 1.1rem;
}

.market_price .note br {
    display: none;
}

@media screen and (min-width: 751px) {
    .market_price {
        padding: 20px;
        background-color: #EDEDED;
    }
    .market_price .body {
        width: 74%;
        max-width: none;
    }
    .market_price .body .panel {
        background-color: #fff;
    }
    .market_price .body .panel .index {
        font-size: 2.2rem;
    }
    .market_price .note br {
        display: block;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

.market_price .body .value {
    padding-left: 1.8em;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: auto 90%;
    text-align: right;
    font-size: 5.2vw;
    display: inline-block;
}

.market_price .body .value .unit {
    font-size: 60%;
}

.market_price .body .gold .value,
.market_price .body .platinum .value {}

.market_price .body .gold .value {
    background-image: url("../img/gold-kaitori/img_gold_price.png");
}

.market_price .body .platinum .value {
    background-image: url("../img/gold-kaitori/img_plutinum_price.png");
}

@media screen and (min-width: 751px) {
    .market_price .body .value {
        font-size: 32px;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.intro {
    font-weight: bolder;
    padding: 6.6vw;
    position: relative;
    background-image: url("../img/gold-kaitori/img_minamino_intro.png");
    background-repeat: no-repeat;
    background-position: right 10% top 10%;
    /* background-size: 45% auto; */
    background-size: 25% auto;
}

section.intro .logo {
    margin-bottom: 2em;
}

section.intro .sub {
    border-bottom: 1px solid #2f2f2f;
    margin-bottom: .3em;
    display: inline-block;
}

section.intro .main {
    display: inline-block;
    padding-bottom: 1.5em;
}

section.intro .main:after {
    width: 100%;
    height: 1px;
    bottom: 0;
    background: rgb(218, 23, 43);
    background: -moz-linear-gradient(90deg, rgba(218, 23, 43, 1) 59%, rgba(218, 23, 43, 0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(218, 23, 43, 1) 59%, rgba(218, 23, 43, 0) 100%);
    background: linear-gradient(90deg, rgba(218, 23, 43, 1) 59%, rgba(218, 23, 43, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#da172b", endColorstr="#da172b", GradientType=1);
}

section.intro .appeal {
    margin: 1em 0 .5em 0;
}

section.intro .en {
    position: absolute;
    right: 5vw;
    top: 22vw;
    transform: rotate(25.5deg);
    transform-origin: left top;
}

section.intro .text {
    padding: 1.5em 0;
    line-height: 2;
    font-weight: normal;
}

section.intro .serif {
    position: relative;
}

section.intro .medal {
    position: absolute;
    right: -3.3vw;
    bottom: 0;
    transform: translateY(40%);
}

section.intro .medal img {
    width: 26.4vw;
}

@media screen and (min-width: 751px) {
    section.intro {
        /* background-size: 346px auto; */
        background-size: 250px auto;
        padding: 50px 40px;
        background-position: right 60px top 10%;
        background-image: url("../img/gold-kaitori/img_minamino_intro_pc.png");
    }
    section.intro .logo {
        margin-bottom: 4em;
    }
    section.intro .sub {
        font-size: 3.2rem;
    }
    section.intro .appeal {
        font-size: 3.2rem;
    }
    section.intro .main {
        font-size: 5.2rem;
        padding-bottom: .5em;
    }
    section.intro .text {
        font-size: 1.6rem;
    }
    section.intro .en {
        right: 5vw;
        top: 150px;
    }
    section.intro .medal {
        right: -10px;
    }
    section.intro .medal img {
        width: auto;
    }
}

@media screen and (max-width: 750px) {
    section.intro .en img {
        width: 25vw;
    }
}


/*--------------------------------------------------------------------*/

section.shop {
    margin-bottom: 3em;
    color: #fff;
    font-weight: bolder;
    background: rgb(230, 71, 120);
    background: -moz-linear-gradient(135deg, rgba(230, 71, 120, 1) 0%, rgba(190, 13, 20, 1) 100%);
    background: -webkit-linear-gradient(135deg, rgba(230, 71, 120, 1) 0%, rgba(190, 13, 20, 1) 100%);
    background: linear-gradient(135deg, rgba(230, 71, 120, 1) 0%, rgba(190, 13, 20, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#e64778", endColorstr="#be0d14", GradientType=1);
}

section.shop .bg {
    background-image: url("../img/gold-kaitori/bg_shops.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

section.shop .container {
    /* background-image: url("../img/gold-kaitori/bg_japan_shops.png"); */
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    padding-bottom: 10vw;
    overflow: hidden;
}

section.shop .en {
    padding: 1em 0;
}

section.shop .en .border {
    width: 25%;
    height: 1px;
    background-color: #fff;
    margin-left: 2em;
}

section.shop .main {
    margin: 1.5em 0 2em 0;
    font-size: 6.13vw;
}

section.shop .links .wrap a {
    box-shadow: 2px 2px 3px rgb(119 10 10 / 40%);
}

@media screen and (min-width: 751px) {
    section.shop .container {
        padding: 68px 46px 78px 46px;
        background-size: auto 110%;
    }
    section.shop .en {
        font-size: 2rem;
    }
    section.shop .main {
        margin: 1em 0 1em 0;
        font-size: 3rem;
    }
    section.shop .links .wrap {
        justify-content: flex-start;
    }
    section.shop .links .wrap a {
        width: 32.8%;
        font-size: 1.8rem;
        margin: 0.26%;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.shop .links {
    position: relative;
    overflow: hidden;
}

section.shop .links .area_list {
    opacity: 1;
    transition: all .3s;
    transition-delay: .2s;
}

section.shop .links.selecting .area_list {
    opacity: 0;
    transition: all .3s;
}

section.shop .links .area_list .ico_arrow:before {
    display: none;
}

section.shop .links .prefs {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateX(100%);
    opacity: 0;
    z-index: 2;
    transition: all .3s;
}

section.shop .links.selecting .prefs {
    transform: translateX(0);
    opacity: 1;
}

section.shop .links.selecting .prefs [data-area-wrap] {
    opacity: 0;
    display: none;
}

section.shop .links .prefs .wrap {
    display: none;
}

section.shop .links .prefs .areaback,
section.shop .links .shops .prefback {
    cursor: pointer;
    transition: all .3s;
    margin-top: 1em;
    display: inline-block;
}

section.shop .links .prefs .areaback:hover,
section.shop .links .shops .prefback:hover {
    opacity: .6;
}

section.shop .links .prefs .areaback .ico_arrow,
section.shop .links .shops .prefback .ico_arrow {
    padding-right: 0;
    padding-left: 1.5em;
}

section.shop .links .prefs .areaback .ico_arrow:before,
section.shop .links .shops .prefback .ico_arrow:before {
    border-color: #fff;
    right: auto;
    left: 0;
    transform: rotate(-135deg);
}


/*--------------------------------------------------------------------*/

section.shop .links a {
    padding: 1em 1.3em;
    background-color: #fff;
    border-radius: .3em;
    color: #333 !important;
    margin-bottom: 5px;
}


/*--------------------------------------------------------------------*/

section.shop .links .shops {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateX(100%);
    opacity: 0;
    z-index: 3;
    transition: all .3s;
}

section.shop .links .shops .wrap {
    display: none;
}

section.shop .links .shops .wrap a {
    font-size: 1.4rem;
    color: #d23e40 !important;
}

section.shop .links .shops .wrap a .ico_arrow {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 2.5em;
}

section.shop .links .shops .wrap a .ico_arrow:before {
    border-color: #d23e40;
}

section.shop .links .shops .noshops {
    padding: 2em 0;
    font-size: 120%;
    width: auto;
}

@media screen and (min-width: 751px) {}

@media screen and (max-width: 750px) {
    section.shop .links .shops .wrap a {
        font-size: 3vw;
    }
}


/*--------------------------------------------------------------------*/

section.shop .links.selecting.selecting_shop .shops {
    transform: translateX(0);
    opacity: 1;
}

section.shop .links.selecting .prefs {
    transition: all .3s;
    transition-delay: 0;
}

section.shop .links.selecting.selecting_shop .prefs {}

section.shop .links.selecting.selecting_shop .prefs {
    opacity: 0;
}

section.shop .links.selecting.selecting_shop .prefs {}


/*--------------------------------------------------------------------*/

section.price .body .table {}

section.price .body .table table {
    width: 100%;
    border-collapse: separate;
}

section.price .body .table table thead tr td {
    padding-bottom: 1.2em;
}

section.price .body .table table thead tr td .index {
    border: 1px solid #D01427;
    border-right-width: 0px;
    margin: -1px;
    padding: .6em 0;
}

section.price .body .table table thead tr td:first-of-type .index {
    border-radius: .3em 0 0 0;
}

section.price .body .table table thead tr td:last-of-type .index {
    border-radius: 0 .3em 0 0;
    border-right-width: 1px;
}

section.price .body .table .note {
    font-size: 1.1rem;
    color: #555;
    margin-top: 15px;
}

section.price .body .table .note br {
    display: none;
}

@media screen and (min-width: 751px) {
    section.price {
        margin: 60px 0 100px 0;
    }
    section.price .body .table table {
        width: 56%;
        margin: 0 auto;
    }
    section.price .body .table table .fs_12 {
        font-size: 1.7rem;
    }
    section.price .body .table table thead tr td .index {
        padding: .6em 1em;
    }
    section.price .body .table .note {
        width: 56%;
        margin: 15px auto 0;
        text-align: left;
    }
    section.price .body .table .note br {
        display: block;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.price .body .table table tbody td {
    border: 1px solid #c4c4c4;
    border-right-width: 0px;
    border-bottom-width: 0px;
    padding: .5em;
}

section.price .body .table table tbody tr td:last-of-type {
    border-right-width: 1px;
}

section.price .body .table table tbody tr td:first-of-type {
    background-color: #F4F4F4;
}

section.price .body .table table tbody tr:last-of-type td {
    border-bottom-width: 1px;
}

section.price .body .table table tbody .name {}

section.price .body .table table tbody .name a {
    text-decoration: underline;
    color: #007DFF;
    text-align: left;
    padding: 0 .5em;
    white-space: nowrap;
}

section.price .body .table table tbody .value {
    font-weight: bold;
    min-width: 33vw;
}

section.price .body .table table tbody .comparison {
    white-space: nowrap;
    padding: 0 1em;
}

section.price .body .table table .spacer td {
    min-height: 1em;
    background-color: transparent !important;
    border: 0 !important;
    border-top: 1px solid #c4c4c4 !important;
}

@media screen and (max-width: 700px) {
    section.price .body .table table tbody tr td .index {
        font-size: 3vw;
    }
    section.price .body .table table tbody tr td .index.value {
        font-size: 4vw;
    }
}

@media screen and (min-width: 751px) {
    section.price .body .table table tbody .name {
        font-size: 1.6rem;
    }
    section.price .body .table table tbody .value {
        min-width: 0;
        font-size: 2.1rem;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.expensive {}

section.expensive .intro {
    margin-bottom: 2em;
}

section.expensive .body .item {
    margin-bottom: 1.2em;
}

section.expensive .body .item:last-of-type {
    /* margin-bottom: 0; */
}

section.expensive .body .box {
    border: 1px solid #b9b9b9;
    background-color: #fafafa;
    padding: 5.6vw;
    border-radius: 4px;
}

section.expensive .body .box .comparison {
    margin-top: 1em;
    position: relative;
}

section.expensive .body .box .comparison table {
    border-collapse: separate;
    border-spacing: 3px;
}

section.expensive .body .box .comparison th {
    padding: .2em .5em;
    background-color: #797979;
    color: #fff;
}

section.expensive .body .box .comparison td {
    color: #565656;
    padding: .2em;
}

section.expensive .body .box .comparison .the_jewel_cafe {
    white-space: nowrap;
    left: 0;
    bottom: 0;
    position: absolute;
    min-width: 72%;
}

section.expensive .body .box .comparison .others {
    font-size: 3.46vw;
}

section.expensive .body .box .comparison .the_jewel_cafe .logo {
    width: 90px;
    margin-bottom: 3px;
}

section.expensive .body .box .comparison .the_jewel_cafe .the_price {
    background-color: #D01427;
    color: #fff;
    padding: .3em 1em;
    box-sizing: border-box;
}

section.expensive .body .box .comparison .the_jewel_cafe .the_price .avhieved {
    line-height: 1.2;
}

section.expensive .body .box .comparison .the_jewel_cafe .the_price .the_value {
    padding-left: 1em;
    font-style: italic;
}

section.expensive .body .box .comparison .image {
    max-width: 55%;
}

@media screen and (min-width: 751px) {
    section.expensive .intro {
        font-size: 1.6rem;
        width: 650px;
        margin: 0 auto 2em auto;
    }
    section.expensive .body .lists {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        flex-wrap: wrap;
    }
    section.expensive .body .item {
        /* height: 100%; */
        display: flex;
        width: 48%;
        margin: 1%;
        align-self: stretch;
    }
    section.expensive .body .box {
        padding: 30px;
    }
    section.expensive .body .box .index {
        font-size: 2.4rem;
    }
    section.expensive .body .box .message {
        font-size: 1.3rem;
        padding: .5em 0;
    }
    section.expensive .body .box .comparison .others {
        font-size: 1.4rem;
    }
    section.expensive .body .box .comparison .image {
        max-width: none;
        width: 175px;
    }
    section.expensive .body .box .comparison .image img {
        width: 100%;
    }
    section.expensive .body .box .comparison .the_jewel_cafe .logo {
        width: 106px;
    }
    section.expensive .body .box .comparison .the_jewel_cafe .logo img {
        width: 100%;
    }
    section.expensive .body .box .comparison .the_jewel_cafe .the_price .the_value {
        font-size: 2.45rem;
    }
    section.expensive .body .box .comparison .the_jewel_cafe .the_price .achieved .mini {
        font-size: 1rem;
    }
    section.expensive .body .box .comparison .the_jewel_cafe .the_price .achieved .big {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.results {
    margin-bottom: 10vw;
}

section.results .intro {
    margin-bottom: 2em;
}

section.results .achieves .item {
    box-shadow: 0 0 3px rgba(0, 0, 0, .1);
    padding: .8em;
    border-radius: .5em;
    position: relative;
    margin: 3px;
}

section.results .achieves .item .label {
    position: absolute;
    top: -3px;
    right: 3px;
}

section.results .achieves .item .label img {
    width: 30px;
}

section.results .achieves .item .upper {
    padding-bottom: .5em;
    margin-bottom: .5em;
}

section.results .achieves .item .upper:after {
    height: 1px;
    width: 100%;
    bottom: 0;
    background: rgb(0, 0, 0);
    background: -moz-linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 20%, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
}

section.results .achieves .item .image img {
    max-width: 100%;
}

section.results .slick-dots li {
    margin: 0;
}

section.results .slick-dots li.slick-active button:before {
    color: #D01427;
}

@media screen and (min-width: 751px) {
    section.results {
        margin-bottom: 50px;
    }
    section.results .intro {
        font-size: 1.6rem;
        width: 650px;
        margin: 0 auto 2em auto;
    }
    section.results .achieves .item .upper .price {
        font-size: 2.2rem;
    }
    section.results .achieves .item {
        padding: 30px 22px;
        margin: 5px;
    }
    section.results .achieves .item .label img {
        width: 52px;
    }
    section.results .achieves .item .image {
        margin-bottom: 1em;
    }
    section.results .achieves .item .image img {
        margin: 0 auto;
    }
    section.results .achieves .item .upper .comment {
        font-size: 1.4rem;
        padding: .6em 0;
    }
}

@media screen and (max-width: 750px) {
    section.results .achieves .item .upper .price {
        font-size: 3.5vw;
        padding: .4em 0;
    }
    section.results .slick-list {
        width: 100%;
    }
}


/*--------------------------------------------------------------------*/

section.kinds {}

section.kinds .item {
    border: 1px solid #BEBEBE;
    border-radius: 3px;
    padding: .8em;
    align-self: stretch;
    margin-bottom: 4%;
}

section.kinds .item .label {
    background-color: #D01427;
    color: #fff;
    padding: .8em;
    border-radius: .2em;
    margin-bottom: 1.5em;
    font-size: 3vw;
}

section.kinds .item .label .ico_arrow:before {
    border-color: #fff;
}

@media screen and (min-width: 751px) {
    section.kinds .body {
        margin-bottom: 80px;
    }
    section.kinds .body .wrap {
        justify-content: flex-start;
        align-items: stretch;
    }
    section.kinds .item {
        width: 23%;
        margin: 1%;
    }
    section.kinds .item .label {
        font-size: 1.3rem;
    }
    section.kinds .item .image img {
        width: 100%;
        /* max-height: 105px; */
    }
}

@media screen and (max-width: 750px) {
    section.kinds .body {}
}


/*--------------------------------------------------------------------*/

section.policy {
    background-color: #FFF4F5;
    background-image: url("../img/bg_breadcrumbs.png");
    background-repeat: repeat-x;
    background-position: center top;
    background-size: auto 16px;
    padding-top: 30px;
}

section.policy .bg {
    background-image: url("../img/gold-kaitori/img_policy_minamino.png");
    background-repeat: no-repeat;
    background-position: left top 20px;
    background-size: 30vw auto;
}

section.policy .container {
    padding-left: 22vw;
}

section.policy .head {
    margin-bottom: 15vw;
}

@media screen and (min-width: 751px) {
    section.policy {
        background-image: url("../img/gold-kaitori/bg_policy_main.png");
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 100%;
        padding-right: 30px;
        padding-left: 30px;
        padding-bottom: 50px;
        padding-top: 50px;
    }
    section.policy .head {
        justify-content: flex-start;
        margin-bottom: 100px;
    }
    section.policy .head .container {
        padding-left: 260px;
        padding-top: 30px;
    }
    section.policy .head .index .sub {
        font-size: 2.8rem;
    }
    section.policy .head .index .main {
        font-size: 4.6rem;
    }
    section.policy .bg {
        background-image: url("../img/gold-kaitori/img_policy_minamino.png");
        background-repeat: no-repeat;
        background-position: left top 20px;
        background-size: auto;
    }
    section.policy .head .container .image {
        margin-top: 1em;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.policy .policies .item {
    position: relative;
    margin-bottom: 17vw;
}

section.policy .policies .item .image {
    width: 50%;
}

section.policy .policies .item .panel {
    width: 50%;
}

section.policy .policies .item .panel .float {
    width: 110%;
    height: 110%;
    flex-direction: column;
    background-color: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, .1);
    padding: 1em;
    box-sizing: border-box;
    position: relative;
    top: -10vw;
    margin-left: -10%;
}

section.policy .policies .item .panel {
    width: 50%;
    position: relative;
    z-index: 2;
}

section.policy .policies .item .panel .number {
    display: inline-flex;
    border: 1px solid #DA172B;
    flex-direction: column;
    justify-content: center;
    width: 44px;
    align-items: center;
    padding: .5em;
    box-sizing: border-box;
    margin-bottom: 1em;
    box-shadow: 0 0 3px rgba(0, 0, 0, .1);
}

section.policy .policies .item .panel .number .sub {
    line-height: 1.2;
}

section.policy .policies .item .panel .number .value {
    line-height: 1;
}

section.policy .policies .item .panel .title {
    margin-bottom: .5em;
    font-size: 4vw;
}

section.policy .policies .item .dots {
    position: absolute;
    right: -6.6vw;
    bottom: 0;
}

@media screen and (min-width: 751px) {
    section.policy .policies .item {
        margin-bottom: 25px;
    }
    section.policy .policies .item .panel .title {
        font-size: 2rem;
    }
    section.policy .policies .item .panel .float {
        width: 100%;
        height: 100%;
        position: static;
        margin-left: 0;
        padding: 4em;
    }
    section.policy .policies .item .panel .number {
        width: 86px;
        height: 84px;
        box-shadow: 0 0 5px rgba(0, 0, 0, .3);
        margin-bottom: 3em;
    }
    section.policy .policies .item .panel .number .value {
        font-size: 3.2rem;
    }
    section.policy .policies .item .panel .text {
        font-size: 1.6rem;
    }
    section.policy .policies .item .dots {
        right: -15px;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.policy .policies .item:nth-of-type(even) {
    flex-direction: row-reverse;
}

section.policy .policies .item:nth-of-type(even) .panel .float {
    margin-left: 0;
    margin-right: -10%;
}

section.policy .policies .item:nth-of-type(even) .dots {
    right: 0;
    left: -6.6vw;
}

section.policy .policies .item:last-of-type {
    margin-bottom: 5vw;
}

@media screen and (min-width: 751px) {
    section.policy .policies .item:nth-of-type(even) .panel .float {
        margin-right: 0;
    }
    section.policy .policies .item:nth-of-type(even) .dots {
        right: 0;
        left: -15px;
    }
    section.policy .policies .item:last-of-type {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.voice {
    margin-top: 0;
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    margin-bottom: 0;
}

section.voice .body {}


/*--------------------------------------------------------------------*/

section.voice .body .each {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1.5em;
    margin-bottom: 1.5em;
}

section.voice .body .each .customer {
    padding-bottom: 1.5em;
}

section.voice .body .each .customer .top {
    margin-bottom: 1em;
}

section.voice .body .each .customer .top .ico img {
    width: 35px;
}

@media screen and (min-width: 751px) {
    section.voice .body .each {
        padding-bottom: 3.5em;
        margin-bottom: 3.5em;
    }
    section.voice .body .each .customer {
        padding-bottom: 3em;
    }
    section.voice .body .each .customer .top {
        margin-bottom: 2em;
    }
    section.voice .body .each .customer .top .title {
        font-size: 2.4rem;
    }
    section.voice .body .each .customer .top .ico img {
        width: 70px;
    }
    section.voice .body .each .text {
        font-size: 1.6rem;
        line-height: 2;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.voice .body .each .staff {}

section.voice .body .each .staff .top {
    margin-bottom: 1em;
}

section.voice .body .each .staff .top .image {
    margin-right: 1.5em;
    box-shadow: 0 0 4px rgba(0, 0, 0, .2);
}

section.voice .body .each .staff .top .image img {
    width: 94px;
}

@media screen and (min-width: 751px) {
    section.voice .body .each .staff .top {
        margin-bottom: 2em;
        justify-content: flex-start;
    }
    section.voice .body .each .staff .top .title {
        font-size: 2.4rem;
        padding-right: 2em;
    }
    section.voice .body .each .staff .top .image {
        margin-right: 3em;
    }
    section.voice .body .each .staff .top .image img {
        width: 150px;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.ways {}

section.ways .body {}

section.ways .body .index {
    padding: 1.5em;
    border: 1px solid #c2c2c2;
    font-weight: bold;
    margin-bottom: 1.5em;
}

section.ways .body .text {
    line-height: 1.7;
}

section.ways .body .text p {
    margin-bottom: 2em;
}

section.ways .body .text b {
    background: -webkit-linear-gradient(transparent 75%, #FFDEE0 25%);
    background: -o-linear-gradient(transparent 75%, #FFDEE0 25%);
    background: linear-gradient(transparent 75%, #FFDEE0 25%);
    font-weight: normal;
    padding-bottom: .05em;
}

@media screen and (min-width: 751px) {
    section.ways .body .index {
        font-size: 2rem;
    }
    section.ways .body .text {
        font-size: 1.8rem;
    }
    section.ways .body {
        margin-bottom: 2em;
    }
    section.ways .img {
        padding: 2em 0;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.columns .body {}

section.columns .body .item {
    border-top: 1px solid #ccc;
    padding: 1em 1em;
}

section.columns .body .item .info {
    margin-right: 1em;
}

section.columns .body .item .info .the_title {
    padding-bottom: .1em;
    line-height: 1.5;
    color: #333;
    margin-bottom: .3em;
}

section.columns .body .item .info .the_excerpt {
    color: #5b5b5b;
    line-height: 1.5;
    height: 5em;
    overflow: hidden;
}

section.columns .body .item .image img {
    width: 32vw;
}

@media screen and (min-width: 751px) {
    section.columns .body .item {
        padding: 1.5em 0;
    }
    section.columns .body .item .info .the_title {
        font-size: 2rem;
    }
    section.columns .body .item .info .the_excerpt {
        font-size: 1.6rem;
    }
    section.columns .body .item .image img {
        width: auto;
        max-width: 270px;
    }
}

@media screen and (max-width: 750px) {
    section.columns .body .item .wrap {
        align-items: stretch;
    }
    section.columns .body .item .info {
        flex: 6;
    }
    section.columns .body .item .image {
        flex: 4;
        position: relative;
        overflow: hidden;
    }
    section.columns .body .item .image img {
        flex: 4;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 100%;
        width: auto;
        max-width: none;
    }
}


/*--------------------------------------------------------------------*/

section.faq {}

section.faq .body {}

section.faq .body .each:first-of-type {
    border-top: 1px solid #ccc;
    padding-top: 3em;
}

section.faq .body .each {
    margin-bottom: 2em;
}

section.faq .body .each:last-of-type {
    margin-bottom: 0;
}

section.faq .body .each .ico {
    min-width: 1.6em;
}

section.faq .body .each .q {
    margin-bottom: 1.5em;
}

section.faq .body .each a {
    color: #0078ff !important;
    display: inline;
}

@media screen and (min-width: 751px) {
    section.faq {
        margin-bottom: 100px;
    }
    section.faq .body .each {
        margin-bottom: 4em;
    }
    section.faq .body .each:first-of-type {
        padding-top: 65px;
    }
    section.faq .body .each .ico {
        font-size: 2.5rem;
        line-height: 1;
    }
    section.faq .body .each .value {
        font-size: 2rem;
    }
    section.faq .body .each dt {
        margin-bottom: 2.5em;
    }
    section.faq .body .each dd .value {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.greet {}

section.greet .container {
    margin-bottom: 2em;
}

section.greet .container:last-of-type {
    margin-bottom: 0;
}

section.greet .head {
    padding: .5em 1em;
    margin-bottom: 2em;
}

section.greet .fw_700 {
    font-weight: 700 !important;
}

section.greet .label_red {
    background-color: #DA172B;
    color: #fff;
}

section.greet .label_gray {
    background-color: #EEE;
    color: #2A2A2A;
}

section.greet .body p {
    margin-bottom: 2em;
}

section.greet .body h3 {
    margin-bottom: 1em;
}

@media screen and (min-width: 751px) {
    section.greet {
        margin-bottom: 4em;
    }
    section.greet .container {
        margin-bottom: 4em;
    }
    section.greet .body .fs_14 {
        font-size: 2rem;
    }
    section.greet .head.fs_14 {
        font-size: 2.4rem;
    }
    section.greet .fs_12 {
        font-size: 1.6rem;
    }
    section.greet .body img {
        max-width: 100%;
    }
    section.greet .body p {
        margin-bottom: 2em;
        line-height: 1.75;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.ranking {}

section.ranking .head {
    border-top: 5px solid #DA172B;
    background-color: #EEE;
    padding: .8em;
    margin-bottom: 2em;
}

section.ranking .head .en {
    line-height: 1;
}

section.ranking .head .en img {
    height: .5em;
}

@media screen and (min-width: 751px) {
    section.ranking .head {
        border-top: 10px solid #DA172B;
    }
    section.ranking .head .main {
        font-size: 3rem;
    }
    section.ranking .head .en {
        padding: .5em 0;
    }
    section.ranking .head .en img {
        height: 1em;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.ranking .body {}

section.ranking .body .item {
    box-shadow: 0 0 5px rgba(0, 0, 0, .2);
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 1em;
}

section.ranking .body .item .title {
    background-color: #4C4C4C;
    color: #fff;
    padding: .25em 1em;
}

section.ranking .body .item .title .medal {
    padding-top: .5em;
    margin-right: 1em;
}

section.ranking .body .item .text {
    padding: 2em;
}

@media screen and (min-width: 751px) {
    section.ranking .body .item {
        box-shadow: 0 0 10px rgba(0, 0, 0, .2);
        margin-bottom: 2em;
    }
    section.ranking .body .item .title {
        padding: .6em 1em;
    }
    section.ranking .body .item .title .value {
        font-size: 2.4rem;
    }
    section.ranking .body .item .title .medal {
        margin-right: 2em;
    }
    section.ranking .body .item .title .medal img {}
    section.ranking .body .item .lower {
        padding: 1.5em;
        display: flex;
        align-items: center;
    }
    section.ranking .body .item .lower .image {
        min-width: 356px;
        margin-right: 1em;
    }
    section.ranking .body .item .lower .image img {
        width: 100%;
    }
    section.ranking .body .item .lower .text {
        font-size: 1.6rem;
        padding: 1em;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.banner {}

@media screen and (min-width: 751px) {
    section.banner {
        margin: 3em 0;
        padding: 0;
    }
}

@media screen and (max-width: 750px) {}


/*--------------------------------------------------------------------*/

section.trivia {}

section.trivia .container {
    border: 10px solid #EDEDED;
    padding: 1em;
}

section.trivia .head {
    background-color: #DA172B;
    color: #fff;
    padding: .7em 1em;
    margin-bottom: 1em;
}

section.trivia .body .info {
    margin-bottom: 1em;
}

section.trivia .body .info .the_title {
    padding-right: 1em;
}

section.trivia .body .info .the_title .value {
    display: inline-block;
    border-bottom: 1px solid #DA172B;
    padding-bottom: .3em;
}

section.trivia .body .info .thumbnail {
    width: 50%;
}

section.trivia .body .text {
    padding: .5em;
}

@media screen and (min-width: 751px) {
    section.trivia .container {
        padding: 40px;
    }
    section.trivia .head {
        font-size: 2.4rem;
    }
    section.trivia .body .info {
        justify-content: space-between;
        border: 1px solid #dadada;
        padding: 5px;
        background-color: #f9f9f9;
    }
    section.trivia .body .info .the_title {
        flex: 1;
        text-align: center;
    }
    section.trivia .body .info .the_title .value {
        font-size: 2rem;
    }
    section.trivia .body .info .thumbnail {
        width: auto;
    }
    section.trivia .body .text {
        font-size: 1.6rem;
        line-height: 1.75;
    }
}

@media screen and (max-width: 750px) {}

span.tag01 {
    background: url("../../img/top/tag01.png") no-repeat;
    width: 40px;
    height: 52px;
    line-height: 16px;
    /* padding: 10px 12px 6px 4px; */
    color: #fff;
    display: block;
    font-size: 0.7em;
    float: left;
    /* margin-right: 5px; */
    /* margin-bottom: 8px; */
    text-align: center;
}

span.tag02 {
    background: url("../../img/top/tag02.png") no-repeat;
    width: 40px;
    height: 52px;
    line-height: 16px;
    /* padding: 10px 12px 6px 4px; */
    color: #fff;
    display: block;
    font-size: 0.7em;
    float: left;
    /* margin-right: 5px;
    margin-bottom: 8px; */
    text-align: center;
}

.others th,
.others td {
    font-size: 12px;
}


/* section.expensive .body .box .comparison .image {
    width: 500px !important;
} */

p.note {
    font-size: 10px;
    text-align: left;
}


/* section.expensive .box {
    height: 330px;
} */

.item .medal img {
    width: 50px;
}

h2.ttl_bottom {
    padding: 5px;
}

@media screen and (min-width: 751px) {
    section.policy .bg {
        background-size: 250px !important;
    }
    section.intro {
        background-position: right 60px top 20% !important;
    }
    section.intro .medal {
        top: 0;
    }
    section.expensive .body .box .message {
        padding: 0 !important;
    }
    section.expensive .body .box {
        /* display: flex; */
        flex-direction: column;
        justify-content: space-between;
        width: 100%;
    }
}

@media (max-width: 750px) {
    section.expensive .box {
        height: auto !important;
    }
    .others.fs_13 table {
        width: auto !important;
    }
}


/*purchase list blog for category page*/

.blog-archive-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
}

ol,
ul {
    list-style: none;
}

.blog-archive-list li {
    border-radius: 4px;
    box-shadow: 0 0 0.5rem rgb(0 0 0 / 10%);
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: 2%;
    width: calc(100%/4 - 10px);
}

.blog-archive-list li a {
    line-height: inherit!important;
}

.blog-archive-list li .blog-catch-img {
    position: relative;
}

.blog-archive-list li .blog-catch-img img {
    -o-object-fit: cover;
    border-radius: 4px 4px 0 0;
    height: 100px;
    object-fit: cover;
    width: 100%;
}

.blog-archive-list li .blog-catch-img .blog-archive-date {
    background: #de1122;
    border-radius: 0 4px 0 0;
    bottom: 0;
    color: #fff;
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    left: 0;
    padding: 4px;
    position: absolute;
}

.p-12 {
    padding: 12px !important;
}

.blog-archive-list li .blog-archive-category {
    color: #de1122;
    font-size: 12px;
}

.blog-archive-list li .blog-archive-ttl {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #323232;
    display: -webkit-box;
    font-size: 12px;
    font-weight: 700;
    overflow: hidden;
}

.blog-archive-list li .blog-archive-shop {
    color: #323232;
    font-size: 10px;
}

.blog-archive-linkWrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 15px;
}

.blog-archive-link {
    color: #fff!important;
    font-size: 16px;
    font-weight: 700;
    background: #de1122;
    display: inline-block;
    margin: 0 auto;
    padding: 10px 82px;
    border-radius: 50px;
    position: relative;
}

.blog-archive-link:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 24px;
    width: 12px;
    height: 12px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    -webkit-transform: translateY(-50%) rotate( -45deg);
    -ms-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate( -45deg);
}

@media screen and (max-width: 750px) {
    .blog-archive-list {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -5px;
    }
    ol,
    ul {
        list-style: none;
    }
    .section-inner {
        margin: 0 auto;
        width: 90vw;
    }
    .breadcrumbs {
        margin: 0 auto 24px;
        padding: 13px 0 26px;
        font-size: 14px;
        background-image: url(../img/bg_breadcrumbs.png);
        background-repeat: repeat-x;
        background-position: left bottom;
        background-size: auto 13px;
        width: 90vw;
    }
    .breadcrumbs .wrap {
        padding: 0;
    }
    .section-title {
        margin: 12px 0 20px;
        color: #323232;
        font-size: 20px;
        font-weight: bold!important;
        letter-spacing: 1px;
    }
    .blog-archive-list li {
        width: calc(100%/2 - 10px);
        margin-bottom: 4%;
        margin-right: 5px;
        margin-left: 5px;
        -webkit-box-shadow: 0 0 0.5rem rgb(0 0 0 / 10%);
        box-shadow: 0 0 0.5rem rgb(0 0 0 / 10%);
        border-radius: 4px;
    }
    .blog-archive-list li a {
        line-height: inherit!important;
    }
    .blog-archive-list li .blog-catch-img {
        position: relative;
    }
    .blog-archive-list li .blog-catch-img img {
        -o-object-fit: cover;
        border-radius: 4px 4px 0 0;
        height: 100px;
        object-fit: cover;
        width: 100%;
    }
    .blog-archive-list li .blog-catch-img .blog-archive-date {
        background: #de1122;
        border-radius: 0 4px 0 0;
        bottom: 0;
        color: #fff;
        display: inline-block;
        font-size: 10px;
        font-weight: 700;
        left: 0;
        padding: 4px;
        position: absolute;
    }
    .p-12 {
        padding: 12px !important;
    }
    .blog-archive-list li .blog-archive-category {
        color: #de1122;
        font-size: 12px;
    }
    .blog-archive-list li .blog-archive-ttl {
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        color: #323232;
        display: -webkit-box;
        font-size: 12px;
        font-weight: 700;
        overflow: hidden;
    }
    .blog-archive-list li .blog-archive-shop {
        color: #323232;
        font-size: 10px;
        margin-top: 4px;
    }
}

.section-inner {
    width: 1000px;
    margin: 0 auto;
}

@media screen and (max-width: 960px) {
    .section-inner {
        width: 90vw;
    }
}

@media screen and (max-width: 750px) {
    /* .section-inner {
        width: auto;
    } */
    section.columns .body {
        width: 90vw;
        margin: 0 auto;
    }
}

@media screen and (min-width: 1000px) and (max-width: 1200px) {
    .section-inner {
        padding: 0 20px;
    }
}


/* new footer from main.css */

footer {
    margin-top: 60px;
}

footer .section-inner {
    padding: 14px 0 27px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner {
        padding: 60px 0 30px;
    }
}

footer .section-inner .footer-txt {
    font-size: 8px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-txt {
        font-size: 14px;
    }
}

footer .section-inner img.footer-logo {
    width: 199px;
    margin-top: 4px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner img.footer-logo {
        width: 334px;
    }
}

footer .section-inner ul.footer-nav {
    width: auto;
    margin: 20px 0 8px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner ul.footer-nav {
        max-width: none;
        margin: 37px 0 27px;
    }
}

footer .section-inner ul.footer-nav li {
    display: inline-block;
    margin: 8px 0 0;
    padding: 0 8px;
    line-height: 1;
    border-right: 1px solid #323232;
}

footer .section-inner ul.footer-nav li:first-of-type {
    border-left: 1px solid #323232;
}

@media screen and (min-width: 0px) and (max-width: 320px) {
    footer .section-inner ul.footer-nav li {
        padding: 0 4px;
    }
}

@media screen and (min-width: 1000px) {
    footer .section-inner ul.footer-nav li {
        margin: 16px 0 0;
        padding: 0 16px;
    }
    footer .section-inner ul.footer-nav li:first-of-type {
        border-left: 1px solid #323232;
    }
}

footer .section-inner ul.footer-nav li a {
    font-size: 12px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner ul.footer-nav li a {
        font-size: 14px;
    }
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-recruit {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

footer .section-inner .footer-recruit a {
    display: inline-block;
    font-size: 14px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-recruit a+a {
        margin-left: 20px;
    }
}

@media screen and (max-width: 500px) {
    footer .section-inner .footer-recruit a+a {
        margin-top: 4px;
    }
}

footer .section-inner .footer-recruit .recruit-office:before {
    width: 9px;
    padding: 0 12px 0 5px;
    vertical-align: sub;
    content: url("../../assets/images/icon/recruit-office-icon.svg");
}

footer .section-inner .footer-recruit .recruit-shop:before {
    width: 19px;
    padding-right: 8px;
    vertical-align: sub;
    content: url("../../assets/images/icon/recruit-shop-icon.svg");
}

footer .section-inner .footer-shop ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop ul {
        margin-top: 24px;
    }
}

footer .section-inner .footer-shop ul li {
    width: 48%;
    margin: 0 4px 4px 0;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop ul li {
        width: 23%;
        margin: 0 12px 20px 0;
    }
}

footer .section-inner .footer-shop p {
    font-size: 14px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop p {
        font-size: 1rem;
    }
}

footer .section-inner .footer-shop hr {
    margin: 8px 0 12px;
    color: #323232;
}

footer .section-inner .footer-shop-ja {
    margin-top: 30px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-ja {
        margin-top: 100px;
    }
}

footer .section-inner .footer-shop-ja .shop-ja-area {
    font-weight: bold;
}

footer .section-inner .footer-shop-ja .shop-ja-area p {
    width: 140px;
    color: #8F8F8F;
    font-size: 14px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-ja .shop-ja-area p {
        color: #323232;
    }
}

footer .section-inner .footer-shop-ja .shop-ja-area .shop-ja-area-box {
    margin-bottom: 12px;
}

footer .section-inner .footer-shop-ja .shop-ja-area .shop-ja-area-box .footer-shop-list {
    margin-top: 4px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-ja .shop-ja-area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    footer .section-inner .footer-shop-ja .shop-ja-area .shop-ja-area-box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-bottom: 12px;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }
    footer .section-inner .footer-shop-ja .shop-ja-area .shop-ja-area-box .footer-shop-list {
        width: 70%;
        margin-top: 0;
    }
}

footer .section-inner .footer-shop-ja .shop-ja-area a {
    position: relative;
    padding-right: 20px;
    color: #323232;
    font-size: 14px;
}

footer .section-inner .footer-shop-ja .shop-ja-area a:after {
    position: absolute;
    display: inline-block;
    top: 50%;
    bottom: 0;
    right: 8px;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    border-top: solid 2px #323232;
    border-right: solid 2px #323232;
}

footer .section-inner .footer-shop-ja ul li {
    display: inline-block;
    margin-bottom: 4px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-ja ul li {
        margin: 0 8px 8px 0;
    }
}

footer .section-inner .footer-shop-os {
    margin-top: 22px;
}

@media screen and (max-width: 500px) {
    footer .section-inner .footer-shop-os ul {
        display: block;
    }
}

footer .section-inner .footer-shop-os ul li {
    width: auto;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-os ul li {
        width: 24%;
    }
}

@media screen and (max-width: 500px) {
    footer .section-inner .footer-shop-os ul li a.red-bdr-btn {
        display: inline-block;
        padding: 15px 24px 15px 12px;
    }
}

@media screen and (min-width: 1000px) {
    footer .section-inner .footer-shop-os {
        margin-top: 39px;
    }
}

footer .section-inner .copyright {
    margin-top: 27px;
}

@media screen and (min-width: 1000px) {
    footer .section-inner .copyright {
        margin-top: 39px;
    }
}

@media screen and (max-width: 500px) {
    footer .base-btn {
        padding: 12px 0;
        min-width: 137px;
        font-size: 12px;
    }
}

@media screen and (min-width: 501px) and (max-width: 960px) {
    footer .only-pc {
        display: block !important;
    }
    footer .only-sp {
        display: none !important;
    }
}

.footer-shop-nav {
    position: fixed;
    z-index: 1;
    bottom: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media screen and (min-width: 501px) {
    .footer-shop-nav {
        display: none;
    }
}

.footer-shop-nav .footer-shop-nav-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0 -4px 0 -2px;
}

.footer-shop-nav .footer-shop-nav-menuWrapper {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.footer-shop-nav .footer-shop-nav-menu li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #DE1122;
    background: #fff;
    border-radius: 2px 2px 0 0;
    padding: 0;
    z-index: 1;
    -webkit-box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.2);
    width: calc(100% / 3 - 4px);
    margin: 0 2px;
}

.footer-shop-nav .footer-shop-nav-menu li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 10px 0;
    white-space: nowrap;
    line-height: 2;
    letter-spacing: 0.15em;
    font-size: 1.25rem;
    font-weight: bold;
    color: #DE1122;
}

.footer-shop-nav .footer-shop-nav-menu li a .js-svg {
    height: 1rem;
    margin-right: 4px;
    margin-top: 2px;
}

.footer-shop-nav .footer-shop-nav-menu li a .js-svg path {
    fill: #DE1122;
}

.footer-shop-nav .footer-shop-nav-menu li a span {
    font-size: 12.5px;
}

.footer-shop-nav .footer-shop-nav-menu .footer-shop-nav-menu-tel {
    background: #DE1122;
}

.footer-shop-nav .footer-shop-nav-menu .footer-shop-nav-menu-tel a {
    color: #fff;
}

.footer-shop-nav .footer-shop-nav-menu .footer-shop-nav-menu-tel a .js-svg {
    height: 1rem;
    margin-right: 4px;
    margin-top: 3px;
}

.footer-shop-nav .footer-shop-nav-menu .footer-shop-nav-menu-tel a .js-svg path {
    fill: #fff;
}

.color-red {
    color: #DE1122 !important;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

.red-bdr-btn {
    position: relative;
    display: block;
    padding: 15px 0 15px 12px;
    color: #323232;
    font-size: 14px;
    font-weight: bold;
    border: 2px solid #DE1122;
    border-radius: 4px;
    background: #fff;
}

.ptb-12 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

.bg-pink {
    background: #FEF8f8;
}

.breadcrumbs .section-inner {
    padding-top: 0;
}