@charset "UTF-8";

html, body, div, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
    border: 0;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    text-decoration: none;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    box-sizing: border-box
}

body {
    font-family: Noto Sans Japanese, "ＭＳ Ｐゴシック", MS PGothic, Arial, Helvetica, Helvetica Neue, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased
}

img {
    text-decoration: none;
    vertical-align: top;
    font-size: 0
}

article, aside, main, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
    box-sizing: border-box
}

ol, ul {
    list-style: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

a {
    box-sizing: border-box;
    outline: none
}

p {
    color: #333;
    line-height: 1.7
}

.l-container {
    box-sizing: border-box;
    display: block;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    width: 100%
}

.l-container--small {
    max-width: 1000px
}

.l-container__inner {
    box-sizing: border-box;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 962px
}

.ec-cartRole {
    padding-left: 0;
    padding-right: 0
}

.ec-totalBox {
    font-size: 16px
}

.ec-totalBox .ec-totalBox__spec {
    font-size: inherit
}

.ec-totalBox .ec-totalBox__spec dt, .ec-totalBox .ec-totalBox__spec dd {
    font-size: inherit
}

.ec-totalBox .ec-totalBox__pointBlock {
    background-color: transparent;
    padding: 0;
    font-size: 16px
}

.ec-totalBox .ec-totalBox__pointBlock .ec-totalBox__spec dd {
    font-size: 14px
}

.ec-modal .ec-modal-overlay {
    transition: opacity 300ms ease;
    position: absolute
}

.ec-modal input:checked~.ec-modal-overlay {
    position: fixed
}

.ec-headerNav .ec-headerNav__item+.ec-headerNav__item {
    margin-left: 40px
}

.ec-headerNav .ec-headerNav__item a {
    display: flex;
    flex-direction: column;
    align-items: center
}

.ec-headerNav .ec-headerNav__itemIcon {
    margin-left: 0
}

.ec-headerNav .ec-headerNav__itemLink {
    margin-right: 0;
    margin-top: 5px;
    font-weight: 700
}

.ec-layoutRole__contents {
    max-width: 960px !important
}

.ec-layoutRole__header {
    background-color: #fff;
    position: relative;
    z-index: 1
}

.ec-layoutRole__header__inner {
    position: relative
}

.ec-layoutRole__header__inner:after {
    content: '';
    background-image: url(../img/common/bg_bottom-round.png);
    background-size: 40px 156px;
    background-repeat: repeat-x;
    width: 100%;
    height: 20px;
    position: absolute;
    top: 100%;
    left: 0;
    background-position: left bottom;
    z-index: 100
}

.ec-layoutRole__sub-contents {
    background-color: #f9f9f9;
    position: relative;
    overflow: hidden
}

.ec-layoutRole__sub-contents:before {
    content: '';
    z-index: 1;
    position: absolute;
    width: 200%;
    height: 460px;
    background-color: #f6f1ee;
    border-radius: 200%;
    top: -418px;
    left: -50%
}

.ec-layoutRole__sub-contents:after {
    content: '';
    z-index: 1;
    position: absolute;
    width: 120%;
    height: 500px;
    background-color: #f6f1ee;
    border-radius: 100%;
    bottom: -200px;
    left: -10%
}

.ec-layoutRole__sub-contents>* {
    position: relative;
    z-index: 2
}

.ec-headerNavSP {
    position: relative;
    padding: 0;
    font-size: 20px;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    background-color: transparent
}

.ec-headerNavSP .fas {
    font-size: inherit
}

.ec-headerNavSP .c-icon {
    width: 25px;
    height: 25px
}

.is_active .ec-headerNavSP .c-icon--bars {
    display: none
}

.ec-headerNavSP .c-icon--times {
    display: none;
    width: 20px;
    height: 20px
}

.is_active .ec-headerNavSP .c-icon--times {
    display: inline-block
}

.ec-headerNaviRole {
    padding-top: 18px;
    position: relative
}

.ec-headerNaviRole img {
    width: inherit
}

.ec-headerNaviRole:after {
    display: none
}

.ec-headerNaviRole__cartSP {
    display: none
}

.ec-headerNaviRole__cartSP__number {
    color: #fff;
    height: 34px;
    width: 40px;
    background-image: url(../img/common/cart.svg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 34px auto;
    text-align: center;
    font-size: 10px;
    font-weight: 700;
    padding-top: 5px;
    text-indent: 3px
}

.ec-headerNaviRole__cartSP__price {
    font-weight: 700;
    font-size: 12px
}

.ec-headerNaviRole__title {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    top: 50%
}

.ec-headerNaviRole .ec-headerNaviRole__left, .ec-headerNaviRole .ec-headerNaviRole__right {
    width: auto
}

.ec-headerNaviRole .ec-headerNaviRole__left {
    display: flex;
    align-items: center
}

.ec-headerTitle {
    width: 333px
}

.ec-headerTitle .ec-headerTitle__title a {
    margin-bottom: 0
}

.ec-headerTitle__nowrap {
    word-break: keep-all
}

.ec-headerRole {
    padding: 0;
    color: #000
}

.ec-headerRole__details>img {
    display: inline-block;
    width: inherit
}

.ec-headerRole__details__text {
    display: block;
    margin-bottom: 10px;
    padding-left: 10px
}

.ec-headerRole__details__balloon {
    display: inline-block;
    position: relative;
    border-radius: 6px;
    border-left: 2px solid #ccc;
    border-bottom: 2px solid #ccc;
    font-size: 26px;
    font-weight: 700;
    padding: 10px;
    line-height: 1;
    margin-left: 15px
}

.ec-headerRole__details__balloon:first-letter {
    font-size: 16px
}

.ec-headerRole__details__balloon:before {
    content: '';
    position: absolute;
    right: 100%;
    top: 22px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 8.7px 5px 0;
    border-color: transparent #ccc transparent transparent
}

.ec-headerRole__details__balloon:after {
    content: '';
    position: absolute;
    right: 100%;
    top: 20px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 8.7px 5px 0;
    border-color: transparent #fff transparent transparent
}

.ec-headerRole__details__number {
    display: inline-block;
    color: #33a8d0;
    font-size: 20px;
    font-weight: 700;
    margin-right: 5px
}

.ec-headerRole__title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.ec-cartNavi .ec-cartNavi__badge {
    font-size: 17px;
    width: auto;
    height: 18px;
    padding: 12px 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: -3px
}

.ec-cartNavi__label {
    margin-left: 24px
}

.ec-drawerRoleClose {
    display: none
}

.ec-drawerRoleClose.is_active {
    display: none
}

.ec-drawerRole {
    background-color: #fff;
    width: 100%;
    height: calc(100vh - 90px);
    top: 90px;
    transform: translateX(-110%)
}

.ec-layoutRole__footer {
    position: relative;
    padding-top: 70px;
    padding-bottom: 15px
}

.ec-layoutRole__footer:after {
    content: '';
    background-image: url(../img/common/bg_top-round.png);
    background-size: 40px 156px;
    background-repeat: repeat-x;
    width: 100%;
    height: 20px;
    position: absolute;
    bottom: 100%;
    left: 0;
    background-position: left top;
    z-index: 1
}

.ec-footerRole {
    background-color: #f0f0f0;
    border-top: none
}

.ec-footerNavi {
    color: #000
}

.ec-footerTitle {
    color: #000
}

.ec-footerTitle .ec-footerTitle__copyright {
    font-family: Arial, Helvetica, sans-serif
}

.ec-blockTopBtn {
    text-indent: -9999px;
    width: 60px;
    height: 60px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-color: transparent;
    background-image: url(../img/common/btn_top.svg);
    opacity: .4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    z-index: 100
}

.ec-select-wrap {
    display: flex
}

.ec-select {
    margin-bottom: 0;
    position: relative;
    display: inline-block
}

.ec-select:after {
    content: '▼';
    color: #000;
    font-size: 7px;
    line-height: 1;
    display: block;
    position: absolute;
    top: 10px;
    right: 15px;
    pointer-events: none
}

.ec-select select {
    font-size: 14px;
    padding: 3px 35px 4px 12px;
    height: 28px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    display: inline-block;
    background: #fff;
    border-radius: 20px
}

.ec-searchnavRole {
    padding-left: 0;
    padding-right: 0;
    font-size: 18px
}

.ec-searchnavRole__controller {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    align-items: center
}

.ec-searchnavRole__controller__text {
    font-size: 16px;
    margin-right: 10px
}

.ec-searchnavRole__controller__display-bum {
    margin-right: 20px;
    padding-right: 20px;
    border-right: 1px solid #ccc
}

.ec-searchnavRole__result-status {
    width: 960px;
    margin: 30px auto 0;
    font-size: 16px;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    color: #333
}

.ec-searchnavRole__result-status span {
    color: #a5be51;
    font-weight: 700;
    font-size: 24px
}

.ec-searchnavRole .ec-searchnavRole__infos {
    border-top: none;
    padding-top: 0;
    margin-top: 35px;
    margin-bottom: 0;
    align-items: center
}

.ec-searchnavRole .ec-select select {
    min-width: 120px
}

.ec-select2 {
    position: relative
}

.ec-select2:after {
    content: '\025bc';
    color: #000;
    font-size: 7px;
    line-height: 1;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    pointer-events: none
}

.ec-select2__text {
    display: block;
    width: 100%;
    font-size: 14px;
    padding: 1px 35px 5px 16px;
    height: 30px;
    background: #fff;
    border-radius: 20px;
    border: 1px solid #ccc;
    color: #555
}

.ec-select2__select {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.ec-categoryNaviRole {
    padding-left: 0;
    padding-right: 0
}

.ec-itemNav {
    width: 960px;
    margin: 0 auto
}

.ec-itemNav a {
    width: 18.5%;
    display: block;
    color: #333;
    background-color: #fff;
    padding: 10px 15px;
    text-align: center;
    border-radius: 6px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, .21);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.ec-itemNav a:nth-child(2n) {
    margin-right: 0
}

.ec-itemNav a>span {
    color: inherit;
    display: block;
    width: 100%;
    font-size: 16px;
    font-weight: 700
}

.ec-itemNav a>span[id] {
    border-top: 1px solid #000;
    padding-top: 5px;
    margin-top: 5px
}

.ec-itemNav a:hover>span[id] {
    border-color: #fff
}

.ec-itemNav a>svg path {
    fill: #333
}

.ec-itemNav a:hover>svg path {
    fill: #fff
}

.ec-itemNav a:hover, .ec-itemNav a.is-active {
    color: #fff;
    background-color: #a5be51
}

.ec-itemNav__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.ec-itemsanchokuNav {
    width: 960px;
    margin: 0 auto
}

.ec-itemsanchokuNav a {
    display: block;
    color: #333;
    background-color: #fff;
    padding: 7px 13px;
    text-align: center;
    border-radius: 6px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, .21);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.ec-itemsanchokuNav a:nth-child(2n) {
    margin-right: 0
}

.ec-itemsanchokuNav a>span {
    color: inherit;
    display: block;
    width: 100%;
    font-size: 16px;
    font-weight: 700
}

.ec-itemsanchokuNav a:hover>span[id] {
    border-color: #fff
}

.ec-itemsanchokuNav a>svg path {
    fill: #333
}

.ec-itemsanchokuNav a:hover>svg path {
    fill: #fff
}

.ec-itemsanchokuNav a:hover, .ec-itemsanchokuNav a.is-active {
    color: #fff;
    background-color: #a5be51
}

.ec-itemsanchokuNav__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start
}

.ec-pagerRole {
    margin-top: 20px
}

.ec-pager__item+.ec-pager__item {
    border-left: 1px solid #7d7d7d
}

.ec-pager .ec-pager__item {
    color: #7d7d7d
}

.ec-pager .ec-pager__item a, .ec-pager .ec-pager__item--active a {
    line-height: 1;
    padding: 0 .5em
}

.ec-pager .ec-pager__item--active {
    color: #333
}

.ec-off4Grid .ec-off4Grid__cell {
    width: 100% !important;
    margin-left: 0 !important
}

.ec-off4Grid__cell {
    display: flex;
    width: 100%;
    margin: 0 auto
}

.ec-off4Grid button {
    margin-right: 20px
}

.ec-rule {
    height: 400px;
    overflow-x: scroll;
    margin-bottom: 60px
}

.js-item-link {
    cursor: pointer
}

.ec-productRole {
    padding: 0
}

.ec-productRole .ec-productRole__tags {
    border-bottom: none;
    padding-bottom: 0
}

.ec-productRole .ec-productRole__title .ec-headingTitle {
    color: #333;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.377
}

.ec-productRole__description {
    line-height: 1.6;
    letter-spacing: .07em;
    margin-top: 13px
}

.ec-productRole .ec-productRole__price {
    border-bottom: 1px solid #d9d9d9
}

.ec-productRole .ec-productRole__category {
    display: flex;
    margin-bottom: 12px;
    border-style: solid
}

.ec-productRole .ec-productRole__category>div {
    font-size: 14px;
    color: #7d7d7d;
    font-weight: 700
}

.ec-productRole .ec-productRole__category>ul>li>a {
    color: #333;
    font-size: 14px;
    font-weight: 700
}

.ec-productRole .ec-productRole__category__list {
    display: flex;
    flex-wrap: wrap
}

.ec-productRole .ec-productRole__category__list>li {
    margin-right: 10px
}

.ec-productRole .ec-price__price {
    padding: 0;
    font-size: 20px
}

.ec-shelfRole {
    padding-left: 0;
    padding-right: 0
}

.ec-numberInput input[type=number] {
    border-radius: 20px
}

.ec-sliderItemRole .item_nav {
    width: auto;
    margin-left: -2%;
    margin-right: -2%
}

.ec-sliderItemRole .slideThumb {
    width: 21% !important;
    margin-left: 2%;
    margin-right: 2%;
    margin-bottom: 15px
}

.ec-sliderItemRole .slideThumb img {
    margin: auto;
    display: block;
    width: 100% !important
}

.ec-input input, .ec-halfInput input, .ec-zipInput input, .ec-telInput input {
    font-size: 18px
}

.ec-inlineBtn--cancel {
    color: #fff !important;
    font-size: 14px !important
}

#entry_address_pref, #customer_address_address_pref {
    font-size: 14px;
    border-radius: 0 !important
}

.ec-guest {
    width: 100%
}

.ec-input input::placeholder, .ec-halfInput input::placeholder, .ec-numberInput input::placeholder, .ec-zipInput input::placeholder, .ec-telInput input::placeholder, .ec-select input::placeholder, .ec-birth input::placeholder {
    font-size: 13px
}

.ec-label {
    font-size: 18px
}

.ec-required {
    font-size: 18px;
    font-weight: 700;
    vertical-align: 0;
    margin-left: .6em
}

.ec-halfInput__text {
    display: flex
}

.ec-halfInput__text p {
    width: 45%
}

.ec-halfInput__text p:first-child {
    margin-right: 20px
}

.ec-borderedDefs dl {
    padding: 25px 0 14px
}

.ec-borderedDefs dt {
    padding-top: 8px
}

.ec-radio {
    line-height: 1.6
}

.ec-icon {
    width: 20px;
    height: 20px
}

.ec-icon img {
    display: block
}

.ec-zipInputHelp .ec-zipInputHelp__icon .ec-icon img {
    width: 16px;
    height: 16px
}

.ec-zipInputHelp .ec-zipInputHelp__icon {
    top: 0;
    width: 22px;
    height: 22px
}

.ec-blockBtn--area {
    margin: 0 auto;
    display: flex
}

.ec-blockBtn--action {
    font-size: 16px
}

.ec-blockBtn--agree {
    font-size: 16px;
    width: 45%;
    margin: 0 auto;
    padding: 0 10px;
    text-align: center;
    display: block;
    height: 56px;
    line-height: 56px
}

.ec-blockBtn--cancel {
    font-size: 16px;
    margin: 0 auto;
    padding: 0 10px;
    text-align: center
}

.ec-blockBtn--entry {
    font-size: 16px;
    margin: 0 auto;
    padding: 0 10px;
    text-align: center;
    color: #fff;
    background-color: #525263;
    border-color: #525263;
    height: 56px;
    line-height: 56px;
    font-weight: 700;
    display: block
}

.ec-blockBtn--entry:hover {
    color: #fff !important;
    background-color: #3b3b47;
    border-color: #363642;
    text-decoration: none
}

.ec-blockBtn--other {
    font-size: 16px;
    margin: 0 auto;
    padding: 0 10px;
    text-align: center;
    color: #fff;
    background-color: #525263;
    border-color: #525263;
    height: 56px;
    line-height: 56px;
    font-weight: 700;
    display: block
}

.ec-blockBtn--other:hover {
    color: #fff !important;
    background-color: #3b3b47;
    border-color: #363642;
    text-decoration: none
}

.ec-required {
    font-size: 13px !important
}

.ec-input input, .ec-halfInput input, .ec-zipInput input, .ec-telInput input {
    font-size: 14px !important
}

.l-container .ec-orderRole {
    padding-left: 0;
    padding-right: 0
}

.ec-orderRole p {
    color: #525263
}

.ec-orderDelivery, .ec-orderPayment, .ec-orderConfirm {
    margin-bottom: 30px
}

.ec-orderDelivery .ec-orderDelivery__change {
    top: 5px
}

.ec-orderDelivery__actions .ec-selects {
    padding-bottom: 20px
}

.ec-orderDelivery__actions .ec-selects label {
    font-size: 16px
}

.ec-orderDelivery__actions .ec-selects select {
    font-size: 14px
}

.ec-orderDelivery__actions .ec-select+.ec-select {
    margin-top: 15px
}

.ec-orderOrder .ec-definitions {
    font-size: 16px
}

.ec-orderOrder .ec-definitions dt, .ec-orderOrder .ec-definitions dd {
    font-size: inherit
}

.ec-rectHeading h1, .ec-rectHeading h2, .ec-rectHeading h3, .ec-rectHeading h4, .ec-rectHeading h5, .ec-rectHeading h6 {
    margin-bottom: 10px
}

.ec-reportHeading h1, .ec-reportHeading h2 {
    line-height: 1.4
}

.ec-historyRole .ec-historyRole__contents {
    padding-top: 20px;
    padding-bottom: 20px
}

.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailTitle {
    font-size: 16px
}

.ec-historyRole .ec-historyRole__detail .ec-historyRole__detailPrice {
    font-size: 16px;
    font-weight: 400
}

.ec-historyRole .ec-definitions {
    font-size: 16px;
    margin-top: 13px;
    margin-bottom: 13px
}

.ec-historyRole .ec-definitions dt, .ec-historyRole .ec-definitions dd {
    font-size: inherit
}

.ec-historyRole .ec-historyListHeader__action {
    margin-top: 23px
}

.cart-basket {
    width: 100%
}

.c-cart {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
}

.c-cart-content__section+.c-cart-content__section {
    margin-top: 36px
}

.c-cart-content__section p {
    margin-top: 10px
}

.c-cart-content__section__button {
    width: auto;
    height: 40px;
    line-height: 40px
}

.c-cart-summary {
    background-color: #f3f3f3;
    flex-grow: 0;
    flex-shrink: 0;
    padding: 16px
}

.c-cart-summary__totals__row {
    display: flex;
    justify-content: space-between;
    font-size: 16px
}

.c-cart-summary__totals__row+.c-cart-summary__totals__row {
    margin-top: 5px
}

.c-cart-summary__totals__row--right, .c-cart-summary__totals__row-total {
    justify-content: flex-end
}

.c-cart-summary__totals__row--border-top, .c-cart-summary__totals__row-total {
    border-top: 1px dotted #c5c4c5;
    padding-top: 10px
}

.c-cart-summary__totals__row-total {
    align-items: baseline
}

.c-cart-summary__totals__row-total .c-cart-summary__totals__row__name {
    font-weight: 700;
    font-size: 14px
}

.c-cart-summary__totals__row-total .c-cart-summary__totals__row__ammount {
    font-size: 24px;
    margin-left: 20px;
    color: #dd5d50
}

.c-cart-summary__totals__row-total .c-cart-summary__totals__row__ammount__tax {
    font-size: .583em
}

.c-cart-summary__totals__row__name {
    font-size: inherit
}

.c-cart-summary__totals__row__ammount {
    font-size: inherit
}

.c-cart-summary .ec-blockBtn--action, .c-cart-summary .ec-blockBtn--cancel {
    font-size: 16px
}

.c-flow {
    display: flex;
    justify-content: space-between;
    width: 730px;
    margin: 60px auto 96px;
    position: relative
}

.c-flow:before {
    content: '';
    margin-left: 40px;
    margin-right: 40px;
    width: calc(100% - 80px);
    height: 6px;
    background-color: #525263;
    position: absolute;
    top: 22px
}

.c-flow__stage {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 2
}

.c-flow__stage__point {
    font-weight: 700;
    background-color: #525263;
    color: #fff;
    display: flex;
    font-size: 25px;
    font-family: Arial, Helvetica, sans-serif;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    justify-content: center;
    align-items: center
}

.is-current .c-flow__stage__point {
    background-color: #5cb1b1
}

.c-flow__stage__text {
    color: #525263;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    margin-top: 13px
}

.is-current .c-flow__stage__text {
    color: #5cb1b1
}

.c-item {
    margin: 36px 16px 16px;
    display: flex;
    flex-direction: column;
    width: 294px;
    padding: 24px;
    box-shadow: 0 0 4px 4px rgba(104, 104, 104, .1);
    background: #fff;
    position: relative
}

.c-item>.ec-closeBtn--circle {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
    color: #fff;
    transform: scale(.7)
}

.c-item>.ec-closeBtn--circle>i {
    font-size: 16px
}

.c-item--flexible {
    width: 100%;
    margin: 0
}

.c-item--narrow {
    padding: 10px
}

.c-item:hover {
    text-decoration: none
}

.c-item:nth-child(3n) {
    margin-right: 0
}

.c-item__info {
    display: flex;
    justify-content: space-between;
    color: inherit;
    font-size: 16px
}

.c-item__info__text {
    color: #525263
}

.c-item__info__text--red {
    color: #bd0000
}

.c-item__info__text__number {
    color: #333;
    font-weight: 700
}

.c-item__new {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 30px;
    line-height: 40px;
    padding: 0 10px;
    color: #fff;
    background-image: url(../img/common/tag_new.png);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 30;
    text-indent: -9999px;
    width: 111px;
    height: 41px
}

.c-item__img-details {
    width: 100%;
    height: auto;
    display: block;
    position: relative
}

.c-item__img {
    width: 100%;
    height: 246px;
    display: block;
    position: relative
}

.c-item__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.c-item__img__tag {
    position: absolute;
    bottom: -2px;
    left: -2px;
    padding: 7px;
    line-height: 1;
    color: #fff;
    font-weight: 700;
    font-size: 24px;
    background-color: #df4840;
    border-radius: 0 6px 6px 0;
    z-index: 30
}

.c-item__img__favorite {
    position: absolute;
    top: 24px;
    right: 24px;
    padding: 10px;
    line-height: 1;
    background-color: #fff;
    color: #f688bb;
    font-size: 18px;
    z-index: 11
}

.c-item__img__favorite i {
    font-size: 18px
}

.c-item__img__sold-out {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .7);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

.c-item__img__sold-out__text-en {
    color: #df4840;
    background-color: rgba(255, 255, 255, .7);
    padding: 5px;
    line-height: 1;
    font-size: 27px;
    font-weight: 700
}

.c-item__img__sold-out__text-en__details {
    color: #df4840;
    background-color: rgba(255, 255, 255, .7);
    padding: 5px;
    line-height: 1;
    font-size: 27px;
    font-weight: 700
}

.c-item__img__sold-out__text-ja {
    margin-top: 6px;
    font-weight: 700;
    color: #df4840;
    font-size: 16px
}

.c-item__img__sold-out__text-ja__details {
    margin-top: 6px;
    font-weight: 700;
    color: #df4840;
    font-size: 16px
}

.c-item__img__wait {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    display: flex;
    justify-content: center;
    align-items: center
}

.c-item__img__wait__text {
    color: #fff;
    text-align: center;
    padding: 5px 15px;
    border: 2px solid #fff;
    font-weight: 700;
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    background-color: rgba(0, 0, 0, .7)
}

.c-item__title {
    display: block;
    color: #333;
    font-size: 16px;
    line-height: 1.4;
    font-style: normal;
    margin-top: 5px;
    margin-bottom: 45px;
    text-align: justify
}

.c-item__title:hover {
    color: #333
}

a.c-item:hover .c-item__title {
    text-decoration: none
}

.c-item__price {
    color: #333;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 5px;
    padding-bottom: 5px;
    border-bottom: 1px solid #ccc
}

.c-item__stock {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 19px;
    font-weight: 400
}

.c-item__stock__ammount {
    font-size: 18px;
    font-weight: 700;
    flex: 1 1 auto
}

.c-item__stock__notice {
    color: #dd5d50;
    border-color: #dd5d50
}

.c-item .ec-numberInput {
    margin-top: 20px
}

.c-item .ec-numberInput span {
    font-size: 18px
}

.c-item .ec-numberInput input[type=number] {
    margin-left: 10px;
    margin-bottom: 0
}

.c-item .ec-productRole__btn {
    margin-top: 20px
}

.c-item .ec-blockBtn--action {
    font-size: 18px
}

.c-item-wrap {
    display: flex;
    flex-wrap: wrap;
    width: 962px;
    margin: 0 auto
}

.c-item-relation {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto
}

.c-item__stock__notice, .c-item-details .ec-productRole__tag {
    width: auto;
    font-size: 12px;
    border-width: 2px;
    border-style: solid;
    font-weight: 700;
    padding: 2px 20px;
    text-align: center;
    flex: 1 0 auto
}

.c-item-details__shipping p, .c-item-details__description-top p, .c-item-details__description p {
    font-weight: inherit;
    margin-top: 10px;
    font-size: 16px
}

.c-item-details {
    margin-top: 20px
}

.c-item-details__pricing {
    align-items: flex-end;
    border-top: 1px solid #d9d9d9;
    color: #333;
    display: flex;
    justify-content: space-between;
    margin-top: 14px;
    padding-top: 8px;
    padding-bottom: 17px
}

.c-item-details__pricing__info__special, .c-item-details__pricing__info__reference {
    font-size: 16px
}

.c-item-details__pricing__info__special__mainprice {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 6px
}

.c-item-details__pricing__info__special__price {
    font-size: 18px;
    margin-left: 0;
    text-decoration: line-through
}

.c-item-details__pricing__info__special__pricedown {
    font-size: 14px;
    background-color: #ca3535;
    padding: 3px 10px;
    color: #fff
}

.c-item-details__pricing__info__reference {
    font-weight: 700
}

.c-item-details__pricing__info__reference span {
    font-size: inherit;
    font-weight: 700;
    color: #7d7d7d
}

.c-item-details__pricing__info__reference__price {
    text-decoration: line-through
}

.c-item-details__pricing__stock {
    font-size: 24px;
    color: #999
}

.c-item-details__pricing__stock__num {
    color: #333;
    font-weight: 700
}

.c-item-details__shipping {
    border-bottom: 1px solid #d9d9d9;
    color: #333;
    padding-top: 17px
}

.c-item-details__lead {
    color: #333;
    margin-top: 20px;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.7
}

.c-item-details__form {
    margin-top: 30px
}

.c-item-details__form .form-group {
    margin-bottom: 10px
}

.c-item-details__form .form-group--title {
    border-bottom: 1px solid #ccc;
    padding-bottom: 5px
}

.c-item-details__form label {
    font-weight: 700;
    font-size: 14px;
    color: #333
}

.c-item-details .form-horizontal .form-group {
    margin-left: -5px;
    margin-right: -5px
}

.c-item-details .form-horizontal .form-group [class*=col-xs] {
    padding-left: 5px;
    padding-right: 5px
}

.c-item-details__description-top {
    border-bottom: 1px solid #d9d9d9;
    padding-bottom: 15px;
    font-weight: 700;
    margin-bottom: 18px
}

.c-item-details__description dt {
    color: #333;
    font-weight: 700;
    padding-right: 15px;
    font-size: 16px;
    line-height: 1.5
}

.c-item-details__description dd {
    width: 81%;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 20px
}

.c-item-details__notice {
    font-size: 18px;
    text-align: center;
    color: #dd5d50;
    border: 1px solid #9a0606;
    box-sizing: border-box;
    padding: 10px;
    margin-bottom: 20px
}

.c-item-details__actions, .c-item-details__social {
    border-top: 1px solid #d9d9d9;
    padding-top: 15px
}

.c-item-details__actions {
    padding-top: 24px;
    padding-bottom: 24px
}

.c-item-details__actions__content {
    display: flex;
    margin: -11px
}

.c-item-details__actions__button {
    align-items: center;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid #d9d9d9;
    box-sizing: border-box;
    color: #999;
    display: flex;
    font-size: 16px;
    font-weight: 700;
    justify-content: center;
    margin: 11px;
    padding: 11px;
    padding-left: 48px;
    position: relative
}

.c-item-details__actions__button:hover {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms
}

.c-item-details__actions__button:hover {
    color: #999;
    text-decoration: none
}

.c-item-details__actions__button:focus {
    color: inherit;
    text-decoration: inherit;
    border-color: inherit;
    outline: none
}

.c-item-details__actions__button:before {
    content: '';
    position: absolute;
    width: 26px;
    height: 24px;
    top: 50%;
    left: 9px;
    margin-top: -12px;
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.c-item-details__actions__button--interest:before {
    background-image: url(../img/icon/heart.svg)
}

.c-item-details__actions__button--interest:disabled:before {
    background-image: none;
    font-family: "Font Awesome 5 Free";
    content: "\f004";
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-size: 20px;
    color: #f688bb;
    margin: 0;
    transform: translateY(-50%)
}

.c-item-details__actions__button--buy, .c-item-details__actions__button--cart {
    color: #fff
}

.c-item-details__actions__button--buy:hover, .c-item-details__actions__button--cart:hover {
    color: #fff
}

.c-item-details__actions__button--buy {
    border-color: #df4840;
    background-color: #df4840
}

.c-item-details__actions__button--buy:before {
    background-image: url(../img/icon/cart-buy.svg)
}

.c-item-details__actions__button--buy:focus {
    color: #fff;
    text-decoration: inherit;
    border-color: #df4840
}

.c-item-details__actions__button--cart {
    border-color: #333;
    background-color: #333
}

.c-item-details__actions__button--cart:before {
    background-image: url(../img/icon/cart-plus.svg)
}

.c-item-details__actions__button--cart:focus {
    color: #fff;
    text-decoration: inherit;
    border-color: #333
}

.c-item-details__actions__buy {
    display: flex;
    margin-left: auto;
    justify-content: center
}

.c-item-details__social__title {
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-right: 10px;
    padding-top: 7px
}

.c-item-details__social__content {
    display: flex;
    flex-wrap: wrap
}

.c-item-details__social__button {
    box-sizing: border-box;
    display: flex;
    background-color: #fff;
    box-shadow: 0 0 2px 2px rgba(104, 104, 104, .1);
    padding: 8px;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    min-width: 116px;
    margin: 4px
}

.c-item-details__social__button:hover {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms
}

.c-item-details__social__button:hover {
    text-decoration: none
}

.c-item-details__social__button__icon {
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin-right: 5px
}

.c-item-details__social__button__text {
    color: #999;
    font-family: Roboto, Noto Sans Japanese, "ＭＳ Ｐゴシック", MS PGothic, Arial, Helvetica, Helvetica Neue, Verdana, sans-serif;
    font-family: "14px"
}

.c-item-details__social__button--line .c-item-details__social__button__icon {
    background-image: url(../img/common/social-line.svg)
}

.c-item-details__social__button--tw .c-item-details__social__button__icon {
    background-image: url(../img/common/social-tw.svg)
}

.c-item-details__social__button--fb .c-item-details__social__button__icon {
    background-image: url(../img/common/social-fb.svg)
}

.c-item-details__social__button--mail .c-item-details__social__button__icon {
    background-image: url(../img/icon/mail.svg)
}

.c-item-details .c-well {
    padding: 15px 20px
}

.c-item-details .ec-productRole__btn {
    width: 100%;
    margin-top: 12px
}

.c-item-details .ec-productRole__btn .ec-blockBtn--action {
    font-size: 27px;
    height: 82px
}

.c-item-details .ec-productRole__tag {
    color: #fff;
    padding: 2px 15px;
    min-width: auto;
    background-color: #b8bec4;
    border-color: #b8bec4;
    border-radius: 3px
}

.c-item-details .ec-productRole__tag--red {
    border-color: #df4840;
    background-color: #df4840
}

.c-item-details .ec-productRole__tag--green {
    color: #099a06;
    border-color: #099a06
}

.c-sanchoku__pref {
    font-size: 13px;
    text-justify: inter-character;
    text-align: justify
}

.c-sanchoku__store {
    font-size: 17px;
    margin-bottom: 10px
}

.c-sanchoku__info {
    font-size: 13px
}

.c-title {
    font-size: 30px;
    margin: 0 auto
}

.ec-role .c-title {
    color: #333
}

.c-title__small {
    font-size: .8em;
    margin-left: 5px
}

.c-title__sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.c-title-page {
    color: #333;
    font-size: 28px;
    font-weight: 700;
    border-bottom: 1px solid #c5c4c5;
    padding-bottom: 13px;
    padding-left: 7px;
    margin-bottom: 38px;
    display: flex;
    align-items: baseline
}

.c-title-page h1, .c-title-page h2, .c-title-page h3, .c-title-page h4, .c-title-page h5, .c-title-page h6 {
    color: inherit;
    font-size: inherit;
    font-weight: inherit
}

.c-title-page__detail {
    margin-left: auto
}

.c-title-bar {
    color: #fff;
    font-size: 30px;
    background-color: #4aacd3;
    text-align: center;
    font-weight: 700;
    padding: 5px
}

.c-title-form {
    font-size: 20px;
    font-weight: 700;
    background-color: #f3f3f3;
    padding: 8px 12px
}

.c-title-section {
    text-align: center;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.8;
    color: #333;
    margin-top: 40px
}

.c-title-lined {
    width: 100%;
    display: flex;
    flex: 0 1 auto;
    font-weight: 700;
    font-size: 20px;
    text-align: center;
    margin-top: 47px
}

.c-title-lined:before, .c-title-lined:after {
    content: '';
    flex: 1 0 auto;
    width: auto;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mM0/g8AAWsBNAUUB5MAAAAASUVORK5CYII=);
    background-size: 1px 1px;
    background-position: center;
    background-repeat: repeat-x
}

.c-title-lined:before {
    margin-right: 20px
}

.c-title-lined:after {
    margin-left: 20px
}

.c-info {
    display: flex;
    padding: 20px 0
}

.c-info+.c-info {
    border-top: 1px solid #333
}

.c-info--status {
    padding-top: 15px;
    padding-bottom: 15px
}

.c-info--status+.c-info--status {
    border-top: 2px solid #dfdfdf
}

.c-info__content, .c-info-faq__header__content, .c-info-guide__header__content {
    display: flex;
    width: calc(100% - 43px);
    box-sizing: border-box;
    padding-right: 20px
}

.c-info--status .c-info__content, .c-info--status .c-info-faq__header__content, .c-info--status .c-info-guide__header__content {
    width: 100%;
    padding-left: 12px;
    padding-right: 22px
}

.c-info__date {
    color: #000;
    font-size: 16px
}

.ec-newsRole__newsItem .c-info__date {
    line-height: 2
}

.c-info__text {
    color: #333;
    font-size: 18px
}

.c-info--status .c-info__text {
    color: #33a8d0;
    font-weight: 700;
    font-size: 16px
}

.c-info--status .c-info__text:not(a) {
    color: #333;
    font-weight: 400
}

.c-info__price {
    color: #c95851;
    font-size: 17px;
    font-weight: 700;
    margin-left: auto;
    padding-left: 20px
}

.c-info__points {
    color: #c95851;
    font-size: 17px;
    font-weight: 700;
    margin-left: auto;
    padding-left: 20px
}

.c-info__points--minus {
    color: #333
}

.c-info__arrow, .c-info-faq__header__arrow, .c-info-guide__header__arrow {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/icon/arrow_circle_right.svg);
    margin-right: 13px;
    transition: transform 300ms linear
}

.ec-newsRole__newsItem .c-info__arrow, .ec-newsRole__newsItem .c-info-faq__header__arrow, .ec-newsRole__newsItem .c-info-guide__header__arrow {
    transform: rotate(90deg)
}

.ec-newsRole__newsItem.is_active .c-info__arrow, .ec-newsRole__newsItem.is_active .c-info-faq__header__arrow, .ec-newsRole__newsItem.is_active .c-info-guide__header__arrow {
    transform: rotate(-90deg)
}

.c-info-wrap {
    margin-top: 20px
}

.c-info-wrap .ec-newsRole__newsTitle {
    font-size: 18px;
    width: auto;
    font-weight: 400
}

.c-info-wrap .ec-newsRole__newsTitle:hover {
    text-decoration: underline
}

.c-info-faq, .c-info-guide {
    box-sizing: border-box;
    flex: 0 0 50%;
    width: 100%;
    margin-bottom: 15px;
    border: 1px solid #e6e6e6
}

.c-info-faq__header, .c-info-guide__header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    padding: 18px 15px 20px;
    align-items: center;
    border-bottom: none;
    background: #f2f2f2
}

.c-info-faq__header__content, .c-info-guide__header__content {
    align-items: flex-start;
    width: calc(100% - 35px)
}

.c-info-faq__header__arrow, .c-info-guide__header__arrow {
    transform: rotate(90deg);
    margin-right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 7px;
    border-color: transparent transparent transparent #333;
    background-image: none;
    flex: 0
}

.c-info-faq__header.is-open .c-info-faq__header__arrow, .is-open.c-info-guide__header .c-info-faq__header__arrow, .c-info-faq__header.is-open .c-info-guide__header__arrow, .is-open.c-info-guide__header .c-info-guide__header__arrow {
    transform: rotate(-90deg)
}

.c-info-faq__header__title, .c-info-guide__header__title {
    font-size: 18px;
    color: #333;
    font-weight: 400
}

.c-info-faq__body, .c-info-guide__body {
    overflow: hidden;
    transition: height 300ms linear
}

.c-info-faq__body p+p, .c-info-guide__body p+p {
    margin-top: 10px
}

.c-info-faq__body__content, .c-info-guide__body__content {
    padding: 15px 15px 10px
}

.c-info-faq__body__content p, .c-info-guide__body__content p {
    font-size: 16px
}

.c-info-faq-wrap {
    width: auto;
    display: block;
    margin-top: 12px;
    margin-left: 0;
    margin-right: 0
}

.c-info-guide {
    width: 100%;
    padding: 0
}

.c-info-guide__header__arrow {
    position: relative;
    top: 5px
}

.c-info-guide__body__content__item:not(:first-child) {
    margin-top: 30px
}

.c-info-guide__body__content__item__title {
    font-weight: 700
}

.c-info-guide__body__content__item__text {
    margin-top: 0 !important
}

.c-info-guide__body p {
    font-size: 18px;
    line-height: 1.7
}

.c-info-guide__body p+p {
    margin-top: 34px
}

.c-info-guide-wrap {
    width: 100%;
    margin-top: 5px
}

.c-checkbox, .c-radio {
    position: absolute;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
}

.c-checkbox+label, .c-radio+label {
    position: relative;
    cursor: pointer;
    padding: 0;
    font-size: 18px;
    color: #333;
    font-weight: 700
}

.c-checkbox+label:before, .c-radio+label:before {
    content: '';
    margin-right: 13px;
    vertical-align: text-top;
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #fff;
    border: 1px solid #c5c4c5
}

.c-checkbox:checked+label:after, .c-radio:checked+label:after {
    content: '';
    display: block;
    position: absolute
}

.c-checkbox:disabled+label, .c-radio:disabled+label {
    color: #b8b8b8;
    cursor: auto
}

.c-checkbox:disabled+label:before, .c-radio:disabled+label:before {
    background: #ddd
}

.c-checkbox:checked+label:after {
    width: 11px;
    height: 20px;
    border-right: 3px solid #0dcba9;
    border-bottom: 3px solid #0dcba9;
    transform: rotate(45deg);
    top: 1px;
    left: 5px
}

.c-radio+label:before {
    border-radius: 50%
}

.c-radio:checked+label:before {
    background-color: #0dcba9
}

.c-radio:checked+label:after {
    background-color: #fff;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    top: 9px;
    left: 4px
}

.c-section-organization, .donation-org {
    display: flex;
    padding: 40px 0 50px;
    border-bottom: 1px solid #c5c4c5;
    justify-content: space-around
}

.c-section-organization:first-of-type, .donation-org:first-of-type {
    border-top: 1px solid #c5c4c5
}

.c-section-organization__aside, .donation-org__aside {
    width: 400px;
    text-align: center
}

.c-section-organization__content, .donation-org__content {
    width: 615px
}

.c-section-organization__content p, .donation-org__content p {
    font-size: 16px
}

.c-table {
    display: table;
    border-top: 1px solid #d9d9d9;
    border-right: 1px solid #d9d9d9
}

.c-table__th, .c-table__td {
    border-bottom: 1px solid #d9d9d9;
    border-left: 1px solid #d9d9d9
}

.c-table__th--purple {
    color: #fff;
    background-color: #8059aa
}

.c-table__th--deep-blue {
    color: #fff;
    background-color: #2260a7
}

.c-table__th--light-blue {
    color: #fff;
    background-color: #4aacd3
}

.c-table__th--green-blue {
    color: #fff;
    background-color: #049b7e
}

.c-table__th--avocado {
    color: #fff;
    background-color: #aab53e
}

.c-table__th--pink {
    color: #fff;
    background-color: #ea6097
}

.c-table__th--orange {
    color: #fff;
    background-color: #f7931e
}

.c-table__th--red {
    color: #fff;
    background-color: #e23d4b
}

.c-pseudo-table--bordered {
    border-top: 1px solid #c5c4c5;
    border-right: 1px solid #c5c4c5
}

.c-pseudo-table__row {
    width: 100%;
    display: flex
}

.c-pseudo-table__th, .c-pseudo-table__td {
    padding: 21px 24px;
    border-bottom: 1px solid #c5c4c5
}

.c-pseudo-table__th {
    color: #525263;
    width: 180px;
    flex: 0 0 180px;
    font-size: 18px;
    font-weight: 700;
    border-left: 1px solid #c5c4c5;
    background-color: #f4f3f0
}

.c-pseudo-table__td {
    color: #525263;
    width: calc(100% - 180px);
    flex: 1 0 calc(100% - 180px);
    font-size: 16px
}

.c-pseudo-table__td .form-control, .c-pseudo-table__td .form-group, .c-pseudo-table__td .form-inline {
    font-size: inherit
}

.c-thumb-slider__main {
    padding-bottom: 100%;
    margin-bottom: 30px
}

.c-thumb-slider__main .slick-list {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    max-width: 100%;
    max-height: 100%;
    border: 1px solid #c5c4c5
}

.c-thumb-slider__main .slick-list .slick-track, .c-thumb-slider__main .slick-list .slick-slide, .c-thumb-slider__main .slick-list img {
    height: 100%
}

.c-thumb-slider__main .slick-list .slick-slide {
    position: relative
}

.c-thumb-slider__main .slick-list .slick-slide img {
    position: absolute;
    max-width: 100%;
    max-height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: block
}

.c-thumb-slider__main img {
    width: 100%;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.c-thumb-slider__nav {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: 0
}

.c-thumb-slider__nav .slideThumb {
    margin-bottom: 10px;
    width: 33.3331%;
    padding-bottom: 33.3331%;
    position: relative;
    opacity: .8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    cursor: pointer
}

.c-thumb-slider__nav .slideThumb:focus {
    outline: none
}

.c-thumb-slider__nav .slideThumb:hover {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.c-thumb-slider__nav .slideThumb:nth-child(3n) img {
    margin-left: 10%
}

.c-thumb-slider__nav .slideThumb:nth-child(3n-1) img {
    margin-left: 5%
}

.c-thumb-slider__nav .slideThumb img {
    width: 90%;
    height: 90%;
    margin: auto;
    display: block;
    border: 1px solid #c5c4c5;
    position: absolute;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.c-footer-details {
    display: flex;
    justify-content: space-between;
    color: #333;
    width: 885px;
    margin: 0 auto
}

.c-footer-details__column {
    width: 420px
}

.c-footer-details__text {
    font-size: 16px;
    margin-top: 15px
}

.c-footer-details__card {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #ccc
}

.c-footer-details__card__text {
    font-size: 16px
}

.c-footer-details__card__image {
    width: 281px;
    height: 100%
}

.c-footer-links {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    display: flex;
    justify-content: center;
    padding: 15px 0;
    margin-top: 50px
}

.c-footer-links__item {
    line-height: 1
}

.c-footer-links__item+.c-footer-links__item {
    padding-left: 15px;
    margin-left: 15px;
    border-left: 1px solid #000
}

.c-footer-links__link {
    color: #333;
    font-size: 13px
}

.ec-blockTopBtn {
    width: 30px !important;
    height: 30px !important
}

.c-footer-logo {
    text-align: center;
    margin-top: 25px
}

.c-footer-copyright {
    display: block;
    font-size: 12px;
    text-align: center;
    margin-top: 15px
}

.c-color-orange {
    color: #dd5d50
}

.c-icon {
    display: inline-block;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain
}

.c-icon--bars {
    background-image: url(../img/icon/bars.svg)
}

.c-icon--times {
    background-image: url(../img/icon/times.svg)
}

.c-icon--arrow-circle-right {
    background-image: url(../img/icon/arrow_circle_right.svg)
}

.c-icon--open-new {
    background-image: url(../img/icon/open_in_new.svg)
}

.c-icon--open-new.c-icon--white {
    background-image: url(../img/icon/open_in_new_white.svg)
}

.c-drawer-nav {
    padding: 15px
}

.is_active .c-drawer-nav {
    display: block
}

.c-drawer-nav__link {
    display: inline-block;
    color: #000;
    font-size: 18px;
    font-weight: 700;
    padding: 15px
}

.c-drawer-nav__icon-links {
    padding: 10px 0 25px;
    margin-bottom: 10px;
    border-bottom: 1px solid #ccc;
    display: flex;
    align-items: center;
    justify-content: center
}

.c-drawer-nav__icon-links__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    color: inherit
}

.c-drawer-nav__icon-links__item+.c-drawer-nav__icon-links__item {
    margin-left: 60px
}

.c-header-nav {
    width: 100%;
    background-color: #f6f1ee;
    padding: 45px 0 20px
}

.c-header-nav .l-container {
    display: flex;
    justify-content: center
}

.c-header-nav__link {
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-size: 18px;
    position: relative;
    line-height: 1
}

.c-header-nav__link:hover {
    text-decoration: none;
    color: #000
}

.c-header-nav__link:hover {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms
}

.c-header-nav__link+.c-header-nav__link {
    margin-left: 50px
}

.c-header-nav__link+.c-header-nav__link:after {
    content: '';
    height: 18px;
    width: 1px;
    background-color: #000;
    position: absolute;
    left: -25px;
    top: 0
}

.c-lead {
    color: #000;
    font-weight: 700;
    font-size: 36px;
    line-height: 1.5
}

.c-lead small {
    font-size: .778em;
    font-weight: 700
}

.c-lead__strong {
    color: #0dcba9
}

.c-lead-wrap {
    padding: 18px 0;
    margin-top: 20px;
    text-align: center
}

.c-button-form {
    color: #525263;
    appearance: none !important;
    border-radius: 0;
    border-color: #c5c4c5;
    background-color: #f5f5f5;
    padding: 11.5px 13px;
    margin: 0 3px
}

.c-button-donation {
    color: #fff;
    text-align: center;
    background-color: #525263;
    font-weight: 700;
    font-size: 18px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 16px 30px;
    width: 300px;
    margin-top: 55px
}

.c-button-donation:hover {
    text-decoration: none;
    color: #fff
}

.c-button-donation .c-icon {
    width: 20px;
    height: 20px;
    margin-left: 8px
}

.c-button-details {
    background-color: #333;
    position: relative;
    text-align: center;
    color: #fff;
    border-radius: 50px;
    font-size: 21px;
    padding: 15px 0;
    font-weight: 700;
    padding-left: 54px;
    padding-right: 54px;
    display: inline-block
}

.c-button-details:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: inherit
}

.c-button-details:hover {
    color: #fff
}

.c-button-details:hover {
    opacity: .7 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms !important
}

.c-button-details--blank:after {
    content: '';
    width: 24px;
    height: 24px;
    background: url(../img/icon/open_in_new2_white.svg) no-repeat center/contain;
    right: 18px
}

.c-well {
    border-radius: 5px;
    padding: 16px;
    color: #525263;
    background-color: #f3f3f3;
    width: 100%;
    box-sizing: border-box
}

.ec-select select {
    background-color: #fff;
    width: 190px
}

.ec-numberInput input {
    margin-bottom: 0;
    text-align: center
}

.ec-numberInput.is-fixed {
    bottom: 0;
    display: flex;
    left: 0;
    padding-bottom: 12px !important;
    padding-top: 12px !important;
    position: fixed;
    width: 100%
}

.ec-numberInput.is-fixed .c-well-inner {
    display: flex;
    margin: 0 auto;
    min-width: 960px;
    width: 1100px
}

.c-item-none {
    display: none
}

.ec-select2__text {
    font-size: 15px
}

.c-well-sp-modal {
    bottom: 0;
    display: flex;
    left: 0;
    padding-bottom: 12px !important;
    padding-top: 12px !important;
    position: fixed;
    width: 100%
}

.c-well-sp-trigger {
    z-index: 12
}

.c-navRole {
    box-sizing: border-box;
    color: #333;
    line-height: 1.4;
    margin: 0 auto;
    width: 100%;
    margin-bottom: 20px
}

.c-navRole--bordered {
    border-bottom: 1px solid #c5c4c5;
    padding-bottom: 20px
}

.c-navRole__infos {
    align-items: baseline;
    box-sizing: border-box;
    color: #333;
    display: flex;
    flex-direction: row;
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 16px;
    margin: 0 auto;
    padding-top: 5px;
    width: 100%
}

.c-navRole__counter, .c-navRole__title {
    margin-bottom: 16px;
    width: 100%;
    font-size: 16px
}

.c-navRole__actions {
    text-align: right;
    width: 100%
}

.ec-select-wrap {
    justify-content: flex-end
}

.c-rules p {
    font-size: 18px;
    line-height: 1.75
}

.c-rules p+p {
    margin-top: 31px
}

.c-title {
    margin-top: 39px;
    font-size: 22px;
    font-weight: 700
}

.c-title+p {
    margin-top: 31px
}

.c-title__ul {
    margin-top: 31px
}

.c-title__ul li {
    list-style: disc;
    font-size: 18px;
    margin-left: 20px;
    line-height: 1.75
}

.c-title__ul+p {
    margin-top: 31px
}

.c-box {
    box-shadow: 0 0 4px 4px rgba(104, 104, 104, .1);
    padding: 40px;
    box-sizing: border-box;
    margin-bottom: 100px;
    background: #fff
}

.c-box--fullpage {
    width: 962px
}

.c-title-section:first-child {
    margin-top: 0
}

.c-side {
    position: fixed;
    z-index: 999;
    pointer-events: none
}

.c-side-cart {
    pointer-events: auto;
    width: 180px;
    height: 180px;
    background: url(../img/common/cart_bg.svg) no-repeat center/contain;
    position: relative;
    padding-top: 1px
}

.c-side-cart__cart {
    position: absolute;
    width: 76px;
    height: 71px;
    top: 37px;
    left: 50px;
    z-index: 1;
    background: url(../img/common/cart.svg) no-repeat center/contain
}

.c-side-cart__quantity, .c-side-cart__total {
    display: block;
    font-weight: 700;
    position: relative;
    text-align: center;
    z-index: 2;
    width: 100%
}

.c-side-cart__quantity {
    color: #fff;
    margin-top: 50px;
    font-size: 20px;
    left: 3px
}

.c-side-cart__total {
    font-size: 24px;
    margin-top: 27px
}

.c-side-cart__total small {
    font-size: 18px;
    font-weight: inherit;
    margin-right: 6px
}

.c-side-social {
    pointer-events: auto;
    padding: 5px;
    background-color: #fff;
    box-shadow: 0 0 4px 4px rgba(104, 104, 104, .1);
    margin-top: 15px;
    width: 70px;
    box-sizing: border-box
}

.c-side-social__item {
    width: 100%;
    height: 69px;
    display: flex;
    justify-content: center;
    align-items: center
}

.c-side-social__item__icon {
    width: 40px;
    height: 40px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain
}

.c-side-social__item__icon--line {
    background-image: url(../img/common/social-line.svg)
}

.c-side-social__item__icon--fb {
    background-image: url(../img/common/social-fb.svg)
}

.c-side-social__item__icon--tw {
    background-image: url(../img/common/social-tw.svg)
}

.c-side-social__item__icon--in {
    background-image: url(../img/common/social-in.png)
}

.c-hr {
    border-top-width: 2px;
    border-top-color: #ccc;
    margin-top: 50px
}

.top-mv, .top-mv__slider__slide {
    width: 100%;
    height: 300px
}

.top-mv__slider {
    margin-bottom: 0 !important
}

.top-mv__slider .slick-dots {
    bottom: 10px
}

.top-mv__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover"
}

.top-bignews__area {
    margin: 0 auto;
    background: #fff;
    padding: 20px
}

.top-bignews__title {
    color: #de5d50;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 7px
}

.top-news {
    border: 1px solid #d9d9d9;
    display: flex;
    padding: 17px 27px;
    margin-top: 35px
}

.top-news__title {
    font-size: 17px;
    font-weight: 700;
    color: #000;
    padding-right: 27px;
    border-right: 1px solid #d9d9d9;
    line-height: 1;
    box-sizing: border-box;
    width: 106px;
    flex: 0 0 106px
}

.top-news__title__more {
    font-weight: 400;
    font-size: 16px
}

.top-news__body {
    width: auto;
    flex: 1 1 auto;
    box-sizing: border-box;
    padding-left: 27px
}

.top-news-item {
    display: flex;
    line-height: 1.2;
    width: auto
}

.top-news-item__date {
    font-size: 16px;
    padding-right: 30px
}

.top-news-item__content {
    font-size: 18px
}

.top-news-item__more {
    color: #333;
    margin-left: auto;
    font-size: 16px;
    width: 80px;
    flex: 0 0 80px
}

.top-item-section, .product-item-section {
    padding: 47px 0;
    position: relative
}

.top-item-section:nth-child(odd), .product-item-section:nth-child(odd) {
    background-color: #f9f9f9
}

.top-item-section:nth-child(odd):after, .product-item-section:nth-child(odd):after {
    content: '';
    display: block;
    background-image: linear-gradient(90deg, #f2f2f2 25%, #f9f9f9 25%, #f9f9f9 50%, #f2f2f2 50%, #f2f2f2 75%, #f9f9f9 75%, #f9f9f9 100%);
    background-size: 64.00px 64.00px;
    height: 16px;
    bottom: 100%;
    left: 0;
    width: 100%;
    position: absolute
}

.top-item-section:nth-child(even), .product-item-section:nth-child(even) {
    background-color: #f2f2f2
}

.top-item-section:nth-child(even):after, .product-item-section:nth-child(even):after {
    content: '';
    display: block;
    background-image: linear-gradient(90deg, #f9f9f9 25%, #f2f2f2 25%, #f2f2f2 50%, #f9f9f9 50%, #f9f9f9 75%, #f2f2f2 75%, #f2f2f2 100%);
    background-size: 64.00px 64.00px;
    height: 16px;
    bottom: 100%;
    left: 0;
    width: 100%;
    position: absolute
}

.top-item-section:first-child:after, .product-item-section:first-child:after {
    display: none
}

.top-item-section--bg-gray {
    background-color: #f8f8f8
}

.top-item-section__title {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 60px;
    background-position: center top;
    background-repeat: no-repeat
}

.top-item-section__title--favorite {
    background-image: url(/html/user_data/assets/img/top/icon_crown.svg);
    background-size: 64px auto
}

.top-item-section__title--10 {
    background-image: url(/html/user_data/assets/img/top/icon_tableware.svg);
    background-size: 82px auto
}

.top-item-section__title--7 {
    background-image: url(/html/user_data/assets/img/top/icon_flower.svg);
    background-size: 82px auto
}

.top-item-section__title--8 {
    background-image: url(/html/user_data/assets/img/top/icon_goods.svg);
    background-size: 52px auto
}

.top-item-section__title--9 {
    background-image: url(/html/user_data/assets/img/top/icon_fashion.svg);
    background-size: 26px auto
}

.top-item-section__title__text {
    font-size: 32px;
    font-weight: 700;
    border-top: 3px solid #333;
    padding-top: 10px
}

.top-item-section__button-sp {
    color: #333;
    background-color: #d9d9d9;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 700;
    width: 100%;
    display: block;
    text-align: center;
    padding: 8px 15px;
    margin-top: 4px
}

.top-main-visual {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 50px
}

.top-smilesnack-wrapper {
    width: 992px;
    margin: 0 auto
}

.top-smilesnack-container {
    background-image: url(/html/user_data/assets/img/top/bg_smilesnac.png);
    background-repeat: repeat-y;
    padding-bottom: 20px;
    background-size: 960px auto
}

.top-smilesnack-container__lead {
    padding: 40px 100px 0;
    margin-bottom: 40px;
    font-size: 20px;
    font-weight: 700
}

.top-smilesnack-container__image {
    padding: 0 80px
}

.top-smilesnack-container__result {
    font-size: 32px;
    line-height: 1.2;
    text-align: center;
    border-bottom: 4px solid #000;
    padding-bottom: 20px;
    width: 780px;
    margin: 20px auto 50px
}

.top-smilesnack-container__result__number {
    font-size: 96px;
    color: #a5be51
}

.top-smilesnack-container__buttons {
    display: flex;
    align-items: center;
    justify-content: center
}

.top-smilesnack-container__buttons>.top-more-button {
    margin: 0
}

.top-smilesnack-container__buttons>.top-more-button+.top-more-button {
    margin-left: 20px
}

.top-section-1 {
    background-color: #f9f9f9;
    overflow: hidden;
    position: relative;
    padding-bottom: 100px
}

.top-section-1:after {
    content: '';
    z-index: 1;
    position: absolute;
    width: 150%;
    height: 190%;
    background-color: #f6f1ee;
    border-radius: 100%;
    top: -95%;
    left: -25%
}

.top-section-1>* {
    position: relative;
    z-index: 50
}

.top-smilesnack-bg {
    background-image: linear-gradient(120deg, #fee2ed 12.5%, #fed5e5 12.5%, #fed5e5 25%, #fff2f7 25%, #fff2f7 37.5%, #fed5e5 37.5%, #fed5e5 50%, #fee2ed 50%, #fee2ed 62.5%, #fed5e5 62.5%, #fed5e5 75%, #fff2f7 75%, #fff2f7 87.5%, #fed5e5 87.5%, #fed5e5 100%);
    background-size: 46.19px 80.00px;
    padding: 40px 0 70px;
    box-shadow: 0 3px 3px 0 #bcbcbc;
    position: relative;
    z-index: 1
}

.top-other-section {
    background-color: #f6f1ee;
    padding: 60px 80px
}

.top-information-title {
    width: 100%;
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px
}

.top-information-box {
    border-top: 2px solid #333;
    border-bottom: 2px solid #333;
    padding: 30px 0;
    display: flex;
    justify-content: space-between
}

.top-information-box__btn {
    margin-top: auto !important
}

.top-information-box__section {
    width: 48%
}

.top-information-box__section__title {
    text-align: center;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 700
}

.top-information-link {
    display: flex;
    font-size: 16px;
    color: #333;
    padding: 15px 0;
    border-bottom: 1px solid #ccc;
    font-weight: 700
}

.top-information-link__date {
    width: 100px
}

.top-information-link__text {
    width: calc(100% - 100px)
}

.top-more-button {
    background-color: #333;
    position: relative;
    text-align: center;
    color: #fff;
    border-radius: 50px;
    font-size: 16px;
    display: block;
    width: 240px;
    margin: 0 auto;
    padding: 15px 0;
    font-weight: 700
}

.top-more-button:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: inherit
}

.top-more-button:hover {
    color: #fff
}

.top-more-button:after {
    content: '\f054'
}

.top-snack-text {
    padding: 25px 20px 0
}

.top-snack-text__circle-word {
    font-size: 19px;
    font-weight: 700;
    background-color: #a5be51;
    border-radius: 30px;
    width: 30px;
    height: 30px;
    display: inline-block;
    text-align: center;
    line-height: 1;
    padding-top: 5px;
    color: #fff
}

.top-snack-text__counter {
    border: 2px solid #a5be51;
    background-color: #fff;
    text-align: center;
    padding: 5px 0 10px;
    font-weight: 700;
    font-size: 20px;
    line-height: 1
}

.top-snack-text__counter__number {
    font-size: 72px;
    font-weight: 400
}

.top-snack-text__info {
    font-size: 18px
}

.top-snack-text__info__date {
    font-size: 14px
}

.top-instagram-title {
    text-align: center;
    font-weight: 500;
    font-size: 19px
}

.top-instagram-title:before {
    content: '';
    width: 50px;
    height: 50px;
    background-image: url(../img/common/social-in.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    margin: 40px auto 16px
}

.top-smile-img {
    width: 613px;
    height: auto;
    margin: 40px auto 0;
    display: block
}

.about-grid__title {
    font-size: 29px;
    line-height: 1.7;
    font-weight: 700
}

.about-app__item {
    display: flex;
    align-items: flex-end
}

.about-app__item__data__name {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 7px;
    line-height: 1.5
}

.about-app__item__data__btn {
    width: auto;
    height: 60px;
    display: block
}

.about-app__item__data__btn img {
    max-width: 100%;
    max-height: 100%
}

.about-app__item__qr {
    width: 120px;
    height: 120px;
    position: relative;
    margin-left: 30px;
    border: 2px solid #000
}

.about-app__item__qr img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    font-family: "object-fit: contain";
    -ms-interpolation-mode: nearest-neighbor;
    image-rendering: pixelated
}

.donation-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 29px
}

.donation-nav__item {
    margin: 7px 10px
}

.donation-nav__item img {
    max-width: 205px;
    max-height: 87px;
    display: block;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.donation-nav__item--wide img {
    max-width: 225px
}

.donation-org {
    padding: 50px 0 60px
}

.donation-org__aside {
    padding-top: 74px
}

.donation-org__content {
    width: 615px
}

.donation-org__content .c-title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 26px;
    line-height: 1.5
}

.donation-org__price {
    width: 100%;
    height: auto;
    padding: 26px 40px 26px 29px;
    background: #f5f5f5;
    margin-top: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.donation-org__price__text {
    color: #525263;
    font-weight: 700;
    font-size: 20px
}

.donation-org__price__money {
    font-size: 28px;
    font-weight: 700
}

.donation-org__price__money__ammount {
    color: #0dcba9;
    font-size: 1.286em;
    margin-right: .357em
}

.donation-org__photos {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 55px
}

.donation-org__photos__photo {
    width: 167px;
    height: 111px;
    position: relative;
    margin: 5px
}

.donation-org__photos__photo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.donation-org .c-info {
    padding: 12px 0;
    border-bottom: 1px solid #c5c4c5
}

.donation-org .c-info+.c-info {
    border-top: none
}

.donation-org .c-info__date {
    width: 80px
}

.donation-org .c-info__content, .donation-org .c-info-faq__header__content, .donation-org .c-info-guide__header__content {
    width: 100%;
    padding-right: 0
}

.donation-org .c-info__text {
    color: #33a8d0;
    font-size: 16px;
    margin-left: 19px
}

.donation-org .c-info__text .far {
    color: #ff2116;
    font-size: 1.125em;
    margin-left: .7em
}

.donation-org .c-info-wrap {
    margin-top: 6px
}

.shokudo-region {
    display: flex
}

.shokudo-region__img {
    width: 40%;
    padding-right: 20px
}

.shokudo-region__img img {
    max-width: 100%
}

.shokudo-region__table {
    width: 60%
}

.shokudo-region__table__links {
    display: flex;
    flex-wrap: wrap
}

.shokudo-region__table__links a {
    font-weight: 700;
    margin: 2px 10px;
    font-size: 18px
}

.shokudo-region__table .c-table {
    width: 100%;
    border-width: 2px
}

.shokudo-region__table .c-table__th, .shokudo-region__table .c-table__td {
    border-width: 2px;
    padding: 12px;
    font-weight: 700;
    font-size: 18px
}

.shokudo-region__table .c-table__th {
    text-align: center;
    font-weight: 700;
    width: 130px
}

.shokudo-filter {
    display: flex;
    margin-top: 25px;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-left: -20px
}

.shokudo-filter__item {
    margin: 5px 20px
}

.shokudo-filter__item .c-checkbox+label {
    font-size: 20px
}

.shokudo-org {
    flex-wrap: wrap;
    justify-content: space-between
}

.shokudo-org:last-child {
    border-bottom: none;
    padding-bottom: 0
}

.shokudo-org p {
    font-size: 18px;
    line-height: 1.5
}

.shokudo-org p+p {
    margin-top: 40px
}

.shokudo-org__body {
    overflow: hidden;
    transition: height 300ms linear;
    padding-top: 1px
}

.shokudo-org__header {
    width: 100%;
    margin-bottom: 30px
}

.shokudo-org__header__date {
    font-size: 18px;
    line-height: 1.5
}

.shokudo-org__header__title {
    margin-top: 12px;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700
}

.shokudo-org__header__arrow {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/icon/arrow_circle_right.svg);
    margin-right: 13px;
    transition: transform 300ms linear;
    transform: rotate(90deg)
}

.entry-dl-wrap {
    width: 360px;
    margin-top: 20px;
    margin-bottom: 20px
}

.entry-dl-wrap dl {
    border-bottom: none;
    padding: 6px 0
}

.entry-dl-wrap dt {
    width: 21%
}

.entry-dl-wrap dd {
    width: 79%
}

.entry-dl-wrap label {
    font-size: 18px
}

.entry-dl-wrap .ec-input:last-child input {
    margin-bottom: 0
}

.entry-confirm {
    margin-top: 30px
}

.entry-confirm__value {
    font-size: 18px;
    font-weight: 700;
    line-height: 2.2 !important
}

.entry-confirm .ec-borderedDefs dl {
    padding-top: 14px
}

.cart-basket, .cart-form {
    color: #525263
}

.cart-basket__header {
    background-color: #f3f3f3;
    padding: 18px 0
}

.cart-basket__header .cart-basket__cell {
    text-align: center;
    font-size: 16px
}

.cart-basket__body .cart-basket__row {
    padding: 33px 0
}

.cart-basket__body .cart-basket__cell--money {
    font-size: 18px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 600
}

.cart-basket__row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px dotted #c5c4c5
}

.cart-basket__header .cart-basket__row {
    border-bottom: none
}

.cart-basket__cell {
    padding: 0 13px;
    box-sizing: border-box;
    width: auto
}

.cart-basket__cell--erase {
    display: flex;
    align-items: center;
    justify-content: left;
    width: 53px;
    padding-right: 0
}

.cart-basket__cell--erase .fas {
    color: #b8bec4;
    font-size: 23px
}

.cart-basket__cell--product {
    width: 400px
}

.cart-basket__cell--support {
    width: 220px
}

.cart-basket__cell--ammount {
    width: 90px
}

.cart-basket__cell--money {
    width: 100px
}

.cart-basket__cell--total {
    width: 331px;
    flex: 0 0 331px;
    padding: 33px 13px 0
}

.cart-basket__cell__title {
    font-weight: 700;
    padding-left: 25px;
    padding-right: 10px;
    font-size: 16px;
    box-sizing: border-box;
    width: 110px
}

.cart-basket__ammount {
    display: flex;
    align-items: center;
    flex-direction: column
}

.cart-basket__ammount__num {
    font-size: 24px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700
}

.cart-basket__ammount__controls__button {
    width: 30px;
    height: 30px;
    appearance: none;
    background: #fff;
    border: 2px solid #b8bec4;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center
}

.cart-basket__ammount__controls__button:not(.cart-basket__ammount__controls__button--disabled):hover {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms
}

.cart-basket__ammount__controls__button:hover {
    text-decoration: none
}

.cart-basket__ammount__controls__button:focus {
    outline: none;
    text-decoration: none
}

.cart-basket__ammount__controls__button .fas {
    font-size: 16px;
    color: #525263
}

.cart-basket__ammount__controls__button--disabled .fas {
    color: #b8bec4
}

.cart-basket__support {
    font-size: 16px
}

.cart-basket__support__title {
    font-size: 16px;
    font-weight: 600
}

.cart-basket__support__detail {
    font-size: inherit;
    margin-top: 7px;
    font-size: 15px
}

.cart-basket__support__detail__money {
    color: #970303;
    font-weight: 700
}

.cart-basket__product {
    display: flex;
    align-items: flex-start
}

.cart-basket__product__img {
    width: 90px;
    height: 90px;
    display: block;
    margin-right: 15px;
    position: relative;
    flex: 0 0 100px
}

.cart-basket__product__img img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.cart-basket__product__link {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.7
}

.cart-basket__total {
    padding: 0 13px;
    display: flex;
    flex-wrap: wrap
}

.cart-basket__total__title, .cart-basket__total__ammount {
    font-size: 16px;
    margin-bottom: 20px
}

.cart-basket__total__title.u-fwBold, .cart-basket__total__ammount.u-fwBold {
    font-size: 30px
}

.cart-basket__total__title {
    width: 40%;
    flex: 1 0 40%;
    text-align: left
}

.cart-basket__total__ammount {
    width: 60%;
    flex: 1 0 60%;
    text-align: right
}

.cart-form__time {
    display: flex;
    align-items: center;
    margin-top: 20px
}

.cart-form__time .c-title {
    font-size: 16px;
    font-weight: 700
}

.cart-form__time .ec-select {
    margin-left: 15px
}

.mypage-wrap {
    display: flex;
    justify-content: space-between
}

.mypage-nav {
    width: 160px;
    flex: 0 0 160px;
    margin-right: 30px
}

.mypage-nav__link {
    display: block;
    color: #000;
    font-weight: 700;
    padding: 12.5px 0;
    font-size: 16px
}

.mypage-nav__link.is-current {
    color: #dd5d50
}

.mypage-content {
    width: auto;
    flex: 1 1 812px
}

.mypage-top-banner {
    border-radius: 0;
    padding: 20px 24px
}

.mypage-top-banner__title {
    color: #333;
    display: flex;
    justify-content: space-between;
    align-items: baseline
}

.mypage-top-banner__title .c-title {
    font-size: 18px;
    font-weight: 700
}

.mypage-top-banner__title a {
    font-size: 16px
}

.mypage-top-banner__content {
    display: flex;
    justify-content: space-between;
    margin-top: 10px
}

.mypage-top-banner__content__cell {
    width: calc(50% - 16px)
}

.mypage-top-banner__points {
    background-color: #fff;
    padding: 22px;
    display: flex;
    align-items: baseline
}

.mypage-top-banner__points__pmark {
    width: 42px;
    height: 42px;
    background: url(../img/common/point.png) no-repeat center/contain;
    display: flex;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-weight: 700;
    font-size: 22px;
    text-indent: -9999px
}

.mypage-top-banner__points__text {
    color: #656565;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    margin-left: 16px
}

.mypage-top-banner__points__num {
    color: #333;
    font-size: 28px;
    letter-spacing: .03em;
    font-weight: 600;
    margin-left: auto
}

.mypage-top-banner__points__num small {
    font-size: .714em
}

.mypage-top-nav {
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
    width: auto;
    flex-wrap: wrap;
    margin-top: 40px
}

.mypage-top-nav__link {
    margin: 10px;
    display: flex;
    width: calc(50% - 20px);
    flex-basis: calc(50% - 20px);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #000;
    padding: 18px;
    border: 1px solid #525263;
    min-height: 200px
}

.mypage-top-nav__link:hover {
    color: #000;
    text-decoration: none
}

.mypage-top-nav__link__title {
    font-size: 26px;
    font-weight: 700
}

.mypage-top-nav__link__text {
    margin-top: 25px;
    line-height: 2;
    text-align: center
}

.mypage-address {
    padding: 18px;
    display: flex;
    border-bottom: 1px dotted #b8bec4
}

.mypage-address:first-child {
    border-top: 1px dotted #b8bec4
}

.mypage-address__text {
    font-size: 16px;
    line-height: 1.5
}

.mypage-address__remove {
    margin-right: 79px;
    display: flex;
    align-items: center;
    justify-content: center
}

.mypage-address__remove__button {
    appearance: none !important;
    padding: 0;
    border: none;
    color: #b8bec4
}

.mypage-address__remove__button:hover {
    color: #b8bec4
}

.mypage-address__remove__button .fas {
    font-size: 30px
}

.mypage-address__actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    min-width: 66px
}

.mypage-unsubscribe {
    text-align: center;
    margin-top: 10px
}

.mypage-unsubscribe__icon .fas {
    font-size: 85px;
    color: #e7e7e7
}

.mypage-unsubscribe .c-title {
    margin-top: 32px;
    font-weight: 700
}

.mypage-unsubscribe p {
    margin-top: 20px;
    font-size: 18px
}

.mypage-support-mv {
    width: 100%;
    padding: 70px 60px;
    background: url(../img/mypage/support.jpg) no-repeat center/cover;
    margin-bottom: 20px
}

.mypage-support-mv__content {
    background: rgba(255, 255, 255, .7);
    padding: 55px;
    text-align: center
}

.mypage-support-mv__content__text {
    font-size: 26px;
    font-weight: 700
}

.mypage-support-mv__content__ammount {
    font-size: 33px;
    font-weight: 700;
    margin-top: 26px
}

.mypage-support-mv__content__ammount__num {
    color: #df5d50
}

#tbl_point_log {
    margin-top: 20px
}

#tbl_point_log td.text-right, #tbl_point_log th.text-right {
    padding-left: 0
}

#tbl_point_log th:nth-child(2) {
    width: 50% !important
}

#tbl_point_log td:first-child {
    color: #000
}

#tbl_point_log td:nth-child(2) {
    color: #333
}

#tbl_point_log td:nth-last-child(1), #tbl_point_log td:nth-last-child(2) {
    color: #000;
    font-weight: 700
}

#tbl_support td.text-right, #tbl_support th.text-right {
    padding-left: 0
}

#tbl_support th:first-child {
    width: 170px
}

#tbl_support th:last-child {
    width: 115px
}

#tbl_support td:first-child {
    color: #000
}

#tbl_support td:nth-child(2) {
    color: #333
}

#tbl_support td:nth-last-child(1) {
    color: #000;
    font-weight: 700
}

.ec-favoriteRole__itemList {
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap
}

.ec-favoriteRole__item {
    width: 32%;
    margin-right: 2%
}

.support-companies {
    width: 100%;
    box-sizing: border-box
}

.support-companies__flex {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px
}

.support-companies__item {
    border: 1px solid #e6e6e6;
    margin: 10px;
    width: calc(33.334% - 20px);
    flex: 0 0 calc(33.333% - 20px);
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    padding: 15px 5px 5px;
    color: inherit;
    box-sizing: border-box
}

.support-companies__item__img {
    margin-bottom: 5px;
    width: 157px;
    height: 73px;
    object-fit: contain;
    font-family: "object-fit: contain"
}

.support-companies__item__text {
    font-size: 12px;
    color: inherit
}

.support-companies__item:hover .support-companies__item__text {
    color: #333
}

.support-maker {
    display: flex;
    flex-wrap: wrap
}

.support-maker__item {
    margin-bottom: 21px;
    flex: 0 0 50%;
    font-size: 16px;
    font-weight: 700;
    box-sizing: border-box;
    padding-left: 50px
}

.support-maker__item a {
    color: inherit;
    font-size: inherit;
    font-weight: inherit
}

.support-sdg {
    margin-top: 20px;
    margin-left: -6px;
    margin-right: -6px;
    display: flex;
    flex-wrap: wrap
}

.support-sdg__goal {
    margin-left: -4px;
    margin-right: -4px;
    width: 115px;
    height: auto;
    margin: 4px
}

.support-sdg__goal img {
    width: 100%;
    height: auto
}

.guide-search .ec-input {
    position: relative
}

.guide-search .search-name {
    padding-top: 8px;
    padding-bottom: 8px;
    height: 50px;
    border-radius: 4px
}

.guide-search__keywordBtn {
    border: 0;
    background: none;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-55%);
    display: block;
    white-space: nowrap;
    z-index: 1
}

.guide-search__keywordBtn .ec-icon {
    width: 22px;
    height: 22px
}

.child-title {
    text-align: center;
    margin-bottom: 30px
}

.child-title img {
    transform: translateX(60px)
}

.child-lead {
    width: 720px;
    margin: 0 auto 40px;
    font-size: 16px
}

.child-term-select {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 20px 0;
    display: flex;
    justify-content: center;
    margin-bottom: 30px
}

.child-term-select__link {
    color: inherit;
    font-size: 16px
}

.child-term-select__link:before {
    content: '';
    display: inline-block;
    background-color: #ffd5e5;
    border: 1px solid #ccc;
    width: 24px;
    height: 24px;
    border-radius: 12px;
    margin-right: 10px;
    vertical-align: bottom
}

.child-term-select__link+.child-term-select__link {
    margin-left: 20px
}

.child-area-selector {
    position: relative;
    width: 100%;
    background-color: #fff;
    border: 1px solid #ccc;
    font-size: 16px;
    padding: 5px 0;
    text-align: center;
    border-radius: 20px;
    cursor: pointer
}

.child-area-selector.is-active {
    border-radius: 20px 20px 0 0
}

.child-area-selector.is-active>.child-area-selector__body {
    display: flex
}

.child-area-selector:after {
    content: '▼';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    font-size: 10px
}

.child-area-selector__body {
    display: none;
    position: absolute;
    top: 100%;
    left: -1px;
    background-color: #fff;
    border: 1px solid #ccc;
    width: calc(100% + 2px);
    padding: 10px;
    flex-wrap: wrap;
    z-index: 1
}

.child-area-selector__body a {
    display: block;
    width: 50%;
    color: inherit;
    font-size: 16px;
    text-align: left
}

.child-area-selector__body a:before {
    content: '・'
}

.child-term-select-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px
}

.child-term-select-wrapper>* {
    width: 23%
}

.child-term-select-wrapper>*:nth-child(n+5) {
    margin-top: 20px
}

.child-area-title {
    padding-top: 60px;
    background-image: url(/html/user_data/assets/img/childcafeteria/img_character.svg);
    background-size: 125px auto;
    background-repeat: no-repeat;
    background-position: center top;
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px
}

.child-delivery-title {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 15px 0;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 40px;
    line-height: 1
}

.child-delivery-title span {
    font-size: 32px;
    color: #e7be00
}

.child-report+.child-report {
    margin-top: 40px
}

.child-report__img {
    transform: scale(1.01)
}

.child-report__inner {
    background-color: #fff;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .15)
}

.child-report__header {
    cursor: pointer;
    padding: 10px 110px 30px 40px;
    position: relative
}

.child-report__header__date {
    font-size: 16px
}

.child-report__header__title {
    font-size: 28px;
    font-weight: 700
}

.child-report__header__toggle {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 30px
}

.child-report__header__toggle img:nth-child(2) {
    display: none
}

.child-report__header.is-active .child-report__header__toggle img:nth-child(1) {
    display: none
}

.child-report__header.is-active .child-report__header__toggle img:nth-child(2) {
    display: inline
}

.child-report__body {
    padding: 20px 40px 40px;
    display: none
}

.child-report__column {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px
}

.child-report__column__thumbnail {
    width: 320px
}

.child-report__column__caption {
    width: 490px;
    font-size: 16px
}

.child-report__thumbnails {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px
}

.child-report__thumbnails__item {
    width: calc(25% - 3px);
    margin-right: 4px
}

.child-report__thumbnails__item.is-active {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"
}

.child-report__thumbnails__item:nth-child(4n) {
    margin-right: 0
}

.child-report__thumbnails__item:nth-child(n+5) {
    margin-top: 4px
}

.child-report__thumbnails__item img {
    width: 100%;
    height: auto
}

.child-report__comment-title {
    font-size: 16px;
    font-weight: 700;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 30px
}

.child-report__comment {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.child-report__comment__avatar {
    width: 80px;
    height: auto
}

.child-report__comment__body {
    width: calc(100% - 100px);
    border: 1px solid #e7be00;
    background-color: #fdf8e5;
    padding: 15px;
    border-radius: 6px;
    position: relative
}

.child-report__comment__body:before {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8.5px 14.7px 8.5px 0;
    border-color: transparent #e7be00 transparent transparent
}

.child-report__comment__body:after {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.5px 13.0px 7.5px 0;
    border-color: transparent #fdf8e5 transparent transparent
}

.child-report__producer-comment-title {
    font-size: 16px;
    font-weight: 700;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-top: 60px;
    margin-bottom: 30px;
}

.child-report__producer-comment {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.child-report__producer-comment__profile {
    display: block;
    text-align: center;
}

.child-report__producer-comment__avatar {
    width: 80px;
    height: auto
}

.child-report__producer-comment__name {
    margin: 5px auto;
    font-size: 12px;
}

.child-report__producer-comment__body {
    flex: 1;
    max-width: calc(100% - 100px);
    border: 1px solid #0080e8;
    background-color: #deebf5;
    padding: 15px;
    margin-left: 15px;
    border-radius: 6px;
    position: relative
}

.child-report__producer-comment__body:before {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8.5px 14.7px 8.5px 0;
    border-color: transparent #0080e8 transparent transparent
}

.child-report__producer-comment__body:after {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.5px 13.0px 7.5px 0;
    border-color: transparent #deebf5 transparent transparent
}

.c-sanchoku-about__title {
    border-bottom: 3px solid #16a96b;
    text-align: center;
    font-size: 30px;
    line-height: 1.4;
    padding-bottom: 15px;
    margin: 0 auto 30px;
    font-weight: 700
}

.c-sanchoku-about__inner {
    margin: 0 auto 40px
}

.c-sanchoku-about__inner__txt-image {
    display: block;
    margin-bottom: 20px
}

.c-sanchoku-about__inner__about-text {
    font-weight: 700;
    text-align: center
}

.c-sanchoku-about__inner__logo {
    display: block;
    width: 203px;
    margin: 0 auto 40px
}

.c-sanchoku-about__inner__logo__image {
    width: 100%
}

.c-sanchoku-about__pdf {
    margin: 0 auto 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ccc
}

.c-sanchoku-about__pdf__link {
    display: block
}

.c-sanchoku-about__form {
    margin: 0 auto
}

.c-sanchoku-point {
    border-top: solid 1px #ccc;
    padding: 30px 0;
    margin: 30px auto
}

.c-sanchoku-point__title {
    font-weight: 700;
    font-size: 40px;
    text-align: center;
    margin-bottom: 40px
}

.c-sanchoku-point__box {
    margin-bottom: 40px
}

.c-sanchoku-point__box__ball {
    background: #16a96b;
    border-radius: 50%;
    width: 72px;
    height: 72px;
    text-align: center;
    padding: 10px;
    margin: 0 auto 20px
}

.c-sanchoku-point__box__ball__point-text {
    color: #fff;
    font-size: 12px;
    font-weight: 700
}

.c-sanchoku-point__box__ball__point-number {
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1
}

.c-sanchoku-point__box__title {
    font-weight: 700;
    font-size: 36px;
    text-align: center;
    margin-bottom: 20px
}

.c-sanchoku-point__box__title__green-bold {
    color: #16a96b
}

.c-sanchoku-point__box__small-text {
    width: 637px;
    margin: 0 auto;
    font-size: 16px
}

.c-sanchoku-point__box__small-text__red-bold {
    color: red;
    font-weight: 700
}

.c-sanchoku-describe {
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    padding: 30px 0;
    margin: 30px auto
}

.c-sanchoku-describe__box {
    margin-bottom: 40px;
    text-align: center
}

.c-sanchoku-describe__box__title {
    text-align: center;
    font-weight: 700;
    font-size: 32px;
    margin-bottom: 20px
}

.c-sanchoku-describe__box__movie {
    width: 720px;
    display: block;
    margin: 0 auto
}

.c-sanchoku-describe__feature {
    border-top: solid 1px #ccc;
    padding: 40px 0;
    display: flex;
    justify-content: space-between
}

.c-sanchoku-describe__feature__box__upper-part {
    text-align: center;
    border-bottom: solid 2px black;
    margin-bottom: 10px
}

.c-sanchoku-describe__feature__box__upper-part__small-text {
    font-weight: 700;
    color: #16a96b;
    font-size: 24px
}

.c-sanchoku-describe__feature__box__upper-part__large-text {
    font-size: 88px;
    font-weight: 700;
    color: #16a96b;
    margin-bottom: 20px;
    line-height: 1
}

.c-sanchoku-describe__feature__box__upper-part__middle-text {
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 10px
}

.c-sanchoku-describe__feature__box__low-part {
    margin-bottom: 20px
}

.c-sanchoku-describe__feature__box__image-part__image-small {
    position: absolute;
    top: -20px;
    right: -20px
}

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%
}

.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%
}

.u-mt0 {
    margin-top: 0 !important
}

.u-mr0 {
    margin-right: 0 !important
}

.u-mb0 {
    margin-bottom: 0 !important
}

.u-ml0 {
    margin-left: 0 !important
}

.u-pt0 {
    padding-top: 0 !important
}

.u-pr0 {
    padding-right: 0 !important
}

.u-pb0 {
    padding-bottom: 0 !important
}

.u-pl0 {
    padding-left: 0 !important
}

.u-mt5 {
    margin-top: 5px !important
}

.u-mr5 {
    margin-right: 5px !important
}

.u-mb5 {
    margin-bottom: 5px !important
}

.u-ml5 {
    margin-left: 5px !important
}

.u-pt5 {
    padding-top: 5px !important
}

.u-pr5 {
    padding-right: 5px !important
}

.u-pb5 {
    padding-bottom: 5px !important
}

.u-pl5 {
    padding-left: 5px !important
}

.u-mt10 {
    margin-top: 10px !important
}

.u-mr10 {
    margin-right: 10px !important
}

.u-mb10 {
    margin-bottom: 10px !important
}

.u-ml10 {
    margin-left: 10px !important
}

.u-pt10 {
    padding-top: 10px !important
}

.u-pr10 {
    padding-right: 10px !important
}

.u-pb10 {
    padding-bottom: 10px !important
}

.u-pl10 {
    padding-left: 10px !important
}

.u-mt15 {
    margin-top: 15px !important
}

.u-mr15 {
    margin-right: 15px !important
}

.u-mb15 {
    margin-bottom: 15px !important
}

.u-ml15 {
    margin-left: 15px !important
}

.u-pt15 {
    padding-top: 15px !important
}

.u-pr15 {
    padding-right: 15px !important
}

.u-pb15 {
    padding-bottom: 15px !important
}

.u-pl15 {
    padding-left: 15px !important
}

.u-mt20 {
    margin-top: 20px !important
}

.u-mr20 {
    margin-right: 20px !important
}

.u-mb20 {
    margin-bottom: 20px !important
}

.u-ml20 {
    margin-left: 20px !important
}

.u-pt20 {
    padding-top: 20px !important
}

.u-pr20 {
    padding-right: 20px !important
}

.u-pb20 {
    padding-bottom: 20px !important
}

.u-pl20 {
    padding-left: 20px !important
}

.u-mt25 {
    margin-top: 25px !important
}

.u-mr25 {
    margin-right: 25px !important
}

.u-mb25 {
    margin-bottom: 25px !important
}

.u-ml25 {
    margin-left: 25px !important
}

.u-pt25 {
    padding-top: 25px !important
}

.u-pr25 {
    padding-right: 25px !important
}

.u-pb25 {
    padding-bottom: 25px !important
}

.u-pl25 {
    padding-left: 25px !important
}

.u-mt30 {
    margin-top: 30px !important
}

.u-mr30 {
    margin-right: 30px !important
}

.u-mb30 {
    margin-bottom: 30px !important
}

.u-ml30 {
    margin-left: 30px !important
}

.u-pt30 {
    padding-top: 30px !important
}

.u-pr30 {
    padding-right: 30px !important
}

.u-pb30 {
    padding-bottom: 30px !important
}

.u-pl30 {
    padding-left: 30px !important
}

.u-mt35 {
    margin-top: 35px !important
}

.u-mr35 {
    margin-right: 35px !important
}

.u-mb35 {
    margin-bottom: 35px !important
}

.u-ml35 {
    margin-left: 35px !important
}

.u-pt35 {
    padding-top: 35px !important
}

.u-pr35 {
    padding-right: 35px !important
}

.u-pb35 {
    padding-bottom: 35px !important
}

.u-pl35 {
    padding-left: 35px !important
}

.u-mt40 {
    margin-top: 40px !important
}

.u-mr40 {
    margin-right: 40px !important
}

.u-mb40 {
    margin-bottom: 40px !important
}

.u-ml40 {
    margin-left: 40px !important
}

.u-pt40 {
    padding-top: 40px !important
}

.u-pr40 {
    padding-right: 40px !important
}

.u-pb40 {
    padding-bottom: 40px !important
}

.u-pl40 {
    padding-left: 40px !important
}

.u-mt45 {
    margin-top: 45px !important
}

.u-mr45 {
    margin-right: 45px !important
}

.u-mb45 {
    margin-bottom: 45px !important
}

.u-ml45 {
    margin-left: 45px !important
}

.u-pt45 {
    padding-top: 45px !important
}

.u-pr45 {
    padding-right: 45px !important
}

.u-pb45 {
    padding-bottom: 45px !important
}

.u-pl45 {
    padding-left: 45px !important
}

.u-mt50 {
    margin-top: 50px !important
}

.u-mr50 {
    margin-right: 50px !important
}

.u-mb50 {
    margin-bottom: 50px !important
}

.u-ml50 {
    margin-left: 50px !important
}

.u-pt50 {
    padding-top: 50px !important
}

.u-pr50 {
    padding-right: 50px !important
}

.u-pb50 {
    padding-bottom: 50px !important
}

.u-pl50 {
    padding-left: 50px !important
}

.u-mt55 {
    margin-top: 55px !important
}

.u-mr55 {
    margin-right: 55px !important
}

.u-mb55 {
    margin-bottom: 55px !important
}

.u-ml55 {
    margin-left: 55px !important
}

.u-pt55 {
    padding-top: 55px !important
}

.u-pr55 {
    padding-right: 55px !important
}

.u-pb55 {
    padding-bottom: 55px !important
}

.u-pl55 {
    padding-left: 55px !important
}

.u-mt60 {
    margin-top: 60px !important
}

.u-mr60 {
    margin-right: 60px !important
}

.u-mb60 {
    margin-bottom: 60px !important
}

.u-ml60 {
    margin-left: 60px !important
}

.u-pt60 {
    padding-top: 60px !important
}

.u-pr60 {
    padding-right: 60px !important
}

.u-pb60 {
    padding-bottom: 60px !important
}

.u-pl60 {
    padding-left: 60px !important
}

.u-mt65 {
    margin-top: 65px !important
}

.u-mr65 {
    margin-right: 65px !important
}

.u-mb65 {
    margin-bottom: 65px !important
}

.u-ml65 {
    margin-left: 65px !important
}

.u-pt65 {
    padding-top: 65px !important
}

.u-pr65 {
    padding-right: 65px !important
}

.u-pb65 {
    padding-bottom: 65px !important
}

.u-pl65 {
    padding-left: 65px !important
}

.u-mt70 {
    margin-top: 70px !important
}

.u-mr70 {
    margin-right: 70px !important
}

.u-mb70 {
    margin-bottom: 70px !important
}

.u-ml70 {
    margin-left: 70px !important
}

.u-pt70 {
    padding-top: 70px !important
}

.u-pr70 {
    padding-right: 70px !important
}

.u-pb70 {
    padding-bottom: 70px !important
}

.u-pl70 {
    padding-left: 70px !important
}

.u-mt75 {
    margin-top: 75px !important
}

.u-mr75 {
    margin-right: 75px !important
}

.u-mb75 {
    margin-bottom: 75px !important
}

.u-ml75 {
    margin-left: 75px !important
}

.u-pt75 {
    padding-top: 75px !important
}

.u-pr75 {
    padding-right: 75px !important
}

.u-pb75 {
    padding-bottom: 75px !important
}

.u-pl75 {
    padding-left: 75px !important
}

.u-mt80 {
    margin-top: 80px !important
}

.u-mr80 {
    margin-right: 80px !important
}

.u-mb80 {
    margin-bottom: 80px !important
}

.u-ml80 {
    margin-left: 80px !important
}

.u-pt80 {
    padding-top: 80px !important
}

.u-pr80 {
    padding-right: 80px !important
}

.u-pb80 {
    padding-bottom: 80px !important
}

.u-pl80 {
    padding-left: 80px !important
}

.u-mt85 {
    margin-top: 85px !important
}

.u-mr85 {
    margin-right: 85px !important
}

.u-mb85 {
    margin-bottom: 85px !important
}

.u-ml85 {
    margin-left: 85px !important
}

.u-pt85 {
    padding-top: 85px !important
}

.u-pr85 {
    padding-right: 85px !important
}

.u-pb85 {
    padding-bottom: 85px !important
}

.u-pl85 {
    padding-left: 85px !important
}

.u-mt90 {
    margin-top: 90px !important
}

.u-mr90 {
    margin-right: 90px !important
}

.u-mb90 {
    margin-bottom: 90px !important
}

.u-ml90 {
    margin-left: 90px !important
}

.u-pt90 {
    padding-top: 90px !important
}

.u-pr90 {
    padding-right: 90px !important
}

.u-pb90 {
    padding-bottom: 90px !important
}

.u-pl90 {
    padding-left: 90px !important
}

.u-mt95 {
    margin-top: 95px !important
}

.u-mr95 {
    margin-right: 95px !important
}

.u-mb95 {
    margin-bottom: 95px !important
}

.u-ml95 {
    margin-left: 95px !important
}

.u-pt95 {
    padding-top: 95px !important
}

.u-pr95 {
    padding-right: 95px !important
}

.u-pb95 {
    padding-bottom: 95px !important
}

.u-pl95 {
    padding-left: 95px !important
}

.u-mt100 {
    margin-top: 100px !important
}

.u-mr100 {
    margin-right: 100px !important
}

.u-mb100 {
    margin-bottom: 100px !important
}

.u-ml100 {
    margin-left: 100px !important
}

.u-pt100 {
    padding-top: 100px !important
}

.u-pr100 {
    padding-right: 100px !important
}

.u-pb100 {
    padding-bottom: 100px !important
}

.u-pl100 {
    padding-left: 100px !important
}

.u-mla {
    margin-left: auto !important
}

.u-mra {
    margin-right: auto !important
}

.u-fz10 {
    font-size: 10px !important
}

.u-fz11 {
    font-size: 11px !important
}

.u-fz12 {
    font-size: 12px !important
}

.u-fz13 {
    font-size: 13px !important
}

.u-fz14 {
    font-size: 14px !important
}

.u-fz15 {
    font-size: 15px !important
}

.u-fz16 {
    font-size: 16px !important
}

.u-fz17 {
    font-size: 17px !important
}

.u-fz18 {
    font-size: 18px !important
}

.u-fz19 {
    font-size: 19px !important
}

.u-fz20 {
    font-size: 20px !important
}

.u-fz21 {
    font-size: 21px !important
}

.u-fz22 {
    font-size: 22px !important
}

.u-fz23 {
    font-size: 23px !important
}

.u-fz24 {
    font-size: 24px !important
}

.u-fz25 {
    font-size: 25px !important
}

.u-fz26 {
    font-size: 26px !important
}

.u-fz27 {
    font-size: 27px !important
}

.u-fz28 {
    font-size: 28px !important
}

.u-fz29 {
    font-size: 29px !important
}

.u-fz30 {
    font-size: 30px !important
}

.u-fz31 {
    font-size: 31px !important
}

.u-fz32 {
    font-size: 32px !important
}

.u-fz33 {
    font-size: 33px !important
}

.u-fz34 {
    font-size: 34px !important
}

.u-fz35 {
    font-size: 35px !important
}

.u-fz36 {
    font-size: 36px !important
}

.u-fz37 {
    font-size: 37px !important
}

.u-fz38 {
    font-size: 38px !important
}

.u-fz39 {
    font-size: 39px !important
}

.u-fz40 {
    font-size: 40px !important
}

.u-fz41 {
    font-size: 41px !important
}

.u-fz42 {
    font-size: 42px !important
}

.u-fz43 {
    font-size: 43px !important
}

.u-fz44 {
    font-size: 44px !important
}

.u-fz45 {
    font-size: 45px !important
}

.u-fz46 {
    font-size: 46px !important
}

.u-fz47 {
    font-size: 47px !important
}

.u-fz48 {
    font-size: 48px !important
}

.u-fz49 {
    font-size: 49px !important
}

.u-fz50 {
    font-size: 50px !important
}

.u-textRight {
    text-align: right !important
}

.u-textCenter {
    text-align: center !important
}

.u-textLeft {
    text-align: left !important
}

.u-vaBase {
    vertical-align: baseline !important
}

.u-vaTop {
    vertical-align: top !important
}

.u-vaMiddle {
    vertical-align: middle !important
}

.u-vaBottom {
    vertical-align: bottom !important
}

.u-vaTextTop {
    vertical-align: text-top !important
}

.u-vaTextBottom {
    vertical-align: text-bottom !important
}

.u-vaSuper {
    vertical-align: super !important
}

.u-vaSub {
    vertical-align: sub !important
}

.u-block {
    display: block !important
}

.u-inline {
    display: inline !important
}

.u-inlineBlock {
    display: inline-block !important
}

.u-flex {
    display: flex !important
}

.u-fxdRow {
    flex-direction: row !important
}

.u-fxdRowRev {
    flex-direction: row-reverse !important
}

.u-fxdCol {
    flex-direction: column !important
}

.u-fxdColRev {
    flex-direction: column-reverse !important
}

.u-fxwNo {
    flex-wrap: nowrap !important
}

.u-fxwWrap {
    flex-wrap: wrap !important
}

.u-fxwWrapRev {
    flex-wrap: wrap-reverse !important
}

.u-jcFlexStart {
    justify-content: flex-start !important
}

.u-jcFlexEnd {
    justify-content: flex-end !important
}

.u-jcCenter {
    justify-content: center !important
}

.u-jcSpaceBetween {
    justify-content: space-between !important
}

.u-jcSpaceAround {
    justify-content: space-around !important
}

.u-aiFlexStart {
    align-items: flex-start !important
}

.u-aiFlexEnd {
    align-items: flex-end !important
}

.u-aiCenter {
    align-items: center !important
}

.u-aiBase {
    align-items: baseline !important
}

.u-aiStretch {
    align-items: stretch !important
}

.u-acFlexStart {
    align-content: flex-start !important
}

.u-acFlexEnd {
    align-content: flex-end !important
}

.u-acCenter {
    align-content: center !important
}

.u-acSpaceBetween {
    align-content: space-between !important
}

.u-acSpaceAround {
    align-content: space-around !important
}

.u-acStretch {
    align-content: stretch !important
}

.u-asAuto {
    -ms-grid-row-align: auto !important;
    align-self: auto !important
}

.u-asFlexStart {
    align-self: flex-start !important
}

.u-asFlexEnd {
    align-self: flex-end !important
}

.u-asCenter {
    -ms-grid-row-align: center !important;
    align-self: center !important
}

.u-asBase {
    align-self: baseline !important
}

.u-asStretch {
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important
}

.u-floatLeft {
    float: left !important
}

.u-floatRight {
    float: right !important
}

.u-static {
    position: static !important
}

.u-relative {
    position: relative !important
}

.u-absolute {
    position: absolute !important
}

.u-bgNone {
    background: none !important
}

.u-fwBold {
    font-weight: 700 !important
}

.u-fwNormal {
    font-weight: 400 !important
}

.u-textKerning {
    font-feature-settings: "palt" !important
}

.u-clearfix:after {
    content: "" !important;
    display: block !important;
    clear: both !important
}

.u-wh100p {
    width: 100% !important;
    height: auto !important
}

.u-marginSideAuto {
    margin-left: auto !important;
    margin-right: auto !important
}

.u-hover:hover {
    opacity: .7 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: opacity 250ms !important
}

@media(max-width:767px) {
    html, body, div, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
        font-size: 12px
    }

    body {
        padding-bottom: 46px
    }

    .l-container__inner {
        width: 100%
    }

    .ec-headerNav {
        display: none
    }

    .ec-layoutRole {
        padding-top: 90px
    }

    .ec-layoutRole__header {
        width: 100%;
        top: 0;
        position: fixed;
        z-index: 100
    }

    .ec-layoutRole__header__inner:after {
        background-size: 20px 78px;
        height: 8px
    }

    .ec-layoutRole__header__inner:before {
        content: '';
        background-image: url(/html/user_data/assets/img/common/bg_bottom-round_2.png);
        background-size: 20px 78px;
        background-repeat: repeat-x;
        width: 100%;
        height: 8px;
        position: absolute;
        top: calc(100% + 2px);
        left: 0;
        background-position: left bottom;
        z-index: 99;
        opacity: .3;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"
    }

    .ec-headerNavSP {
        display: flex;
        height: 25px;
        margin-left: 15px;
        padding-left: 15px;
        border-left: 1px solid #b8bec4
    }

    .ec-headerNaviRole {
        padding-top: 0;
        height: 90px
    }

    .ec-headerNaviRole__cartSP {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column
    }

    .ec-headerNaviRole .ec-headerNaviRole__right {
        position: absolute;
        right: 14px
    }

    .ec-headerTitle {
        width: 80px
    }

    .ec-headerRole__details>img {
        width: 23px;
        height: auto
    }

    .ec-headerRole__details__text {
        padding-left: 0;
        font-size: 10px
    }

    .ec-headerRole__details__balloon {
        padding: 5px;
        font-size: 14px
    }

    .ec-headerRole__details__balloon:first-letter {
        font-size: 10px
    }

    .ec-headerRole__details__balloon:before {
        top: 12px
    }

    .ec-headerRole__details__balloon:after {
        top: 10px
    }

    .ec-cartNavi {
        padding: 0
    }

    .ec-cartNavi .ec-cartNavi__badge {
        position: absolute;
        font-size: 9px;
        height: 13px;
        padding: 0 4px;
        top: -5px
    }

    .ec-layoutRole__footer {
        padding: 15px 0
    }

    .ec-layoutRole__footer:after {
        background-size: 20px 78px;
        height: 8px
    }

    .ec-footerNavi {
        border-top: 1px solid #7d7d7d
    }

    .ec-footerTitle {
        padding-top: 20px;
        padding-bottom: 20px
    }

    .ec-blockTopBtn {
        width: 40px;
        height: 40px;
        right: 10px;
        bottom: 75px
    }

    .ec-select select {
        font-size: 14px;
        width: 100% !important
    }

    .ec-searchnavRole__controller {
        margin-bottom: 30px
    }

    .ec-searchnavRole__controller__text {
        font-size: 14px
    }

    .ec-searchnavRole__controller__display-bum {
        padding-right: 10px;
        margin-right: 10px
    }

    .ec-searchnavRole__result-status {
        width: 100%;
        font-size: 14px
    }

    .ec-searchnavRole__result-status span {
        font-size: 20px
    }

    .ec-searchnavRole .ec-searchnavRole__infos {
        padding-right: 0;
        padding-left: 0
    }

    .ec-searchnavRole .ec-select select {
        width: 100%
    }

    .ec-categoryNaviRole {
        display: inherit
    }

    .ec-itemNav {
        width: 100%
    }

    .ec-itemNav a {
        width: calc(50% - 5px);
        margin-right: 10px;
        font-size: 14px
    }

    .ec-itemNav a:nth-child(n+3) {
        margin-top: 10px
    }

    .ec-itemNav a>span {
        font-size: 14px
    }

    .ec-itemNav__nav {
        justify-content: flex-start
    }

    .ec-itemsanchokuNav {
        width: 100%;
        margin-bottom: 20px
    }

    .ec-itemsanchokuNav a {
        width: calc(50% - 5px);
        margin-right: 10px;
        font-size: 14px
    }

    .ec-itemsanchokuNav a:nth-child(n+3) {
        margin-top: 10px
    }

    .ec-itemsanchokuNav a>span {
        font-size: 14px
    }

    .ec-itemsanchokuNav__nav {
        justify-content: flex-start
    }

    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: 24px
    }

    .ec-productRole__description {
        font-size: 14px
    }

    .ec-productRole .ec-productRole__category>div {
        font-size: 14px
    }

    .ec-productRole .ec-productRole__category>ul>li>a {
        font-size: 14px
    }

    .ec-productRole .ec-productRole__category__title {
        width: 117px
    }

    .slick-dots {
        display: none !important
    }

    .ec-sliderItemRole {
        padding-left: 0;
        padding-right: 0;
        width: auto
    }

    .ec-sliderItemRole .item_nav {
        display: flex
    }

    .ec-blockBtn--area {
        width: 100%
    }

    .ec-blockBtn--cancel {
        width: 100%
    }

    .ec-blockBtn--entry {
        width: 100%
    }

    .ec-blockBtn--other {
        width: 100%
    }

    .ec-orderDelivery__actions .ec-selects .ec-select {
        display: block;
        width: 100%
    }

    .ec-orderDelivery__actions .ec-selects .ec-select:after {
        top: 38px
    }

    .c-cart {
        display: block
    }

    .c-cart-content, .c-cart-summary {
        width: 100%;
        flex-basis: 100%
    }

    .c-cart-content__section p {
        font-size: 14px
    }

    .c-cart-content__section .ec-radio span {
        font-size: 16px
    }

    .c-cart-content__section .ec-input input {
        font-size: 16px
    }

    .c-cart-summary {
        margin-top: 30px
    }

    .c-flow {
        width: 100%;
        margin-top: 31px;
        margin-bottom: 21px
    }

    .c-flow:before {
        width: calc(100% - 60px);
        height: 2px;
        margin-left: 30px;
        margin-right: 30px;
        top: 15px
    }

    .c-flow__stage__point {
        width: 30px;
        height: 30px;
        font-size: 12px
    }

    .c-flow__stage__text {
        font-size: 12px;
        margin-top: 4px
    }

    .c-item {
        width: 100%;
        margin: 0;
        padding: 10px;
        justify-content: space-between;
        flex-direction: row
    }

    .c-item+.c-item {
        margin-top: 15px
    }

    .c-item__info {
        font-size: 12px
    }

    .c-item__new {
        font-size: 15px;
        line-height: 20px;
        padding: 0 5px;
        width: 60px;
        height: 20px
    }

    .c-item__body {
        width: calc(100% - 130px)
    }

    .c-item__img-details {
        width: 100%;
        height: auto
    }

    .c-item__img {
        width: 120px;
        height: 120px
    }

    .c-item__img__tag {
        padding: 3px;
        font-size: 12px
    }

    .c-item__img__favorite {
        top: 10px;
        right: 10px;
        padding: 0
    }

    .c-item__img__sold-out__text-en {
        font-size: 14px
    }

    .c-item__img__sold-out__text-en__details {
        font-size: 20px
    }

    .c-item__img__sold-out__text-ja {
        font-size: 10px
    }

    .c-item__img__sold-out__text-ja__details {
        font-size: 20px
    }

    .c-item__img__wait__text {
        border-width: 1px;
        font-size: 10px;
        padding: 5px
    }

    .c-item__title {
        font-size: 14px;
        margin: 0 0 10px;
        padding-right: 35px
    }

    .c-item__price {
        font-size: 14px;
        font-weight: 700;
        margin-bottom: 10px;
        padding-bottom: 10px
    }

    .c-item__stock {
        display: block;
        margin-top: 16px
    }

    .c-item__stock__notice {
        margin-top: 5px
    }

    .c-item .ec-numberInput {
        margin-top: 15px;
        display: flex;
        justify-content: space-between;
        align-items: center
    }

    .c-item .ec-numberInput span {
        font-size: 14px
    }

    .c-item .ec-numberInput input {
        height: 30px
    }

    .c-item .ec-numberInput input[type=number] {
        font-size: 14px
    }

    .c-item .ec-blockBtn--action {
        font-size: 16px
    }

    .c-item-wrap {
        width: 100%
    }

    .c-item-relation {
        width: 100%
    }

    .c-item__stock__notice, .c-item-details .ec-productRole__tag {
        font-size: 14px;
        padding: 3.5px 10px
    }

    .c-item-details__pricing {
        border-top: 2px solid #d9d9d9;
        margin-top: 0;
        padding-left: 0;
        padding-right: 0;
        display: block
    }

    .c-item-details__pricing__info__special, .c-item-details__pricing__info__reference {
        line-height: 1.8
    }

    .c-item-details__pricing__info__special__price {
        font-size: 1.5em
    }

    .c-item-details__pricing__stock {
        font-size: 18px
    }

    .c-item-details__shipping {
        border-top: 2px solid #d9d9d9;
        margin-top: 0;
        padding-left: 0;
        padding-right: 0
    }

    .c-item-details__lead {
        font-size: 18px;
        line-height: 1.5
    }

    .c-item-details__form {
        margin-top: 16px
    }

    .c-item-details__form .ec-select {
        width: 100%
    }

    .c-item-details__form .ec-select select {
        width: 100%
    }

    .c-item-details__form label {
        font-size: 18px;
        margin-bottom: 17px
    }

    .c-item-details__description {
        padding-top: 20px
    }

    .c-item-details__description dt {
        width: 100%;
        padding-right: 0;
        font-size: 18px;
        margin-bottom: 10px
    }

    .c-item-details__description dd {
        width: 100%;
        font-size: 18px;
        margin-bottom: 15px
    }

    .c-item-details__notice {
        font-size: 16px
    }

    .c-item-details__actions__content {
        display: block;
        margin: -5.5px
    }

    .c-item-details__actions__button {
        margin: 5.5px;
        font-size: 13px;
        padding: 8px;
        padding-left: 40px
    }

    .c-item-details__actions__button:before {
        width: 20px;
        height: 27px;
        margin-top: -14px
    }

    .c-item-details__actions__button--buy>button {
        height: 55px
    }

    .c-item-details__actions__button--cart {
        font-size: 20px
    }

    .c-item-details__actions__interact {
        display: flex;
        justify-content: center
    }

    .c-item-details__actions__buy {
        width: 100%;
        height: 65px
    }

    .c-item-details__actions__buy>button {
        width: 100%
    }

    .c-item-details__social__title {
        font-size: 16px;
        text-align: center;
        margin-right: 0;
        padding-top: 0
    }

    .c-item-details__social__content {
        margin-top: 10px;
        justify-content: center
    }

    .c-item-details__social__button {
        min-width: 66px
    }

    .c-item-details__social__button__icon {
        width: 16px;
        height: 16px
    }

    .c-item-details .c-well {
        padding: 17px 22px
    }

    .c-item-details .ec-productRole__btn {
        margin-top: 21px
    }

    .c-item-details .ec-productRole__btn .ec-blockBtn--action {
        font-size: 16px;
        height: 56px
    }

    .c-item-details .ec-productRole__tag {
        border-width: 2px;
        font-size: 13px
    }

    .c-title {
        font-size: 26px
    }

    .c-title-page {
        font-size: 23px;
        padding-left: 0;
        padding-bottom: 12px;
        margin-bottom: 20px;
        flex-wrap: wrap
    }

    .c-title-page__detail {
        font-size: 10px;
        width: 100%;
        margin-top: 10px
    }

    .c-title-bar {
        font-size: 23px
    }

    .c-title-section {
        font-size: 18px
    }

    .ec-pageHeader h1 {
        border: 0;
        font-size: 24px
    }

    .ec-para-normal {
        font-size: 14px
    }

    .ec-borderedDefs dd {
        font-size: 14px
    }

    .c-info {
        align-items: center
    }

    .c-info__content, .c-info-faq__header__content, .c-info-guide__header__content {
        flex-direction: column;
        width: calc(100% - 50px);
        padding-left: 20px
    }

    .c-info__arrow, .c-info-faq__header__arrow, .c-info-guide__header__arrow {
        margin-right: 20px
    }

    .c-info-wrap {
        width: auto;
        margin-left: -20px;
        margin-right: -20px
    }

    .c-info-faq, .c-info-guide {
        width: 100%;
        flex-basis: 100%
    }

    .c-info-faq__header__content, .c-info-guide__header__content {
        padding-left: 0;
        width: 100%
    }

    .c-info-faq__body__content p, .c-info-guide__body__content p {
        width: 100%
    }

    .c-info-guide__header__title {
        font-size: 18px
    }

    .c-info-guide__body__content__item:not(:first-child) {
        margin-top: 25px
    }

    .c-info-guide__body p {
        font-size: 12px !important
    }

    .c-section-organization, .donation-org {
        display: block;
        padding: 30px 0 40px
    }

    .c-section-organization__aside, .donation-org__aside {
        width: auto
    }

    .c-section-organization__aside__logo {
        max-width: 266px
    }

    .c-section-organization__content, .donation-org__content {
        width: 100%;
        margin-top: 19px
    }

    .c-pseudo-table__row {
        flex-direction: column
    }

    .c-pseudo-table__th {
        width: 100%;
        flex-basis: 100%;
        border-bottom: none
    }

    .c-pseudo-table__td {
        width: 100%;
        flex-basis: 100%;
        border-left: 1px solid #c5c4c5
    }

    .c-thumb-slider__main {
        margin-bottom: 20px
    }

    .c-footer-details {
        width: 100%;
        padding: 0 15px;
        flex-direction: column
    }

    .c-footer-details__column {
        width: 100%
    }

    .c-footer-details__column+.c-footer-details__column {
        margin-top: 20px
    }

    .c-footer-details__text {
        font-size: inherit
    }

    .c-footer-details__card__text {
        font-size: inherit
    }

    .c-footer-details__card__image {
        width: 230px;
        max-width: 100%
    }

    .c-footer-links {
        width: calc(100% - 30px);
        flex-direction: column;
        margin: 50px auto 0
    }

    .c-footer-links__item+.c-footer-links__item {
        padding: 0;
        margin: 0;
        border-left: 0
    }

    .c-footer-links__link {
        display: block;
        padding: 15px;
        text-align: center
    }

    .c-header-nav {
        display: none
    }

    .c-lead {
        font-size: 26px
    }

    .c-lead-wrap {
        text-align: left;
        padding: 20px 0
    }

    .c-button-donation {
        margin-top: 17px;
        padding-top: 11px;
        padding-bottom: 11px
    }

    .c-button-details {
        font-size: 16px;
        padding: 8px 45px
    }

    .c-button-details--blank:after {
        width: 20px;
        height: 20px
    }

    .ec-select select {
        width: 100%
    }

    .ec-numberInput.is-fixed .c-well-inner {
        width: 100%;
        min-width: 100%;
        display: block
    }

    .c-item-none--sp {
        display: none
    }

    .form-group {
        margin-bottom: 10px
    }

    .c-well-sp-modal {
        z-index: 105;
        width: auto;
        height: auto;
        top: 105px;
        left: 15px;
        bottom: auto;
        right: 15px
    }

    .c-well-sp-modal {
        display: none;
        z-index: 105;
        width: auto;
        height: auto;
        top: 105px;
        left: 15px;
        bottom: 30px;
        right: 15px;
        overflow-y: scroll
    }

    .c-well-sp-modal__close {
        position: absolute;
        color: #333;
        background-color: #fff;
        border-radius: 50%;
        width: 30px;
        height: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 100;
        top: 5px;
        right: 5px
    }

    .c-well-sp-modal__close .fas {
        font-size: 16px
    }

    .c-well-sp-modal__overlay {
        position: fixed;
        display: none;
        width: auto;
        height: auto;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, .5);
        z-index: 99
    }

    .c-navRole--sp-column .c-navRole__infos {
        display: block
    }

    .c-navRole--sp-column .c-navRole__title {
        width: 100%
    }

    .c-box {
        padding: 15px;
        margin-bottom: 50px
    }

    .c-box--fullpage {
        width: 100%
    }

    .c-side {
        bottom: 0;
        width: 100%
    }

    .c-side-cart {
        width: 105px;
        height: 105px;
        position: absolute;
        bottom: 0;
        z-index: 2;
        display: none
    }

    .c-side-cart__cart {
        width: 46px;
        height: 43px;
        top: 22px;
        left: 27px
    }

    .c-side-cart__quantity {
        margin-top: 29px;
        font-size: 12px;
        left: 0
    }

    .c-side-cart__total {
        font-size: 15px;
        margin-top: 13px
    }

    .c-side-cart__total small {
        font-size: 11px;
        margin-right: 4px
    }

    .c-side-social {
        width: 100%;
        display: flex;
        justify-content: space-between;
        margin-top: 0
    }

    .c-side-social__item {
        height: 50px
    }

    .c-side-social__item+.c-side-social__item {
        border-left: 1px solid #ccc
    }

    .c-side-social__item__icon {
        width: 30px;
        height: 30px
    }

    .top-mv, .top-mv__slider__slide {
        height: 37.335vw
    }

    .top-mv__slider .slick-dots li {
        width: 10px;
        height: 10px
    }

    .top-mv__slider .slick-dots button {
        padding: 0;
        width: 10px;
        height: 10px
    }

    .top-mv__slider .slick-dots button:before {
        width: 10px;
        height: 10px
    }

    .top-bignews__item {
        width: 100%;
        margin: 0 auto
    }

    .top-bignews__text {
        font-size: 14px
    }

    .top-news {
        display: block;
        padding-left: 14px;
        padding-right: 14px
    }

    .top-news__title {
        width: 100%;
        border-right: none;
        padding-right: 0;
        padding-bottom: 10px;
        border-bottom: 1px solid #d9d9d9;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        margin-bottom: 10px
    }

    .top-news__body {
        padding-left: 0
    }

    .top-news-item {
        display: block;
        line-height: 1.5
    }

    .top-news-item__content {
        width: auto
    }

    .top-news-item__more {
        display: none
    }

    .top-item-section, .product-item-section {
        padding: 30px 0
    }

    .top-item-section__title {
        padding-top: 45px;
        margin-bottom: 30px
    }

    .top-item-section__title--favorite {
        background-size: 49px auto
    }

    .top-item-section__title--10 {
        background-size: 60px auto
    }

    .top-item-section__title--7 {
        background-size: 60px auto
    }

    .top-item-section__title--8 {
        background-size: 40px auto
    }

    .top-item-section__title--9 {
        background-size: 20px auto
    }

    .top-item-section__title__text {
        font-size: 24px;
        border-width: 2px
    }

    .top-smilesnack-wrapper {
        width: 100%
    }

    .top-smilesnack-container {
        background-size: 100% auto
    }

    .top-smilesnack-container__lead {
        font-size: 14px;
        padding: 20px 35px 0;
        margin-bottom: 20px
    }

    .top-smilesnack-container__image {
        padding: 0 20px
    }

    .top-smilesnack-container__result {
        font-size: 16px;
        width: calc(100% - 30px);
        margin: 15px auto 20px;
        border-bottom-width: 2px
    }

    .top-smilesnack-container__result__number {
        font-size: 50px
    }

    .top-smilesnack-container__result__sp-small {
        font-size: 14px
    }

    .top-smilesnack-container__buttons {
        flex-direction: column
    }

    .top-smilesnack-container__buttons>.top-more-button+.top-more-button {
        margin-left: 0;
        margin-top: 20px
    }

    .top-section-1 {
        padding-bottom: 0
    }

    .top-section-1:after {
        display: none
    }

    .top-smilesnack-bg {
        padding: 25px 10px
    }

    .top-other-section {
        padding: 40px 15px
    }

    .top-information-title {
        font-size: 24px
    }

    .top-information-box {
        flex-direction: column;
        border-bottom: 0
    }

    .top-information-box__section {
        width: 100%
    }

    .top-information-box__section+.top-information-box__section {
        margin-top: 35px
    }

    .top-information-box__section__title {
        font-size: 15px
    }

    .top-information-link {
        font-size: 12px
    }

    .top-information-link__date {
        width: 80px
    }

    .top-information-link__text {
        width: calc(100% - 80px)
    }

    .top-more-button {
        width: 70%
    }

    .top-instagram-title {
        font-size: 15px
    }

    .top-instagram-title:before {
        margin-top: 18px
    }

    .top-smile-img {
        width: 280px
    }

    .about-grid__title {
        font-size: 20px
    }

    .about-app__item {
        width: 250px;
        margin: 20px auto 0
    }

    .about-app__item__data__name {
        font-size: 16px
    }

    .about-app__item__data__btn {
        height: 40px
    }

    .about-app__item__data__btn img {
        object-fit: contain;
        object-position: left center;
        font-family: "object-fit: contain; object-position: left center"
    }

    .about-app__item__qr {
        width: 90px;
        height: 90px;
        margin-left: 15px;
        flex: 0 0 90px
    }

    .about-app__item__qr img {
        object-fit: contain;
        font-family: "object-fit: contain"
    }

    .donation-nav {
        margin-top: 20px
    }

    .donation-nav__item {
        margin: 2px 4px
    }

    .donation-nav__item img {
        max-width: 126px;
        max-height: 52px
    }

    .donation-nav__item--wide img {
        max-width: 148px
    }

    .donation-org {
        padding: 30px 0 40px
    }

    .donation-org__aside {
        padding-top: 0
    }

    .donation-org__aside__logo {
        max-width: 266px
    }

    .donation-org__content .c-title {
        font-size: 20px;
        margin-bottom: 12px
    }

    .donation-org__price {
        padding: 18px 15px 18px 11px
    }

    .donation-org__price__text {
        font-size: 16px
    }

    .donation-org__price__money {
        font-size: 14px
    }

    .donation-org__price__money__ammount {
        font-size: 1.643em
    }

    .donation-org__photos {
        margin-top: 19px
    }

    .donation-org__photos__photo {
        width: 150px;
        height: 100px;
        margin: 2.5px
    }

    .donation-org .c-info__content, .donation-org .c-info-faq__header__content, .donation-org .c-info-guide__header__content {
        padding-left: 0;
        flex-direction: row
    }

    .donation-org .c-info-wrap {
        margin-left: 0;
        margin-right: 0
    }

    #page_product_detail {
        padding-bottom: 89px
    }

    .ec-productRole__category {
        padding: 8px 0 !important
    }

    .shokudo-region {
        margin-left: -20px;
        margin-right: -20px
    }

    .shokudo-region__img {
        display: none
    }

    .shokudo-region__table {
        width: 100%
    }

    .shokudo-region__table__links a {
        font-size: 16px
    }

    .shokudo-region__table .c-table {
        border-right: none
    }

    .shokudo-region__table .c-table__th, .shokudo-region__table .c-table__td {
        font-size: 16px
    }

    .shokudo-region__table .c-table__th {
        border-left: none
    }

    .entry-dl-wrap {
        width: 100%
    }

    .entry-confirm__actions, .mypage-confirm__actions {
        display: flex;
        flex-direction: column-reverse
    }

    .entry-confirm__actions .col-xs-12:first-child, .mypage-confirm__actions .col-xs-12:first-child {
        margin-top: 15px
    }

    .cart-basket__header {
        display: none
    }

    .cart-basket__body .cart-basket__row {
        padding: 19px 0
    }

    .cart-basket__body .cart-basket__cell--money {
        font-size: 16px
    }

    .cart-basket__row {
        flex-wrap: wrap
    }

    .cart-basket__cell {
        padding: 0
    }

    .cart-basket__cell--erase {
        padding-left: 0;
        width: 20px
    }

    .cart-basket__cell--erase .fas {
        font-size: 23px
    }

    .cart-basket__cell--product {
        width: calc(100% - 20px);
        flex-basis: calc(100% - 20px);
        padding-left: 5px
    }

    .cart-basket__cell--support {
        width: 100%
    }

    .cart-basket__cell--ammount {
        width: 100%
    }

    .cart-basket__cell--money {
        width: 100%
    }

    .cart-basket__cell--total {
        width: 100%;
        flex: 0 0 100%;
        padding-top: 19px;
        padding-bottom: 19px
    }

    .cart-basket__ammount {
        flex-direction: row
    }

    .cart-basket__ammount__num {
        font-size: 16px
    }

    .cart-basket__ammount__controls {
        margin-left: 18px
    }

    .cart-basket__ammount__controls__button {
        width: 30px;
        height: 30px
    }

    .cart-basket__support {
        font-size: 16px;
        width: calc(100% - 110px)
    }

    .cart-basket__product__img {
        width: 76px;
        height: 76px;
        flex: 0 0 76px;
        margin-right: 10px
    }

    .cart-basket__product__link {
        font-size: 16px
    }

    .cart-basket__total {
        width: 65%;
        margin-left: auto;
        padding: 0
    }

    .cart-basket__total__title, .cart-basket__total__ammount {
        font-size: 16px;
        margin-bottom: 10px
    }

    .cart-basket__total__title.u-fwBold, .cart-basket__total__ammount.u-fwBold {
        font-size: 16px
    }

    .cart-basket__cell--support, .cart-basket__cell--ammount, .cart-basket__cell--money {
        display: flex;
        margin-top: 15px
    }

    .cart-form__time {
        flex-wrap: wrap
    }

    .cart-form__time .c-title {
        width: 25%;
        flex-basis: 25%
    }

    .cart-form__time .ec-select {
        width: calc(75% - 15px);
        margin-bottom: 15px
    }

    .cart-form__time .ec-select select {
        font-size: 14px
    }

    .mypage-wrap {
        flex-direction: column
    }

    .mypage-nav {
        width: 100%;
        flex-basis: 100%;
        margin-right: 0;
        display: none
    }

    .mypage-top-banner__title .c-title {
        font-size: 16px
    }

    .mypage-top-banner__title a {
        font-size: 14px
    }

    .mypage-top-banner__content {
        display: block
    }

    .mypage-top-banner__content__cell {
        width: 100%
    }

    .mypage-top-banner__points {
        padding: 18px;
        margin-bottom: 15px
    }

    .mypage-top-banner__points__pmark {
        width: 36px;
        height: 36px;
        font-size: 18px
    }

    .mypage-top-banner__points__text {
        font-size: 14px
    }

    .mypage-top-banner__points__num {
        font-size: 23px
    }

    .mypage-address {
        padding-left: 5px;
        padding-right: 0
    }

    .mypage-address__text {
        padding-right: 10px
    }

    .mypage-address__remove {
        margin-right: 20px
    }

    .mypage-address__remove__button .fas {
        font-size: 25px
    }

    .mypage-support-mv {
        padding: 20px
    }

    .mypage-support-mv__content {
        padding: 20px
    }

    .mypage-support-mv__content__text {
        font-size: 17px
    }

    .mypage-support-mv__content__ammount {
        margin-top: 10px;
        font-size: 23px
    }

    #tbl_support th:first-child {
        width: 80px
    }

    #tbl_support th:last-child {
        width: 75px
    }

    .ec-favoriteRole__itemList {
        flex-direction: column
    }

    .ec-favoriteRole__item {
        width: 100%;
        margin-right: 0
    }

    .ec-favoriteRole__item:nth-child(n+2) {
        margin-top: 15px
    }

    .support-companies__flex {
        margin-left: -5px;
        margin-right: -5px
    }

    .support-companies__item {
        margin: 5px;
        width: calc(50% - 10px);
        flex-basis: calc(50% - 10px);
        padding: 8px 5px
    }

    .support-companies__item__img {
        width: 80%;
        height: 15vw
    }

    .support-companies__item__text {
        font-size: 10px
    }

    .support-maker__item {
        padding-left: 0;
        flex-basis: 100%;
        font-size: 14px
    }

    .support-sdg__goal {
        width: calc(20.4vw - 8px)
    }

    .child-title {
        margin-bottom: 20px
    }

    .child-title img {
        transform: translateX(5%);
        width: 95%;
        height: auto
    }

    .child-lead {
        width: 100%;
        font-size: 12px;
        margin-bottom: 20px
    }

    .child-term-select {
        padding: 15px 0
    }

    .child-term-select__link {
        font-size: 12px
    }

    .child-term-select__link:before {
        width: 12px;
        height: 12px;
        vertical-align: middle;
        margin-right: 5px
    }

    .child-term-select__link+.child-term-select__link {
        margin-left: 15px
    }

    .child-area-selector {
        font-size: 14px
    }

    .child-area-selector__body a {
        font-size: 14px
    }

    .child-term-select-wrapper>* {
        width: calc(50% - 5px)
    }

    .child-term-select-wrapper>*:nth-child(n+3) {
        margin-top: 10px
    }

    .child-area-title {
        font-size: 24px;
        background-size: 90px auto;
        padding-top: 45px
    }

    .child-delivery-title {
        font-size: 14px;
        margin-bottom: 20px
    }

    .child-delivery-title span {
        font-size: 24px
    }

    .child-report__img img {
        vertical-align: bottom
    }

    .child-report__header {
        padding: 10px 80px 20px 15px
    }

    .child-report__header__date {
        font-size: 12px
    }

    .child-report__header__title {
        font-size: 18px
    }

    .child-report__header__toggle {
        right: 10px
    }

    .child-report__header__toggle img {
        width: 46px;
        height: auto
    }

    .child-report__body {
        padding: 15px 15px 20px
    }

    .child-report__column {
        flex-direction: column;
        margin-bottom: 20px
    }

    .child-report__column__thumbnail {
        width: 100%
    }

    .child-report__column__caption {
        margin-top: 15px;
        width: 100%;
        font-size: 12px
    }

    .child-report__comment-title {
        font-size: 14px;
        margin-bottom: 15px
    }

    .child-report__comment__avatar {
        width: 60px
    }

    .child-report__comment__body {
        padding: 10px;
        width: calc(100% - 80px)
    }

    .c-sanchoku-about__title {
        font-size: 15px
    }

    .c-sanchoku-about__inner__about-text {
        font-size: 14px
    }

    .c-sanchoku-about__inner__logo {
        margin: 0 auto 30px;
        width: 130px
    }

    .c-sanchoku-about__pdf__link:first-of-type {
        margin-bottom: 20px
    }

    .c-sanchoku-point {
        width: 100%
    }

    .c-sanchoku-point__title {
        font-size: 17px
    }

    .c-sanchoku-point__box__title {
        font-size: 15px
    }

    .c-sanchoku-point__box__small-text {
        width: auto
    }

    .c-sanchoku-describe {
        width: 100%
    }

    .c-sanchoku-describe__box__title {
        font-size: 18px
    }

    .c-sanchoku-describe__box__movie {
        width: 100%
    }

    .c-sanchoku-describe__feature {
        display: block
    }

    .c-sanchoku-describe__feature__box {
        width: 100%;
        margin-bottom: 40px
    }

    .c-sanchoku-describe__feature__box__upper-part__large-text {
        font-size: 50px
    }

    .c-sanchoku-describe__feature__box__image-part {
        position: relative
    }

    .c-sanchoku-describe__feature__box__image-part__image {
        width: 100%
    }

    .c-sanchoku-describe__feature__box__image-part__image-small {
        width: 40%;
        right: 0
    }

    .u-mt0sp {
        margin-top: 0 !important
    }

    .u-mr0sp {
        margin-right: 0 !important
    }

    .u-mb0sp {
        margin-bottom: 0 !important
    }

    .u-ml0sp {
        margin-left: 0 !important
    }

    .u-pt0sp {
        padding-top: 0 !important
    }

    .u-pr0sp {
        padding-right: 0 !important
    }

    .u-pb0sp {
        padding-bottom: 0 !important
    }

    .u-pl0sp {
        padding-left: 0 !important
    }

    .u-mt5sp {
        margin-top: 5px !important
    }

    .u-mr5sp {
        margin-right: 5px !important
    }

    .u-mb5sp {
        margin-bottom: 5px !important
    }

    .u-ml5sp {
        margin-left: 5px !important
    }

    .u-pt5sp {
        padding-top: 5px !important
    }

    .u-pr5sp {
        padding-right: 5px !important
    }

    .u-pb5sp {
        padding-bottom: 5px !important
    }

    .u-pl5sp {
        padding-left: 5px !important
    }

    .u-mt10sp {
        margin-top: 10px !important
    }

    .u-mr10sp {
        margin-right: 10px !important
    }

    .u-mb10sp {
        margin-bottom: 10px !important
    }

    .u-ml10sp {
        margin-left: 10px !important
    }

    .u-pt10sp {
        padding-top: 10px !important
    }

    .u-pr10sp {
        padding-right: 10px !important
    }

    .u-pb10sp {
        padding-bottom: 10px !important
    }

    .u-pl10sp {
        padding-left: 10px !important
    }

    .u-mt15sp {
        margin-top: 15px !important
    }

    .u-mr15sp {
        margin-right: 15px !important
    }

    .u-mb15sp {
        margin-bottom: 15px !important
    }

    .u-ml15sp {
        margin-left: 15px !important
    }

    .u-pt15sp {
        padding-top: 15px !important
    }

    .u-pr15sp {
        padding-right: 15px !important
    }

    .u-pb15sp {
        padding-bottom: 15px !important
    }

    .u-pl15sp {
        padding-left: 15px !important
    }

    .u-mt20sp {
        margin-top: 20px !important
    }

    .u-mr20sp {
        margin-right: 20px !important
    }

    .u-mb20sp {
        margin-bottom: 20px !important
    }

    .u-ml20sp {
        margin-left: 20px !important
    }

    .u-pt20sp {
        padding-top: 20px !important
    }

    .u-pr20sp {
        padding-right: 20px !important
    }

    .u-pb20sp {
        padding-bottom: 20px !important
    }

    .u-pl20sp {
        padding-left: 20px !important
    }

    .u-mt25sp {
        margin-top: 25px !important
    }

    .u-mr25sp {
        margin-right: 25px !important
    }

    .u-mb25sp {
        margin-bottom: 25px !important
    }

    .u-ml25sp {
        margin-left: 25px !important
    }

    .u-pt25sp {
        padding-top: 25px !important
    }

    .u-pr25sp {
        padding-right: 25px !important
    }

    .u-pb25sp {
        padding-bottom: 25px !important
    }

    .u-pl25sp {
        padding-left: 25px !important
    }

    .u-mt30sp {
        margin-top: 30px !important
    }

    .u-mr30sp {
        margin-right: 30px !important
    }

    .u-mb30sp {
        margin-bottom: 30px !important
    }

    .u-ml30sp {
        margin-left: 30px !important
    }

    .u-pt30sp {
        padding-top: 30px !important
    }

    .u-pr30sp {
        padding-right: 30px !important
    }

    .u-pb30sp {
        padding-bottom: 30px !important
    }

    .u-pl30sp {
        padding-left: 30px !important
    }

    .u-mt35sp {
        margin-top: 35px !important
    }

    .u-mr35sp {
        margin-right: 35px !important
    }

    .u-mb35sp {
        margin-bottom: 35px !important
    }

    .u-ml35sp {
        margin-left: 35px !important
    }

    .u-pt35sp {
        padding-top: 35px !important
    }

    .u-pr35sp {
        padding-right: 35px !important
    }

    .u-pb35sp {
        padding-bottom: 35px !important
    }

    .u-pl35sp {
        padding-left: 35px !important
    }

    .u-mt40sp {
        margin-top: 40px !important
    }

    .u-mr40sp {
        margin-right: 40px !important
    }

    .u-mb40sp {
        margin-bottom: 40px !important
    }

    .u-ml40sp {
        margin-left: 40px !important
    }

    .u-pt40sp {
        padding-top: 40px !important
    }

    .u-pr40sp {
        padding-right: 40px !important
    }

    .u-pb40sp {
        padding-bottom: 40px !important
    }

    .u-pl40sp {
        padding-left: 40px !important
    }

    .u-mt45sp {
        margin-top: 45px !important
    }

    .u-mr45sp {
        margin-right: 45px !important
    }

    .u-mb45sp {
        margin-bottom: 45px !important
    }

    .u-ml45sp {
        margin-left: 45px !important
    }

    .u-pt45sp {
        padding-top: 45px !important
    }

    .u-pr45sp {
        padding-right: 45px !important
    }

    .u-pb45sp {
        padding-bottom: 45px !important
    }

    .u-pl45sp {
        padding-left: 45px !important
    }

    .u-mt50sp {
        margin-top: 50px !important
    }

    .u-mr50sp {
        margin-right: 50px !important
    }

    .u-mb50sp {
        margin-bottom: 50px !important
    }

    .u-ml50sp {
        margin-left: 50px !important
    }

    .u-pt50sp {
        padding-top: 50px !important
    }

    .u-pr50sp {
        padding-right: 50px !important
    }

    .u-pb50sp {
        padding-bottom: 50px !important
    }

    .u-pl50sp {
        padding-left: 50px !important
    }

    .u-mt55sp {
        margin-top: 55px !important
    }

    .u-mr55sp {
        margin-right: 55px !important
    }

    .u-mb55sp {
        margin-bottom: 55px !important
    }

    .u-ml55sp {
        margin-left: 55px !important
    }

    .u-pt55sp {
        padding-top: 55px !important
    }

    .u-pr55sp {
        padding-right: 55px !important
    }

    .u-pb55sp {
        padding-bottom: 55px !important
    }

    .u-pl55sp {
        padding-left: 55px !important
    }

    .u-mt60sp {
        margin-top: 60px !important
    }

    .u-mr60sp {
        margin-right: 60px !important
    }

    .u-mb60sp {
        margin-bottom: 60px !important
    }

    .u-ml60sp {
        margin-left: 60px !important
    }

    .u-pt60sp {
        padding-top: 60px !important
    }

    .u-pr60sp {
        padding-right: 60px !important
    }

    .u-pb60sp {
        padding-bottom: 60px !important
    }

    .u-pl60sp {
        padding-left: 60px !important
    }

    .u-mt65sp {
        margin-top: 65px !important
    }

    .u-mr65sp {
        margin-right: 65px !important
    }

    .u-mb65sp {
        margin-bottom: 65px !important
    }

    .u-ml65sp {
        margin-left: 65px !important
    }

    .u-pt65sp {
        padding-top: 65px !important
    }

    .u-pr65sp {
        padding-right: 65px !important
    }

    .u-pb65sp {
        padding-bottom: 65px !important
    }

    .u-pl65sp {
        padding-left: 65px !important
    }

    .u-mt70sp {
        margin-top: 70px !important
    }

    .u-mr70sp {
        margin-right: 70px !important
    }

    .u-mb70sp {
        margin-bottom: 70px !important
    }

    .u-ml70sp {
        margin-left: 70px !important
    }

    .u-pt70sp {
        padding-top: 70px !important
    }

    .u-pr70sp {
        padding-right: 70px !important
    }

    .u-pb70sp {
        padding-bottom: 70px !important
    }

    .u-pl70sp {
        padding-left: 70px !important
    }

    .u-mt75sp {
        margin-top: 75px !important
    }

    .u-mr75sp {
        margin-right: 75px !important
    }

    .u-mb75sp {
        margin-bottom: 75px !important
    }

    .u-ml75sp {
        margin-left: 75px !important
    }

    .u-pt75sp {
        padding-top: 75px !important
    }

    .u-pr75sp {
        padding-right: 75px !important
    }

    .u-pb75sp {
        padding-bottom: 75px !important
    }

    .u-pl75sp {
        padding-left: 75px !important
    }

    .u-mt80sp {
        margin-top: 80px !important
    }

    .u-mr80sp {
        margin-right: 80px !important
    }

    .u-mb80sp {
        margin-bottom: 80px !important
    }

    .u-ml80sp {
        margin-left: 80px !important
    }

    .u-pt80sp {
        padding-top: 80px !important
    }

    .u-pr80sp {
        padding-right: 80px !important
    }

    .u-pb80sp {
        padding-bottom: 80px !important
    }

    .u-pl80sp {
        padding-left: 80px !important
    }

    .u-mt85sp {
        margin-top: 85px !important
    }

    .u-mr85sp {
        margin-right: 85px !important
    }

    .u-mb85sp {
        margin-bottom: 85px !important
    }

    .u-ml85sp {
        margin-left: 85px !important
    }

    .u-pt85sp {
        padding-top: 85px !important
    }

    .u-pr85sp {
        padding-right: 85px !important
    }

    .u-pb85sp {
        padding-bottom: 85px !important
    }

    .u-pl85sp {
        padding-left: 85px !important
    }

    .u-mt90sp {
        margin-top: 90px !important
    }

    .u-mr90sp {
        margin-right: 90px !important
    }

    .u-mb90sp {
        margin-bottom: 90px !important
    }

    .u-ml90sp {
        margin-left: 90px !important
    }

    .u-pt90sp {
        padding-top: 90px !important
    }

    .u-pr90sp {
        padding-right: 90px !important
    }

    .u-pb90sp {
        padding-bottom: 90px !important
    }

    .u-pl90sp {
        padding-left: 90px !important
    }

    .u-mt95sp {
        margin-top: 95px !important
    }

    .u-mr95sp {
        margin-right: 95px !important
    }

    .u-mb95sp {
        margin-bottom: 95px !important
    }

    .u-ml95sp {
        margin-left: 95px !important
    }

    .u-pt95sp {
        padding-top: 95px !important
    }

    .u-pr95sp {
        padding-right: 95px !important
    }

    .u-pb95sp {
        padding-bottom: 95px !important
    }

    .u-pl95sp {
        padding-left: 95px !important
    }

    .u-mt100sp {
        margin-top: 100px !important
    }

    .u-mr100sp {
        margin-right: 100px !important
    }

    .u-mb100sp {
        margin-bottom: 100px !important
    }

    .u-ml100sp {
        margin-left: 100px !important
    }

    .u-pt100sp {
        padding-top: 100px !important
    }

    .u-pr100sp {
        padding-right: 100px !important
    }

    .u-pb100sp {
        padding-bottom: 100px !important
    }

    .u-pl100sp {
        padding-left: 100px !important
    }

    .u-mlasp {
        margin-left: auto !important
    }

    .u-mrasp {
        margin-right: auto !important
    }

    .u-spHide {
        display: none !important
    }

    .u-fz10sp {
        font-size: 10px !important
    }

    .u-fz11sp {
        font-size: 11px !important
    }

    .u-fz12sp {
        font-size: 12px !important
    }

    .u-fz13sp {
        font-size: 13px !important
    }

    .u-fz14sp {
        font-size: 14px !important
    }

    .u-fz15sp {
        font-size: 15px !important
    }

    .u-fz16sp {
        font-size: 16px !important
    }

    .u-fz17sp {
        font-size: 17px !important
    }

    .u-fz18sp {
        font-size: 18px !important
    }

    .u-fz19sp {
        font-size: 19px !important
    }

    .u-fz20sp {
        font-size: 20px !important
    }

    .u-fz21sp {
        font-size: 21px !important
    }

    .u-fz22sp {
        font-size: 22px !important
    }

    .u-fz23sp {
        font-size: 23px !important
    }

    .u-fz24sp {
        font-size: 24px !important
    }

    .u-fz25sp {
        font-size: 25px !important
    }

    .u-fz26sp {
        font-size: 26px !important
    }

    .u-fz27sp {
        font-size: 27px !important
    }

    .u-fz28sp {
        font-size: 28px !important
    }

    .u-fz29sp {
        font-size: 29px !important
    }

    .u-fz30sp {
        font-size: 30px !important
    }

    .u-fz31sp {
        font-size: 31px !important
    }

    .u-fz32sp {
        font-size: 32px !important
    }

    .u-fz33sp {
        font-size: 33px !important
    }

    .u-fz34sp {
        font-size: 34px !important
    }

    .u-fz35sp {
        font-size: 35px !important
    }

    .u-fz36sp {
        font-size: 36px !important
    }

    .u-fz37sp {
        font-size: 37px !important
    }

    .u-fz38sp {
        font-size: 38px !important
    }

    .u-fz39sp {
        font-size: 39px !important
    }

    .u-fz40sp {
        font-size: 40px !important
    }

    .u-fz41sp {
        font-size: 41px !important
    }

    .u-fz42sp {
        font-size: 42px !important
    }

    .u-fz43sp {
        font-size: 43px !important
    }

    .u-fz44sp {
        font-size: 44px !important
    }

    .u-fz45sp {
        font-size: 45px !important
    }

    .u-fz46sp {
        font-size: 46px !important
    }

    .u-fz47sp {
        font-size: 47px !important
    }

    .u-fz48sp {
        font-size: 48px !important
    }

    .u-fz49sp {
        font-size: 49px !important
    }

    .u-fz50sp {
        font-size: 50px !important
    }

    .u-wh100psp {
        width: 100% !important;
        height: auto !important
    }
}

@media(min-width:768px) {
    .l-container {
        max-width: 1130px
    }

    .ec-cartRole .ec-cartRole__actions {
        margin-right: 0
    }

    .ec-headerNav .ec-headerNav__itemIcon {
        font-size: 24px
    }

    .ec-headerNaviRole {
        padding: 36px 40px
    }

    .ec-headerRole__cart {
        margin-left: 28px
    }

    .ec-cartNavi .ec-cartNavi__price {
        font-size: 17px
    }

    .ec-footerNavi__link {
        line-height: 1
    }

    .ec-footerNavi__link+.ec-footerNavi__link {
        border-left: 1px solid #000
    }

    .ec-footerNavi .ec-footerNavi__link a {
        font-size: 12px;
        text-decoration: none;
        line-height: 1
    }

    .ec-footerTitle {
        padding-top: 26px;
        padding-bottom: 14px
    }

    .ec-footerTitle .ec-footerTitle__logo {
        display: none
    }

    .ec-select2 {
        max-width: 200px
    }

    .ec-itemsanchokuNav a {
        margin-bottom: 15px
    }

    .ec-pager .ec-pager__item, .ec-pager .ec-pager__item--active {
        font-size: 16px
    }

    .ec-productRole__profile {
        margin-left: 10px !important
    }

    .ec-productRole__rightarea {
        width: 40% !important
    }

    .ec-productRole__leftarea {
        width: 60% !important
    }

    .ec-productRole .ec-productRole__tags {
        margin-top: 0
    }

    .ec-productRole .ec-productRole__category__title {
        width: 120px
    }

    .ec-blockBtn--area {
        width: 50%
    }

    .ec-blockBtn--cancel {
        width: 100%
    }

    .ec-blockBtn--entry {
        width: 100%
    }

    .ec-blockBtn--other {
        width: 45%
    }

    .l-container .ec-orderRole {
        width: auto;
        margin-left: -20px;
        margin-right: -20px
    }

    .ec-historyRole .ec-historyRole__header {
        width: 40%
    }

    .ec-historyRole .ec-historyRole__detail {
        width: 60%
    }

    .c-cart-content {
        width: 700px;
        flex: 0 0 700px
    }

    .c-cart-summary {
        width: 331px;
        margin-left: 20px
    }

    .c-item__title {
        min-height: 75px;
        max-height: 75px
    }

    .c-item .ec-blockBtn--action {
        height: 60px
    }

    .c-item-details__form .form-group {
        display: flex;
        align-items: center
    }

    .c-item-details__description-top {
        margin-left: 20px;
        margin-right: 20px
    }

    .c-item-details__description {
        padding-left: 20px;
        padding-right: 20px
    }

    .c-item-details__actions__button {
        min-width: 250px
    }

    .c-item-details__social {
        display: flex;
        justify-content: center;
        padding-top: 28px
    }

    .c-info__content, .c-info-faq__header__content, .c-info-guide__header__content {
        align-items: center
    }

    .c-info__date {
        width: 102px
    }

    .c-info--status .c-info__date {
        width: 150px;
        flex: 0 0 150px
    }

    .c-info__text {
        margin-left: 34px
    }

    .form-group input {
        height: 28px !important
    }

    .ec-blockTopBtn {
        right: 23px !important;
        bottom: 87px
    }

    .c-button-details--wide {
        width: 440px
    }

    .c-well {
        min-width: 350px
    }

    .c-well-sp-modal {
        display: none
    }

    .c-well-sp-modal {
        display: none !important
    }

    .c-well-sp-modal__overlay {
        display: none !important
    }

    .c-navRole__counter, .c-navRole__title {
        margin-bottom: 0;
        width: 50%
    }

    .c-navRole__actions {
        width: 50%
    }

    .c-side {
        right: 0;
        top: 95px;
        flex-direction: column;
        align-items: flex-end;
        display: flex
    }

    .c-side-social__item+.c-side-social__item {
        border-top: 1px solid #ccc
    }

    .top-bignews__item {
        width: 930px;
        margin: 0 auto
    }

    .top-bignews__text {
        font-size: 16px
    }

    .top-news__title__more {
        display: none
    }

    .top-news-item__date {
        flex: 0 0 130px;
        width: 130px
    }

    .top-news-item__content {
        padding-right: 30px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 55vw;
        max-width: 700px;
        flex: 0 1 55vw
    }

    .top-item-section__button-sp {
        display: none
    }

    .top-information-box__section {
        display: flex;
        flex-direction: column
    }

    .top-snack-text {
        display: flex;
        width: 720px;
        margin: 30px auto 0;
        justify-content: space-between;
        align-items: flex-end;
        padding: 0 0 30px;
        border-bottom: 1px solid #ccc
    }

    .top-snack-text>div {
        width: 300px
    }

    .top-snack-text__info {
        font-weight: 700;
        font-size: 24px;
        width: 400px;
        position: relative
    }

    .top-snack-text__info__date {
        position: absolute;
        top: 0;
        right: 0
    }

    .about-app {
        display: flex;
        margin-left: 80px;
        margin-right: 80px;
        margin-top: 30px;
        justify-content: space-between
    }

    #about-android .about-app__item__data {
        width: 204px
    }

    .ec-productRole__category {
        padding: 8px 0 !important
    }

    .shokudo-org__aside {
        width: 432px
    }

    .shokudo-org__content {
        width: auto;
        max-width: calc(100% - 432px - 60px);
        min-width: 615px
    }

    .cart-basket__cell__title {
        display: none
    }

    .cart-basket__ammount__controls {
        margin-top: 16px
    }

    #tbl_point_log td, #tbl_point_log th {
        font-size: 16px
    }

    #tbl_point_log th:nth-child(2) {
        padding-left: 34px
    }

    #tbl_point_log td:nth-child(2) {
        padding-left: 34px
    }

    #tbl_support td, #tbl_support th {
        font-size: 16px
    }

    #tbl_support th:nth-child(2) {
        padding-left: 34px
    }

    #tbl_support td:nth-child(2) {
        padding-left: 34px
    }

    .ec-favoriteRole__item:nth-child(3n) {
        margin-right: 0
    }

    .ec-favoriteRole__item:nth-child(n+4) {
        margin-top: 15px
    }

    .support-companies__item--logo-wide .support-companies__item__img {
        width: 220px
    }

    .support-maker {
        padding-left: 20px;
        padding-right: 20px
    }

    .support-sdg {
        justify-content: center
    }

    .c-sanchoku-about__title {
        font-size: 30px
    }

    .c-sanchoku-about__inner__about-text {
        font-size: 28px
    }

    .c-sanchoku-about__pdf {
        display: flex;
        justify-content: space-between
    }

    .c-sanchoku-about__pdf__link {
        width: 450px
    }

    .c-sanchoku-about__pdf__link:first-of-type {
        margin-right: 20px
    }

    .c-sanchoku-about__form {
        width: 50%
    }

    .c-sanchoku-describe__feature__box {
        position: relative;
        width: 32%;
        max-width: 288px;
        padding-bottom: 30%
    }

    .c-sanchoku-describe__feature__box__image-part {
        position: absolute;
        left: 0;
        bottom: 0
    }

    .c-sanchoku-describe__feature__box__image-part__image {
        width: 288px
    }

    .c-sanchoku-describe__feature__box__image-part__image-small {
        width: 144px
    }

    .u-mt0pc {
        margin-top: 0 !important
    }

    .u-mr0pc {
        margin-right: 0 !important
    }

    .u-mb0pc {
        margin-bottom: 0 !important
    }

    .u-ml0pc {
        margin-left: 0 !important
    }

    .u-pt0pc {
        padding-top: 0 !important
    }

    .u-pr0pc {
        padding-right: 0 !important
    }

    .u-pb0pc {
        padding-bottom: 0 !important
    }

    .u-pl0pc {
        padding-left: 0 !important
    }

    .u-mt5pc {
        margin-top: 5px !important
    }

    .u-mr5pc {
        margin-right: 5px !important
    }

    .u-mb5pc {
        margin-bottom: 5px !important
    }

    .u-ml5pc {
        margin-left: 5px !important
    }

    .u-pt5pc {
        padding-top: 5px !important
    }

    .u-pr5pc {
        padding-right: 5px !important
    }

    .u-pb5pc {
        padding-bottom: 5px !important
    }

    .u-pl5pc {
        padding-left: 5px !important
    }

    .u-mt10pc {
        margin-top: 10px !important
    }

    .u-mr10pc {
        margin-right: 10px !important
    }

    .u-mb10pc {
        margin-bottom: 10px !important
    }

    .u-ml10pc {
        margin-left: 10px !important
    }

    .u-pt10pc {
        padding-top: 10px !important
    }

    .u-pr10pc {
        padding-right: 10px !important
    }

    .u-pb10pc {
        padding-bottom: 10px !important
    }

    .u-pl10pc {
        padding-left: 10px !important
    }

    .u-mt15pc {
        margin-top: 15px !important
    }

    .u-mr15pc {
        margin-right: 15px !important
    }

    .u-mb15pc {
        margin-bottom: 15px !important
    }

    .u-ml15pc {
        margin-left: 15px !important
    }

    .u-pt15pc {
        padding-top: 15px !important
    }

    .u-pr15pc {
        padding-right: 15px !important
    }

    .u-pb15pc {
        padding-bottom: 15px !important
    }

    .u-pl15pc {
        padding-left: 15px !important
    }

    .u-mt20pc {
        margin-top: 20px !important
    }

    .u-mr20pc {
        margin-right: 20px !important
    }

    .u-mb20pc {
        margin-bottom: 20px !important
    }

    .u-ml20pc {
        margin-left: 20px !important
    }

    .u-pt20pc {
        padding-top: 20px !important
    }

    .u-pr20pc {
        padding-right: 20px !important
    }

    .u-pb20pc {
        padding-bottom: 20px !important
    }

    .u-pl20pc {
        padding-left: 20px !important
    }

    .u-mt25pc {
        margin-top: 25px !important
    }

    .u-mr25pc {
        margin-right: 25px !important
    }

    .u-mb25pc {
        margin-bottom: 25px !important
    }

    .u-ml25pc {
        margin-left: 25px !important
    }

    .u-pt25pc {
        padding-top: 25px !important
    }

    .u-pr25pc {
        padding-right: 25px !important
    }

    .u-pb25pc {
        padding-bottom: 25px !important
    }

    .u-pl25pc {
        padding-left: 25px !important
    }

    .u-mt30pc {
        margin-top: 30px !important
    }

    .u-mr30pc {
        margin-right: 30px !important
    }

    .u-mb30pc {
        margin-bottom: 30px !important
    }

    .u-ml30pc {
        margin-left: 30px !important
    }

    .u-pt30pc {
        padding-top: 30px !important
    }

    .u-pr30pc {
        padding-right: 30px !important
    }

    .u-pb30pc {
        padding-bottom: 30px !important
    }

    .u-pl30pc {
        padding-left: 30px !important
    }

    .u-mt35pc {
        margin-top: 35px !important
    }

    .u-mr35pc {
        margin-right: 35px !important
    }

    .u-mb35pc {
        margin-bottom: 35px !important
    }

    .u-ml35pc {
        margin-left: 35px !important
    }

    .u-pt35pc {
        padding-top: 35px !important
    }

    .u-pr35pc {
        padding-right: 35px !important
    }

    .u-pb35pc {
        padding-bottom: 35px !important
    }

    .u-pl35pc {
        padding-left: 35px !important
    }

    .u-mt40pc {
        margin-top: 40px !important
    }

    .u-mr40pc {
        margin-right: 40px !important
    }

    .u-mb40pc {
        margin-bottom: 40px !important
    }

    .u-ml40pc {
        margin-left: 40px !important
    }

    .u-pt40pc {
        padding-top: 40px !important
    }

    .u-pr40pc {
        padding-right: 40px !important
    }

    .u-pb40pc {
        padding-bottom: 40px !important
    }

    .u-pl40pc {
        padding-left: 40px !important
    }

    .u-mt45pc {
        margin-top: 45px !important
    }

    .u-mr45pc {
        margin-right: 45px !important
    }

    .u-mb45pc {
        margin-bottom: 45px !important
    }

    .u-ml45pc {
        margin-left: 45px !important
    }

    .u-pt45pc {
        padding-top: 45px !important
    }

    .u-pr45pc {
        padding-right: 45px !important
    }

    .u-pb45pc {
        padding-bottom: 45px !important
    }

    .u-pl45pc {
        padding-left: 45px !important
    }

    .u-mt50pc {
        margin-top: 50px !important
    }

    .u-mr50pc {
        margin-right: 50px !important
    }

    .u-mb50pc {
        margin-bottom: 50px !important
    }

    .u-ml50pc {
        margin-left: 50px !important
    }

    .u-pt50pc {
        padding-top: 50px !important
    }

    .u-pr50pc {
        padding-right: 50px !important
    }

    .u-pb50pc {
        padding-bottom: 50px !important
    }

    .u-pl50pc {
        padding-left: 50px !important
    }

    .u-mt55pc {
        margin-top: 55px !important
    }

    .u-mr55pc {
        margin-right: 55px !important
    }

    .u-mb55pc {
        margin-bottom: 55px !important
    }

    .u-ml55pc {
        margin-left: 55px !important
    }

    .u-pt55pc {
        padding-top: 55px !important
    }

    .u-pr55pc {
        padding-right: 55px !important
    }

    .u-pb55pc {
        padding-bottom: 55px !important
    }

    .u-pl55pc {
        padding-left: 55px !important
    }

    .u-mt60pc {
        margin-top: 60px !important
    }

    .u-mr60pc {
        margin-right: 60px !important
    }

    .u-mb60pc {
        margin-bottom: 60px !important
    }

    .u-ml60pc {
        margin-left: 60px !important
    }

    .u-pt60pc {
        padding-top: 60px !important
    }

    .u-pr60pc {
        padding-right: 60px !important
    }

    .u-pb60pc {
        padding-bottom: 60px !important
    }

    .u-pl60pc {
        padding-left: 60px !important
    }

    .u-mt65pc {
        margin-top: 65px !important
    }

    .u-mr65pc {
        margin-right: 65px !important
    }

    .u-mb65pc {
        margin-bottom: 65px !important
    }

    .u-ml65pc {
        margin-left: 65px !important
    }

    .u-pt65pc {
        padding-top: 65px !important
    }

    .u-pr65pc {
        padding-right: 65px !important
    }

    .u-pb65pc {
        padding-bottom: 65px !important
    }

    .u-pl65pc {
        padding-left: 65px !important
    }

    .u-mt70pc {
        margin-top: 70px !important
    }

    .u-mr70pc {
        margin-right: 70px !important
    }

    .u-mb70pc {
        margin-bottom: 70px !important
    }

    .u-ml70pc {
        margin-left: 70px !important
    }

    .u-pt70pc {
        padding-top: 70px !important
    }

    .u-pr70pc {
        padding-right: 70px !important
    }

    .u-pb70pc {
        padding-bottom: 70px !important
    }

    .u-pl70pc {
        padding-left: 70px !important
    }

    .u-mt75pc {
        margin-top: 75px !important
    }

    .u-mr75pc {
        margin-right: 75px !important
    }

    .u-mb75pc {
        margin-bottom: 75px !important
    }

    .u-ml75pc {
        margin-left: 75px !important
    }

    .u-pt75pc {
        padding-top: 75px !important
    }

    .u-pr75pc {
        padding-right: 75px !important
    }

    .u-pb75pc {
        padding-bottom: 75px !important
    }

    .u-pl75pc {
        padding-left: 75px !important
    }

    .u-mt80pc {
        margin-top: 80px !important
    }

    .u-mr80pc {
        margin-right: 80px !important
    }

    .u-mb80pc {
        margin-bottom: 80px !important
    }

    .u-ml80pc {
        margin-left: 80px !important
    }

    .u-pt80pc {
        padding-top: 80px !important
    }

    .u-pr80pc {
        padding-right: 80px !important
    }

    .u-pb80pc {
        padding-bottom: 80px !important
    }

    .u-pl80pc {
        padding-left: 80px !important
    }

    .u-mt85pc {
        margin-top: 85px !important
    }

    .u-mr85pc {
        margin-right: 85px !important
    }

    .u-mb85pc {
        margin-bottom: 85px !important
    }

    .u-ml85pc {
        margin-left: 85px !important
    }

    .u-pt85pc {
        padding-top: 85px !important
    }

    .u-pr85pc {
        padding-right: 85px !important
    }

    .u-pb85pc {
        padding-bottom: 85px !important
    }

    .u-pl85pc {
        padding-left: 85px !important
    }

    .u-mt90pc {
        margin-top: 90px !important
    }

    .u-mr90pc {
        margin-right: 90px !important
    }

    .u-mb90pc {
        margin-bottom: 90px !important
    }

    .u-ml90pc {
        margin-left: 90px !important
    }

    .u-pt90pc {
        padding-top: 90px !important
    }

    .u-pr90pc {
        padding-right: 90px !important
    }

    .u-pb90pc {
        padding-bottom: 90px !important
    }

    .u-pl90pc {
        padding-left: 90px !important
    }

    .u-mt95pc {
        margin-top: 95px !important
    }

    .u-mr95pc {
        margin-right: 95px !important
    }

    .u-mb95pc {
        margin-bottom: 95px !important
    }

    .u-ml95pc {
        margin-left: 95px !important
    }

    .u-pt95pc {
        padding-top: 95px !important
    }

    .u-pr95pc {
        padding-right: 95px !important
    }

    .u-pb95pc {
        padding-bottom: 95px !important
    }

    .u-pl95pc {
        padding-left: 95px !important
    }

    .u-mt100pc {
        margin-top: 100px !important
    }

    .u-mr100pc {
        margin-right: 100px !important
    }

    .u-mb100pc {
        margin-bottom: 100px !important
    }

    .u-ml100pc {
        margin-left: 100px !important
    }

    .u-pt100pc {
        padding-top: 100px !important
    }

    .u-pr100pc {
        padding-right: 100px !important
    }

    .u-pb100pc {
        padding-bottom: 100px !important
    }

    .u-pl100pc {
        padding-left: 100px !important
    }

    .u-mlapc {
        margin-left: auto !important
    }

    .u-mrapc {
        margin-right: auto !important
    }

    .u-pcHide {
        display: none !important
    }

    .u-fz10pc {
        font-size: 10px !important
    }

    .u-fz11pc {
        font-size: 11px !important
    }

    .u-fz12pc {
        font-size: 12px !important
    }

    .u-fz13pc {
        font-size: 13px !important
    }

    .u-fz14pc {
        font-size: 14px !important
    }

    .u-fz15pc {
        font-size: 15px !important
    }

    .u-fz16pc {
        font-size: 16px !important
    }

    .u-fz17pc {
        font-size: 17px !important
    }

    .u-fz18pc {
        font-size: 18px !important
    }

    .u-fz19pc {
        font-size: 19px !important
    }

    .u-fz20pc {
        font-size: 20px !important
    }

    .u-fz21pc {
        font-size: 21px !important
    }

    .u-fz22pc {
        font-size: 22px !important
    }

    .u-fz23pc {
        font-size: 23px !important
    }

    .u-fz24pc {
        font-size: 24px !important
    }

    .u-fz25pc {
        font-size: 25px !important
    }

    .u-fz26pc {
        font-size: 26px !important
    }

    .u-fz27pc {
        font-size: 27px !important
    }

    .u-fz28pc {
        font-size: 28px !important
    }

    .u-fz29pc {
        font-size: 29px !important
    }

    .u-fz30pc {
        font-size: 30px !important
    }

    .u-fz31pc {
        font-size: 31px !important
    }

    .u-fz32pc {
        font-size: 32px !important
    }

    .u-fz33pc {
        font-size: 33px !important
    }

    .u-fz34pc {
        font-size: 34px !important
    }

    .u-fz35pc {
        font-size: 35px !important
    }

    .u-fz36pc {
        font-size: 36px !important
    }

    .u-fz37pc {
        font-size: 37px !important
    }

    .u-fz38pc {
        font-size: 38px !important
    }

    .u-fz39pc {
        font-size: 39px !important
    }

    .u-fz40pc {
        font-size: 40px !important
    }

    .u-fz41pc {
        font-size: 41px !important
    }

    .u-fz42pc {
        font-size: 42px !important
    }

    .u-fz43pc {
        font-size: 43px !important
    }

    .u-fz44pc {
        font-size: 44px !important
    }

    .u-fz45pc {
        font-size: 45px !important
    }

    .u-fz46pc {
        font-size: 46px !important
    }

    .u-fz47pc {
        font-size: 47px !important
    }

    .u-fz48pc {
        font-size: 48px !important
    }

    .u-fz49pc {
        font-size: 49px !important
    }

    .u-fz50pc {
        font-size: 50px !important
    }
}

@media screen and (max-width:834px) and (min-width:768px) {
    .ec-select select {
        width: 100% !important;
        max-width: 200px
    }

    .ec-itemNav {
        width: 100%
    }

    .ec-itemsanchokuNav {
        width: 100%
    }

    .ec-productRole__profile {
        margin-left: 0 !important
    }

    .c-item-wrap {
        width: 100%
    }

    .c-item-relation {
        width: 100%
    }

    .c-footer-details {
        width: 720px
    }

    .c-footer-details__column {
        width: 350px !important
    }

    .c-footer-links__link {
        font-size: 14px
    }

    .c-header-nav__link {
        font-size: 16px
    }

    .c-well {
        max-width: 293px;
        min-width: 293px
    }

    .c-box {
        padding: 15px;
        margin-bottom: 50px
    }

    .c-box--fullpage {
        width: 100% !important
    }
}

@media screen and (min-width:768px) and (max-width:1100px) {
    .c-cart-content {
        width: auto;
        flex: 1 0 auto
    }
}

@media(max-width:374px) {
    .c-item__title {
        font-size: 14px
    }

    .c-item__stock__ammount {
        font-size: 16px
    }

    .c-item .ec-numberInput span {
        font-size: 13px
    }

    .c-item .ec-numberInput input[type=number] {
        font-size: 13px;
        max-width: 78px
    }

    .c-item .ec-productRole__btn {
        margin-top: 15px
    }

    .c-item .ec-blockBtn--action {
        font-size: 13px;
        height: 45px;
        line-height: 45px
    }

    .c-item__stock__notice, .c-item-details .ec-productRole__tag {
        font-size: 13px;
        padding-left: 5px;
        padding-right: 5px
    }

    .c-item-details__social__button {
        min-width: 62px
    }

    .c-item-details__social__button__icon {
        width: 14px;
        height: 14px;
        margin-right: 4px
    }

    .c-item-details__social__button__text {
        font-family: "12px"
    }

    .c-title-page {
        font-size: 18px
    }

    .c-section-organization__aside__logo {
        max-width: 240px;
        max-height: 150px
    }

    .c-button-donation {
        width: 280px
    }

    .donation-org__aside__logo {
        max-width: 240px;
        max-height: 150px
    }

    .donation-org__price__text {
        font-size: 13px
    }

    .donation-org__price__money {
        font-size: 11px
    }

    .donation-org__photos__photo {
        width: 132px
    }

    .donation-org .c-info__date {
        font-size: 14px
    }

    .donation-org .c-info__text {
        font-size: 14px
    }

    .cart-basket__total {
        width: 75%
    }
}

@media all and (-ms-high-contrast:none), (-ms-high-contrast:active) {
    .c-info-faq, .c-info-guide {
        width: 47%;
        flex-basis: 47%
    }
}

@media(max-width:999px) {
    .top-news-item__content {
        width: 44.5vw;
        flex-basis: 44.5vw
    }
}

@media(max-width:1020px) {
    .cart-basket__product__img {
        width: 80px;
        height: 80px;
        flex-basis: 80px;
        margin-right: 18px
    }
}

@media screen and (-ms-high-contrast:active), (-ms-high-contrast:none) {
    .support-maker__item {
        flex-basis: 42%
    }
}

/*css微調整*/
.ec-layoutRole__sub-contents:before {
    content: none;
}

.ec-layoutRole__footer {
    padding-top: 0;
}

.c-footer-logo {
    margin-top: 0;
    padding-top: 25px;
}

@media (max-width: 767px) {
    body {
        padding-bottom: 0;
    }
}