@charset "UTF-8"; //マップ型変数breakpointsを定義 $breakpoints: ( //キー  値 'sm': 'screen and (max-width: 767px)', //スマホ 'md': 'screen and (min-width: 768px)', //pc ) !default; //メディアクエリ用のmixinを定義。デフォ値はmd @mixin mq($breakpoint: md) { //map-get(マップ型変数, キー)で値を取得 @media #{map-get($breakpoints, $breakpoint)} { //この中をカスタムできる @content; } } // colors $font-color: #fff; // comon @include mq(sm) { .is-pc { display: none; } } @include mq(md) { .is-sp { display: none; } } /* detail -------------------------------------------------- */ .item-detail{ margin: 150px auto 80px; display: flex; background: #f2f2f2; padding: 30px; img{ width: 100%; display: block; } @include mq(sm) { display: block; padding: 20px; margin: 0 auto 80px; } } /* main -------------------------------------------------- */ .item-detail-main { width: 50%; margin-right: 3%; & .mouse-note { text-align: center; margin-top: 5px; } @include mq(sm) { width: auto; margin-right: 0; margin-bottom: 20px; } } /* detail -------------------------------------------------- */ .item-detail-info { width: 47%; @include mq(sm) { width: auto; } } .new-label { display: inline-block; padding: 5px 10px; line-height: 1; margin-bottom: 10px; background: #f03a47; color: #fff; border-radius: 3px; font-weight: bold; } .item-detail-name { font-size: 30px; font-weight: bold; margin-bottom: 20px; font-family: serif; } .item-detail-brand { margin-bottom: 20px; font-size: 18px; font-weight: bold; } .item-size { margin-bottom: 20px; font-size: 18px; li { border-radius: 5px; background: #fff; display: inline-block; padding: 5px 20px; font-size: 16px; font-weight: bold; border: 1px solid #e5e5e5; cursor: pointer; margin-bottom: 3px; &.is-active { background: #333; color: #fff; } } } .item-size-select { font-size: 18px; font-weight: bold; margin-bottom: 5px; } .item-detail-price { font-size: 30px; margin-bottom: 20px; font-weight: bold; color: #f03a47; font-family: serif; } [data-accordion="trigger"] { margin-top: 18px; font-weight: bold; cursor: pointer; font-size: 18px; &::before { content: "▼"; margin-right: 6px; display: inline-block; } &.is-active::before { content: "ー"; } } [data-accordion="target"] { margin-top: 18px; display: none; } /* review -------------------------------------------------- */ .review { display: flex; font-size: 30px; li { margin-right: 20px; color: #ccc; cursor: pointer; &.is-active { color: #FFC107; } } } .review-title { font-size: 30px; font-weight: bold; }