@charset 'utf-8';
/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
pre,textarea{overflow:auto}
[hidden],audio:not([controls]),template{display:none}
details,main,summary{display:block}
input[type=number]{width:auto}
input[type=search]{-webkit-appearance:textfield}
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}
progress{display:inline-block}
textarea{resize:vertical}
[unselectable]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
*,::after,::before{box-sizing:inherit;border-width:0}
*{font-size:inherit;line-height:inherit;margin:0;padding:0}
::after,::before{text-decoration:inherit;vertical-align:inherit}
:root{-ms-overflow-style:-ms-autohiding-scrollbar;overflow-y:scroll;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;cursor:default;}
a{text-decoration:none;outline:none;}
audio,canvas,iframe,img,svg,video{vertical-align:top}
img{border:none;}
canvas{width:0;height:0}
button,input,select,textarea{background-color:transparent;color:inherit;font-family:inherit;font-style:inherit;font-weight:inherit;min-height:1.5em}
button:focus,input:focus,select:focus,textarea:focus{outline:none;}
code,kbd,pre,samp{font-family:monospace,monospace}
ol,ul{list-style:none}
select{-moz-appearance:none;-webkit-appearance:none}
select::-ms-expand{display:none}
select::-ms-value{color:currentColor}
table{border-collapse:collapse;border-spacing:0}
::-moz-selection{background-color:#B3D4FC;text-shadow:none}
::selection{background-color:#B3D4FC;text-shadow:none}
@media screen{[hidden~=screen]{display:inherit}
[hidden~=screen]:not(:active):not(:focus):not(:target){clip:rect(0 0 0 0)!important;position:absolute!important}
}
html
{
    height: 100%;
}

body
{
    font: 10px/1.75 -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Yu Gothic', YuGothic, Verdana, Meiryo, 'M+ 1p', sans-serif;
    font-weight: bold;
    position: relative;
    overflow: hidden;
    letter-spacing: 0;

    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; /*&.zoom
    overflow hidden
    height 100%*/
}

body .device-pc
{
    display: none;
}

*
{
    font-style: normal;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    max-height: 99999px;

    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

a
{
    display: block;
    cursor: pointer;
    color: #509be5;
}

img
{
    display: block;
    width: 100%;
}

.font-normal
{
    font-weight: normal;
}

/*@font-face
  font-family "techo2017"
  src url(/store/techo/pc/ja/2017/fonts/techo2017.eot)*/

@font-face
{
    font-family: 'techo2018';

    src: url('data:application/x-font-ttf;charset=utf-8;base64,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') format('truetype');
}

[class*='icon-']:before
{
    font-family: 'techo2018';
}

.icon-cart:before
{
    content: '\e900';
}

.icon-line:before
{
    content: '\e902';
}

.icon-cart-plus:before
{
    content: '\e901';
}

.icon-new:before
{
    content: '\e63c';
}

[class*='mdi-']:before
{
    font-family: 'Material Design Icons';
}

[class*='icon-']:before,
[class*='mdi-']:before
{
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    white-space: nowrap;
    letter-spacing: normal;
    text-transform: none;
    word-wrap: normal;

    direction: ltr;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

:not(i)[class*='icon-']:before,
:not(i)[class*='mdi-']:before
{
    font-size: 24px;
    line-height: 1;
    display: block;
}

i[class*='icon-'],
i[class*='mdi-']
{
    display: inline-block;
    vertical-align: middle;
}

i[class*='icon-']:before,
i[class*='mdi-']:before
{
    display: block;
}

.title
{
    text-align: center;
}

.title span
{
    font-size: 16px;
    line-height: 1.31;
    display: inline-block;
}

.btn-plain
{
    font-size: 16px;
    line-height: 1.5;
    position: relative;
}

.btn-plain:before
{
    font-size: 24px;
    position: absolute;
    top: calc(50% - .5em);
}

.btn-plain span
{
    display: inline-block;
}

.btn-plain.mdi-arrow-right
{
    padding-right: 24px;
}

.btn-plain.mdi-arrow-right:before
{
    right: 0;
}

.btn-plain.mdi-arrow-left
{
    padding-left: 24px;
}

.btn-plain.mdi-arrow-left:before
{
    left: 0;
}

/*a.btn-round
  text-align center
  border-radius 6px
  color #fff
  background #509be5
  margin 0 round(100%*5/320,2)
  position relative
  &:after
    content ""
    height 4.4em
    display inline-block
    vertical-align middle
  &:before
    display inline-block
    vertical-align middle
    font-size 240%
  span
    font-size 160%
    display inline-block
    vertical-align middle
  i
    display inline-block
    vertical-align middle
    font-size 240%*/

.btn-gotop
{
    position: fixed;
    z-index: 99;
    z-index: 99;
    right: 1.56%;
    bottom: 49px;
    overflow: hidden;
    width: 44px;
    height: 44px;
    -webkit-transition: opacity .45s cubic-bezier(.77, 0, .175, 1), -webkit-transform .45s cubic-bezier(.77, 0, .175, 1);
       -moz-transition: opacity .45s cubic-bezier(.77, 0, .175, 1), -moz-transform .45s cubic-bezier(.77, 0, .175, 1);
        -ms-transition: opacity .45s cubic-bezier(.77, 0, .175, 1), -ms-transform .45s cubic-bezier(.77, 0, .175, 1);
         -o-transition: opacity .45s cubic-bezier(.77, 0, .175, 1), -o-transform .45s cubic-bezier(.77, 0, .175, 1);
            transition: opacity .45s cubic-bezier(.77, 0, .175, 1), transform .45s cubic-bezier(.77, 0, .175, 1);
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
    opacity: 1;
    color: #000;
    border: 1px #e5e5e5 solid;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    background: #f2f2f2;

    -backface-visibility: hidden;
}

.btn-gotop.disabled
{
    -webkit-transition: opacity .45s cubic-bezier(.455, .03, .515, .955), -webkit-transform .45s cubic-bezier(.455, .03, .515, .955);
       -moz-transition: opacity .45s cubic-bezier(.455, .03, .515, .955), -moz-transform .45s cubic-bezier(.455, .03, .515, .955);
        -ms-transition: opacity .45s cubic-bezier(.455, .03, .515, .955), -ms-transform .45s cubic-bezier(.455, .03, .515, .955);
         -o-transition: opacity .45s cubic-bezier(.455, .03, .515, .955), -o-transform .45s cubic-bezier(.455, .03, .515, .955);
            transition: opacity .45s cubic-bezier(.455, .03, .515, .955), transform .45s cubic-bezier(.455, .03, .515, .955);
    -webkit-transform: scale(0);
       -moz-transform: scale(0);
        -ms-transform: scale(0);
         -o-transform: scale(0);
            transform: scale(0);
    pointer-events: none;
    opacity: 0;
}

.btn-gotop span
{
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
}

.btn-gotop span:before
{
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
}

.btn-desktop
{
    font-size: 16px;
    text-align: center;
}

.btn-desktop i
{
    font-size: 24px;
    margin-right: 5px;
}

a[target][target='external']:not([href*='//www.1101.com']):not([href*='//help.1101.com']):not([href^='/']):not(:empty).btn-permeate:after,
a[target][target='_blank']:not([href*='//www.1101.com']):not([href*='//help.1101.com']):not([href^='/']):not(:empty).btn-permeate:after,
a[target][target='external']:not([href*='//www.1101.com']):not([href*='//help.1101.com']):not([href^='/']):not(:empty):not([class*='btn-']):after,
a[target][target='_blank']:not([href*='//www.1101.com']):not([href*='//help.1101.com']):not([href^='/']):not(:empty):not([class*='btn-']):after
{
    font-family: 'Material Design Icons';
    font-size: 80%;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    position: relative;
    top: -.2em;
    content: '\F3CC';
    vertical-align: middle;
    white-space: nowrap;
    letter-spacing: normal;
    text-transform: none;
    word-wrap: normal;

    direction: ltr;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/*a[target]
  &:not([target="_self"])
    &:not(:empty)
      &.btn-permeate
      &:not([class*="btn-"])
        &:after
          content:"\F3CC"
          font-family "Material Design Icons"
          font-size 80%
          vertical-align text-bottom
          font-weight normal
          font-style normal
          font-variant normal
          text-transform none
          letter-spacing normal
          word-wrap normal
          white-space nowrap
          direction ltr
          speak none
          -webkit-font-smoothing antialiased
          -moz-osx-font-smoothing grayscale*/

a.btn-external:after
{
    content: none !important;
}

/*a.btn-content
  dl
    border-bottom .1em #e5e5e5 solid
    dt
      position relative
      padding-top 100%
      background url(/store/techo/2018/images/loading3.gif) no-repeat 50% 50%
      img
        position absolute
        top 0
        left 0
        width 100%
        height 100%
    dd
      color #000
      line-height 1.8
      position relative
      &:before
        position absolute
        right 0
        bottom 0
        transform translate(round(-1em*5/12,2), round(-1em*5/12,2))
        color #509be5
        font-size 12px
      strong
        display block
        font-size 120%
        line-height 1.5
      ol
        li
          font-size 120%
          line-height 1.5
          small
            font-size round(100%*10/12,2)
            line-height 1.8
            &:after
              content "："*/

.content-flex
{
    display: -webkit-box;
    display:    -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         box;
    display:         flex;
    padding-left: 3.13%;

    -webkit-box-lines: multiple;
       -moz-box-lines: multiple;
         -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.content-flex.active
{
    display: -webkit-box !important;
    display:    -moz-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display:         box !important;
    display:         flex !important;
}

.content-flex > li
{
    border-right: #e5e5e5 1px solid;
    border-bottom: #e5e5e5 1px solid;
    -webkit-border-radius: 0 0 .5em 0;
            border-radius: 0 0 .5em 0;
}

.content-flex > li a
{
    cursor: pointer;
    color: #000;
}

.content-flex > li a dl dt
{
    position: relative;
    overflow: hidden;
    padding-top: 100%;
}

.content-flex > li a dl dt > img
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.content-flex > li a dl dt i
{
    position: absolute;
    left: 0;
    width: 40px;
    height: 40px;
}

.content-flex > li a dl dt i:nth-of-type(1)
{
    top: 0;
}

.content-flex > li a dl dt i:nth-of-type(2)
{
    top: 41px;
}

.content-flex > li a dl dt i:nth-of-type(3)
{
    top: 82px;
}

.content-flex > li a dl dt i:nth-of-type(4)
{
    top: 123px;
}

.content-flex > li a dl dt i img
{
    width: 100%;
}

.content-flex > li a dl dd
{
    position: relative;
    overflow: hidden;
    padding-top: 3px;
    padding-bottom: 2px;
}

.content-flex > li a dl dd:nth-of-type(1)
{
    padding-right: 30px;
}

.content-flex > li a dl dd:nth-of-type(1) span
{
    line-height: 1.8;
    display: block;
    display: -webkit-box;
    overflow: hidden;
    height: 18px;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.content-flex > li a dl dd:nth-of-type(1) span:empty
{
    height: 0;
}

.content-flex > li a dl dd:nth-of-type(1) strong
{
    font-size: 12px;
    line-height: 1.5;
    display: block;
    display: -webkit-box;
    overflow: hidden;
    max-height: 54px;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.content-flex > li a dl dd.mdi-arrow-right-bold
{
    padding-right: 20px !important;
}

.content-flex > li a dl dd.mdi-arrow-right-bold:before
{
    font-size: 16px;
    position: absolute;
    right: 3px;
    bottom: 2px;
    color: #509be5;
}

.content-flex > li a dl dd ~ dd:nth-last-child(1)
{
    border-top: #e5e5e5 1px solid;
}

.content-flex > li a dl dd ol li
{
    font-size: 12px;
    line-height: 1.5;
}

.content-flex > li a dl dd ol li small
{
    font-size: 10px;
    line-height: 1.8;
    display: none;
}

.content-flex > li a dl dd ol li small:empty
{
    display: none;
}

.content-flex > li a dl dd ol li small:not(:empty):before
{
    display: none;
}

.content-flex > li a dl dd ol li small:after
{
    font-size: 12px;
    line-height: 1.5;
    content: '：';
}

.content-flex > li a dl dd ol li span
{
    display: inline-block;
    vertical-align: middle;
}

.content-flex > li a dl dd p:nth-last-of-type(2)
{
    font-size: 12px;
    font-weight: normal;
    line-height: 1.5;
    display: block;
    display: -webkit-box;
    height: 90px;
    margin: 4px 0 5px;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.content-flex > li a dl dd p:nth-last-of-type(1)
{
    font-size: 12px;
    line-height: 1.5;
}

.content-flex > li a dl dd p:nth-last-of-type(1) span
{
    display: block;
    color: #000;
}

.content-flex > li a dl dd p:nth-last-of-type(1) strong
{
    display: block;
    color: #e60000;
}

i.btn-fav
{
    position: absolute;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    -webkit-transition: color .3s;
       -moz-transition: color .3s;
        -ms-transition: color .3s;
         -o-transition: color .3s;
            transition: color .3s;
    color: rgba(0,0,0,.1);
}

i.btn-fav.like
{
    color: #e60000;
}

i.btn-fav:before
{
    font-size: 18px;
    line-height: 1;
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
}

.content-flex > li
{
    width: 46.77%;
    margin: 0 3.23% 10px 0;
    background-image: url('/store/techo/2018/images/loading3.gif');
    background-repeat: no-repeat;
    -webkit-background-size: 16.55% auto;
       -moz-background-size: 16.55% auto;
            background-size: 16.55% auto;
}

.content-flex > li.soldout:not(.unreleased) a dl dd
{
    color: #808080;
}

/*@media screen and (min-width: 816px)
  .content-flex
    > li
      width round(100%*145/790,2)
      margin 0 round(100%*10/790,2) 10px 0

@media screen and (min-width: 982px)
  .content-flex
    > li
      width round(100%*145/950,2)
      margin 0 round(100%*10/950,2) 10px 0*/

.content-delay.state-steady a
{
    opacity: 1;
}

.content-delay.state-steady a dl
{
    display: block;
}

.content-delay.state-temp a
{
    opacity: 1;
}

.content-delay.state-temp a dl
{
    display: block;
}

.content-delay.state-temp a dl dt > img
{
    opacity: 1;
}

.content-delay a
{
    position: relative;
    overflow: hidden;
    -webkit-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
       -moz-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
        -ms-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
         -o-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
            transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 0;
}

.content-delay a dl
{
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
}

.content-delay a dl dt > img
{
    -webkit-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
       -moz-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
        -ms-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
         -o-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
            transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
    opacity: 0;
}

.content-delay a dl dt > img.state-already
{
    -webkit-transition: none;
       -moz-transition: none;
        -ms-transition: none;
         -o-transition: none;
            transition: none;
    opacity: 1;
}

.content-accord
{
    overflow: hidden;
    height: 0;
}

.content-accord:not(.open) > *
{
    display: none;
}

.content-accord > .active
{
    display: block;
}

.content-accord.open
{
    height: auto;
}

.content-accord.open img[data-src]
{
    display: block;
}

.content-accord.open img[data-src].state-ready
{
    display: block;
}

.content-accord img[data-src]
{
    -webkit-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
       -moz-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
        -ms-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
         -o-transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
            transition: opacity .3s cubic-bezier(.55, .085, .68, .53);
}

.content-accord img[data-src].state-ready
{
    display: none;
    opacity: 0;
}

.content-zoom
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    display: table;
    overflow: hidden;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity .6s cubic-bezier(.25, .1, .25, 1);
       -moz-transition: opacity .6s cubic-bezier(.25, .1, .25, 1);
        -ms-transition: opacity .6s cubic-bezier(.25, .1, .25, 1);
         -o-transition: opacity .6s cubic-bezier(.25, .1, .25, 1);
            transition: opacity .6s cubic-bezier(.25, .1, .25, 1);
    -webkit-transform: translate3d(0, -100%, 0);
       -moz-transform: translate3d(0, -100%, 0);
        -ms-transform: translate3d(0, -100%, 0);
         -o-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
    opacity: 0;
    background-color: rgba(0,0,0,.8);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-background-size: 10% auto;
       -moz-background-size: 10% auto;
            background-size: 10% auto;
}

.content-zoom.active
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 1;
}

.content-zoom.loading
{
    background-image: url('/store/techo/2018/images/loading3.gif');
}

.content-zoom div
{
    position: absolute; /*-webkit-backface-visibility: initial !important;
    -webkit-transform-origin: 50% 50%;
    filter none
    -webkit-filter blur(0px)
    -moz-filter blur(0px)
    -ms-filter blur(0px)*/
    width: 100%;
    height: 100%;
}

.content-zoom div span
{
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-background-size: 100% 100%;
       -moz-background-size: 100% 100%;
            background-size: 100% 100%;
}

.content-zoom div span img
{
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
}

.content-zoom a
{
    position: absolute;
    overflow: hidden;
    overflow: hidden;
    opacity: .6;
    color: #000;
    background: #fff;
}

.content-zoom a:before
{
    position: absolute;
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
}

.content-zoom a.mdi-window-close
{
    top: 9px;
    right: 9px;
    width: 25px;
    height: 25px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
}

.content-zoom a.mdi-window-close:before
{
    font-size: 20px;
}

.content-zoom a.mdi-chevron-left
{
    bottom: 6px;
    left: 6px;
    width: 30px;
    height: 30px;
}

.content-zoom a.mdi-chevron-left:before
{
    font-size: 30px;
}

.content-zoom a.mdi-chevron-right
{
    right: 6px;
    bottom: 6px;
    width: 30px;
    height: 30px;
}

.content-zoom a.mdi-chevron-right:before
{
    font-size: 30px;
}

.ua-desktop .content-zoom
{
    left: 50%;
    display: block;
    width: 640px;
    -webkit-transform: translate(-50%, -100%);
       -moz-transform: translate(-50%, -100%);
        -ms-transform: translate(-50%, -100%);
         -o-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
    -webkit-background-size: 32px auto;
       -moz-background-size: 32px auto;
            background-size: 32px auto;
}

.ua-desktop .content-zoom.active
{
    -webkit-transform: translate(-50%, 0);
       -moz-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
         -o-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}

.ua-desktop .content-zoom a.mdi-window-close
{
    top: 13px;
    right: 13px;
    width: 37px;
    height: 37px;
}

.ua-desktop .content-zoom a.mdi-window-close:before
{
    font-size: 33px;
}

.ua-desktop .content-zoom a.mdi-chevron-left
{
    bottom: 9px;
    left: 9px;
    width: 45px;
    height: 45px;
}

.ua-desktop .content-zoom a.mdi-chevron-left:before
{
    font-size: 45px;
}

.ua-desktop .content-zoom a.mdi-chevron-right
{
    right: 9px;
    bottom: 9px;
    width: 45px;
    height: 45px;
}

.ua-desktop .content-zoom a.mdi-chevron-right:before
{
    font-size: 45px;
}

.bg-original
{
    background-color: #5c2849;
}

.color-original
{
    color: #5c2849;
}

#cover_original .content-flex dd ol li:nth-child(1) small,
.content-flex a.original dd ol li:nth-child(1) small
{
    display: inline;
}

#cover_original .content-flex dd ol li:nth-child(1) small:before,
.content-flex a.original dd ol li:nth-child(1) small:before
{
    content: 'セット';
}

#cover_original .content-flex dd ol li:nth-child(2) small,
.content-flex a.original dd ol li:nth-child(2) small
{
    display: inline;
}

#cover_original .content-flex dd ol li:nth-child(2) small:before,
.content-flex a.original dd ol li:nth-child(2) small:before
{
    content: 'カバーのみ';
}

.bg-weeks
{
    background-color: #1fccc9;
}

.color-weeks
{
    color: #1fccc9;
}

#weeks_cover .content-flex dd ol li:nth-child(1) small,
.content-flex a.weeks_cover dd ol li:nth-child(1) small
{
    display: inline;
}

#weeks_cover .content-flex dd ol li:nth-child(1) small:before,
.content-flex a.weeks_cover dd ol li:nth-child(1) small:before
{
    content: 'カバーのみ';
}

.bg-cousin
{
    background-color: #ea4863;
}

.color-cousin
{
    color: #ea4863;
}

#cover_cousin .content-flex dd ol li:nth-child(1) small,
.content-flex a.cousin dd ol li:nth-child(1) small
{
    display: inline;
}

#cover_cousin .content-flex dd ol li:nth-child(1) small:before,
.content-flex a.cousin dd ol li:nth-child(1) small:before
{
    content: 'セット';
}

#cover_cousin .content-flex dd ol li:nth-child(2) small,
.content-flex a.cousin dd ol li:nth-child(2) small
{
    display: inline;
}

#cover_cousin .content-flex dd ol li:nth-child(2) small:before,
.content-flex a.cousin dd ol li:nth-child(2) small:before
{
    content: 'カバーのみ';
}

.bg-planner
{
    background-color: #a53e5c;
}

.color-planner
{
    color: #a53e5c;
}

#cover_planner .content-flex dd ol li:nth-child(1) small,
.content-flex a.planner dd ol li:nth-child(1) small
{
    display: inline;
}

#cover_planner .content-flex dd ol li:nth-child(1) small:before,
.content-flex a.planner dd ol li:nth-child(1) small:before
{
    content: 'セット';
}

#cover_planner .content-flex dd ol li:nth-child(2) small,
.content-flex a.planner dd ol li:nth-child(2) small
{
    display: inline;
}

#cover_planner .content-flex dd ol li:nth-child(2) small:before,
.content-flex a.planner dd ol li:nth-child(2) small:before
{
    content: 'カバーのみ';
}

#cover_planner .content-flex [id*='pb18'] dd ol li:nth-child(1) small,
.content-flex [id*='pb18'] a.planner dd ol li:nth-child(1) small
{
    display: none;
}

#cover_planner .content-flex [id*='pb18'] dd ol li:nth-child(1) ~ li,
.content-flex [id*='pb18'] a.planner dd ol li:nth-child(1) ~ li
{
    display: none;
}

.bg-hontai
{
    background-color: #f26444;
}

.color-hontai
{
    color: #f26444;
}

.bg-5year
{
    background-color: #40220f;
}

.color-5year
{
    color: #40220f;
}

[id='5year'] .content-flex li[id*='_cover'] dd ol li:nth-child(1) small,
.content-flex li[id*='_cover'] a[class*='5year'] dd ol li:nth-child(1) small
{
    display: inline;
}

[id='5year'] .content-flex li[id*='_cover'] dd ol li:nth-child(1) small:before,
.content-flex li[id*='_cover'] a[class*='5year'] dd ol li:nth-child(1) small:before
{
    content: 'セット';
}

[id='5year'] .content-flex li[id*='_cover'] dd ol li:nth-child(2) small,
.content-flex li[id*='_cover'] a[class*='5year'] dd ol li:nth-child(2) small
{
    display: inline;
}

[id='5year'] .content-flex li[id*='_cover'] dd ol li:nth-child(2) small:before,
.content-flex li[id*='_cover'] a[class*='5year'] dd ol li:nth-child(2) small:before
{
    content: 'カバーのみ';
}

.bg-toolstoys
{
    background-color: #f2ba49;
}

.color-toolstoys
{
    color: #f2ba49;
}

#toolstoys .title
{
    color: #f2ba49;
}

body.expand #page
{
    -webkit-transform: translate3d(-93.75%, 0, 0);
       -moz-transform: translate3d(-93.75%, 0, 0);
        -ms-transform: translate3d(-93.75%, 0, 0);
         -o-transform: translate3d(-93.75%, 0, 0);
            transform: translate3d(-93.75%, 0, 0);
}

body.expand #page:after
{
    background: rgba(191,191,191,.5);
}

body.rear #page:after
{
    -webkit-transform: translate(0, 0);
       -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
         -o-transform: translate(0, 0);
            transform: translate(0, 0);
}

body.rear header[role='extra']
{
    position: absolute !important;
}

body.rear nav[role='drawer']
{
    -webkit-transform: translate(0, 0);
       -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
         -o-transform: translate(0, 0);
            transform: translate(0, 0);
}

header[role='extra']
{
    position: fixed;
    z-index: 20;
    top: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: #000;

    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
            backface-visibility: hidden;
}

header[role='extra'].pos-abs
{
    position: absolute;
}

header[role='extra'] h1
{
    position: absolute;
    top: 12px;
    left: 10px;
    width: 131px;

    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
            backface-visibility: hidden;
}

header[role='extra'] h1:before
{
    position: absolute;
    top: -9999px;
    content: 'LIFEのBOOK ほぼ日手帳';
    color: #000;
}

header[role='extra'] ul:before,
header[role='extra'] ul:after
{
    display: table;
    content: '';
}

header[role='extra'] ul:after
{
    clear: both;
}

header[role='extra'] ul li
{
    float: right;
}

header[role='extra'] ul li:first-child ~ li a
{
    padding-top: 10px;
    padding-right: 3px;
    padding-bottom: 10px;
}

header[role='extra'] ul li:first-child ~ li a:before
{
    position: absolute;
    top: calc(50% - .5em);
    left: 6px;
}

header[role='extra'] ul li:first-child ~ li a var
{
    font-size: 12px;
    line-height: 1.67;
    display: block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    text-align: center;
    color: #fff;
    -webkit-border-radius: 50%;
            border-radius: 50%;
}

header[role='extra'] ul li:first-child ~ li a var.digit
{
    font-size: 10px;
    line-height: 2;
    letter-spacing: -.05em;
}

header[role='extra'] ul li a
{
    position: relative;
    overflow: hidden;
    height: 40px;
    color: #fff;
}

header[role='extra'] ul li a.btn-menu
{
    display: block;
    width: 40px;
    height: 40px;

    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
            backface-visibility: hidden;
}

header[role='extra'] ul li a.btn-menu:before
{
    font-size: 24px;
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
}

header[role='extra'] ul li a.icon-cart
{
    padding-left: 33px;
}

header[role='extra'] ul li a.icon-cart var
{
    background: #e60000;
}

header[role='extra'] ul li a.mdi-heart
{
    margin-right: 9px;
    padding-left: 31px;
}

header[role='extra'] ul li a.mdi-heart:before
{
    font-size: 18px;
}

header[role='extra'] ul li a.mdi-heart var
{
    background: #509be5;
}

.ua-ios-9 header[role='extra'].pos-abs
{
    position: fixed;
}

nav[role='global']
{
    position: relative;
    overflow: hidden;
    height: 52px;
    text-align: center;
    background: #f5f5f5;
}

nav[role='global'] ul
{
    position: absolute;
    top: 0;
    left: 0;
    display: table;
}

nav[role='global'] ul li
{
    font-size: 0;
    position: relative;
    display: table-cell;
    vertical-align: middle;
    white-space: nowrap;
}

nav[role='global'] ul li:first-child:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 12px;
    content: '';
    background: #e60000;
}

nav[role='global'] ul li:first-child:after
{
    font-size: 12px;
    line-height: 1;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    content: 'ラインナップとお買いもの';
    -webkit-transform: translate(-50%, 0) scale(.83);
       -moz-transform: translate(-50%, 0) scale(.83);
        -ms-transform: translate(-50%, 0) scale(.83);
         -o-transform: translate(-50%, 0) scale(.83);
            transform: translate(-50%, 0) scale(.83);
    color: #fff;
}

nav[role='global'] ul li:first-child a:first-child
{
    width: 64px;
}

nav[role='global'] ul li:first-child a:first-child + a
{
    position: relative;
    margin-left: 1px;
}

nav[role='global'] ul li:first-child a:first-child + a:before
{
    position: absolute;
    bottom: 5px;
    left: -1px;
    height: 30px;
    content: '';
    border-left: #ccc 1px solid;
}

nav[role='global'] ul li + li
{
    padding-left: 1px;
}

nav[role='global'] ul li + li:before
{
    position: absolute;
    bottom: 5px;
    left: 0;
    height: 30px;
    content: '';
    border-left: #ccc 1px solid;
}

nav[role='global'] ul li a
{
    font-size: 12px;
    line-height: 3.33;
    display: inline-block;
    height: 52px;
    padding: 12px 10px 0;
    vertical-align: top;
    color: #000;
}

[data-category='lineup'] nav[role='global'] a[href*='/lineup/'],
[data-category='toolstoys'] nav[role='global'] a[href*='/toolstoys/'],
[data-category='about'] nav[role='global'] a[href*='/about/'],
[data-category='all_about'] nav[role='global'] a[href*='/all_about/'],
[data-category='collection'] nav[role='global'] a[href*='/collection/'],
[data-category='magazine'] nav[role='global'] a[href*='/magazine/']
{
    color: #e60000;
    background: #fff;
}

nav[role='drawer']
{
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(-9999px, 0);
       -moz-transform: translate(-9999px, 0);
        -ms-transform: translate(-9999px, 0);
         -o-transform: translate(-9999px, 0);
            transform: translate(-9999px, 0);
    background: #fff;
}

nav[role='drawer'] > div:nth-child(1)
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 39px;
}

nav[role='drawer'] > div:nth-child(1) ul
{
    border-top: 1px #e5e5e5 solid;
}

nav[role='drawer'] > div:nth-child(1) ul + ul
{
    border-top: 1px #808080 solid;
}

nav[role='drawer'] > div:nth-child(1) ul:last-of-type
{
    border-bottom: 1px #e5e5e5 solid;
}

nav[role='drawer'] > div:nth-child(1) ul li + li
{
    border-top: 1px #e5e5e5 solid;
}

nav[role='drawer'] > div:nth-child(1) ul li a
{
    font-size: 16px;
    line-height: 2.44;
    position: relative;
    overflow: hidden;
    height: 39px;
    padding: 0 3.13% 0 9.38%;
    color: #000;
}

nav[role='drawer'] > div:nth-child(1) ul li a.icon-cart
{
    color: #e60000;
}

nav[role='drawer'] > div:nth-child(1) ul li a.icon-cart:before
{
    position: absolute;
    top: calc(50% - .5em);
}

nav[role='drawer'] > div:nth-child(1) ul li a.icon-cart span
{
    display: inline-block;
    padding-left: 25px;
    vertical-align: middle;
}

nav[role='drawer'] > div:nth-child(1) ul li a.icon-cart var
{
    background: #e60000;
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-heart
{
    color: #509be5;
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-heart:before
{
    font-size: 23px;
    position: absolute;
    top: calc(50% - .5em);
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-heart span
{
    display: inline-block;
    padding-left: 25px;
    vertical-align: middle;
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-heart var
{
    background: #509be5;
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-login
{
    padding-right: 24px;
}

nav[role='drawer'] > div:nth-child(1) ul li a.mdi-login:before
{
    position: absolute;
    top: calc(50% - .5em);
    right: 3.45%;
}

nav[role='drawer'] > div:nth-child(1) ul li a var
{
    font-size: 12px;
    line-height: 1.67;
    display: inline-block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    -webkit-border-radius: 50%;
            border-radius: 50%;
}

nav[role='drawer'] > div:nth-child(1) ul li a var.digit
{
    font-size: 10px;
    line-height: 2;
    letter-spacing: -.05em;
}

nav[role='drawer'] > div:nth-child(2)
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: #000;
}

nav[role='drawer'] > div:nth-child(2) a.btn-menu
{
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 40px;
    height: 100%;
    color: #fff;

    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
            backface-visibility: hidden;
}

nav[role='drawer'] > div:nth-child(2) a.btn-menu:before
{
    font-size: 24px;
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
}

#page
{
    position: relative;
    z-index: 1;
    overflow: hidden;
    width: calc(100% + 1px);
    padding-top: 40px;
    -webkit-transition: -webkit-transform .45s cubic-bezier(.165, .84, .44, 1);
       -moz-transition:    -moz-transform .45s cubic-bezier(.165, .84, .44, 1);
        -ms-transition:     -ms-transform .45s cubic-bezier(.165, .84, .44, 1);
         -o-transition:      -o-transform .45s cubic-bezier(.165, .84, .44, 1);
            transition:         transform .45s cubic-bezier(.165, .84, .44, 1);
    border-right: 1px #808080 solid;
    background: #fff;

    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
            backface-visibility: hidden;
}

#page:after
{
    position: absolute;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transition: background .45s cubic-bezier(.165, .84, .44, 1);
       -moz-transition: background .45s cubic-bezier(.165, .84, .44, 1);
        -ms-transition: background .45s cubic-bezier(.165, .84, .44, 1);
         -o-transition: background .45s cubic-bezier(.165, .84, .44, 1);
            transition: background .45s cubic-bezier(.165, .84, .44, 1);
    -webkit-transform: translate(-9999px, 0);
       -moz-transform: translate(-9999px, 0);
        -ms-transform: translate(-9999px, 0);
         -o-transform: translate(-9999px, 0);
            transform: translate(-9999px, 0);
    background: rgba(191,191,191,0);
}

#page > footer
{
    padding-bottom: 49px;
    border-top: #e5e5e5 1px solid;
    background: #fff;
}

#page > footer > a
{
    margin-top: 10px;
}

#page > footer > small
{
    font-size: 12px;
    display: block;
    padding: 6px 0 12px;
    text-align: center;
    letter-spacing: .05em;
}

#footer-history
{
    padding: 26px 0 30px;
    border-bottom: #e5e5e5 1px solid;
    background: #f5f5f5;
}

#footer-history h3
{
    margin-bottom: 26px;
}

#footer-history p
{
    text-align: center;
}

#footer-history div
{
    position: relative;
    overflow: hidden;
    height: 50px;
    text-align: center;
}

#footer-history div ul
{
    top: 0;
    left: 0;
    display: table;
    margin: 0 auto;
    padding: 0 5px;
    table-layout: fixed;
}

#footer-history div ul li
{
    display: table-cell;
    vertical-align: top;
}

#footer-history div ul li + li
{
    padding-left: 5px;
}

#footer-history div ul li a
{
    position: relative;
    overflow: hidden;
    width: 50px;
    height: 50px;
    background: #fff;
}

#footer-history div ul li a img
{
    width: 100%;
    height: 100%;
    -webkit-transition: opacity .3s;
       -moz-transition: opacity .3s;
        -ms-transition: opacity .3s;
         -o-transition: opacity .3s;
            transition: opacity .3s;
}

#footer-history div ul li a img.state-ready,
#footer-history div ul li a img.ready
{
    opacity: 0;
}

#footer-lineup
{
    font-size: 0;
    padding: 30px 0;
    text-align: center;
    border-bottom: #e5e5e5 1px solid;
}

#footer-lineup li
{
    display: inline-block;
    width: 48.44%;
    max-width: 232.5px;
    padding: 0 1.56%;
    vertical-align: top;
}

#footer-lineup li:last-child
{
    display: block;
    width: 96.88%;
    max-width: 465px;
    margin: 10px auto 0;
}

#footer-lineup li:last-child a
{
    padding-top: 33.33%;
}

#footer-lineup li a
{
    position: relative;
    overflow: hidden;
    padding-top: 68.97%;
    -webkit-border-radius: 10px;
            border-radius: 10px;
}

#footer-lineup li a img
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#footer-share
{
    padding: 16px 0;
    text-align: center;
}

#footer-share:before
{
    font-size: 12px;
    display: inline-block;
    content: 'シェアする';
    vertical-align: middle;
    color: #666;
}

#footer-share li
{
    display: inline-block;
    margin-left: 28px;
    vertical-align: middle;
}

#footer-share li a:before
{
    font-size: 36px;
}

#footer-share li a.mdi-facebook-box
{
    color: #2d4486;
}

#footer-share li a.mdi-twitter
{
    color: #55acee;
}

#footer-share li a.icon-line
{
    color: #00c300;
}

#footer-sitemap
{
    padding: 16px 3.13% 0;
    background: #f5f5f5;
}

#footer-sitemap h1
{
    width: 166px;
    max-width: 100%;
    margin: 0 auto 12px;
}

#footer-sitemap h1 img
{
    width: 100%;
}

#footer-sitemap ul
{
    padding-bottom: 18px; /*&:nth-of-type(4) ~ ul
      padding-left round(100%*40/300,2)
      padding-right round(100%*40/300,2)
      li
        width auto
        &:nth-child(3)
          width 100%
          text-align center
        a.mdi-email-outline
          &:before
            display inline-block
            font-size 100%
            line-height 1.5*/
}

#footer-sitemap ul:before,
#footer-sitemap ul:after
{
    display: table;
    content: '';
}

#footer-sitemap ul:after
{
    clear: both;
}

#footer-sitemap ul + ul
{
    border-top: #e5e5e5 1px solid;
}

#footer-sitemap ul li
{
    width: 46.67%;
    padding-top: 18px;
}

#footer-sitemap ul li:nth-child(2n+1)
{
    float: left;
    clear: both;
}

#footer-sitemap ul li:nth-child(2n)
{
    float: right;
}

#footer-sitemap ul li:last-child
{
    clear: none !important;
}

#footer-sitemap ul li a
{
    font-size: 12px;
    line-height: 1.5;
    color: #000;
}

#footer-sitemap ul li a span
{
    display: inline-block;
}

#footer-sitemap ul li a.mdi-email-outline:before
{
    font-size: 100%;
    line-height: 1.5;
    display: inline-block;
}

#footer-sitemap ul:nth-of-type(2)
{
    padding: 11px 0 15px;
    text-align: center;
}

#footer-sitemap ul:nth-of-type(2):before
{
    font-size: 12px;
    line-height: 1.5;
    display: block;
    content: 'フォローする';
    color: #666;
}

#footer-sitemap ul:nth-of-type(2) li
{
    display: inline-block;
    float: none;
    width: auto;
    padding-top: 9px;
    vertical-align: top;
}

#footer-sitemap ul:nth-of-type(2) li + li
{
    margin-left: 18px;
}

.ua-desktop body
{
    width: 640px;
    margin: 0 auto;
}

.ua-desktop header[role='extra']
{
    left: 50%;
    width: 640px;
    margin-left: -320px;
}

.ua-desktop header[role='extra'].pos-abs
{
    margin-left: -320px !important;
}

.ua-desktop .btn-gotop
{
    right: 50%;
    bottom: 10px;
    margin-right: -310px;
}

.ua-desktop nav[role='drawer']
{
    left: 50%;
    width: 640px;
    margin-left: -320px;
}

#modal
{
    width: 100%;
    padding: 4.17%;
    text-align: center;
    letter-spacing: 0;
}

#modal dl
{
    text-align: left;
}

#modal dl img
{
    width: 100%;
}

#modal dl + p
{
    font-size: 12px;
    font-weight: normal;
    line-height: 1.5;
    margin-top: 8px;
    text-align: left;
}

#modal dl + p a
{
    display: inline;
}

#modal dl dt
{
    padding-right: 40px;
}

#modal dl dt p
{
    font-size: 14px;
    font-weight: bold;
    line-height: 1.29;
}

#modal dl dt p small
{
    font-size: 12px;
    line-height: 1.5;
    display: block;
}

#modal dl dt + dd
{
    position: relative;
    padding: 4px 4px 8px 0;
}

#modal dl dt + dd i
{
    position: absolute;
    top: 4px;
    right: 0;
    width: 40px;
}

#modal dl dt + dd i + i
{
    right: 41px;
}

#modal dl dt + dd ul li
{
    font-size: 12px;
    font-weight: bold;
    line-height: 1.5;
}

#modal dl dt + dd ul li small
{
    font-size: 10px;
    line-height: 1.8;
}

#modal dl dt + dd ul li small:after
{
    content: '：';
}

#modal > a
{
    position: absolute;
    top: 8px;
    right: 9px;
    display: block;
    overflow: hidden;
    width: 20px;
    height: 20px;
    text-indent: -9999px;
    color: #509be5;
}

#modal > a:before
{
    font-size: 20px !important;
    position: absolute;
    top: calc(50% - .5em);
    left: calc(50% - .5em);
    text-indent: 0;
}

#headeline
{
    position: relative;
    z-index: 21;
    padding-top: 40px;
}

#headeline.pos-fixed p
{
    position: fixed;
    z-index: 20;
    top: 40px;
}

#headeline.pos-fixed p span
{
    width: 100%;
    -webkit-border-radius: 0;
            border-radius: 0;
}

#headeline.pos-fixed.pos-abs p
{
    position: absolute;
    -webkit-transform: rotate(.01deg);
       -moz-transform: rotate(.01deg);
        -ms-transform: rotate(.01deg);
         -o-transform: rotate(.01deg);
            transform: rotate(.01deg);
}

#headeline p
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
        -ms-transform: translateZ(0);
         -o-transform: translateZ(0);
            transform: translateZ(0);
}

#headeline p span
{
    display: block;
    width: 93.75%;
    height: 40px;
    margin: 0 auto;
    -webkit-transition: width .45s cubic-bezier(.25, .46, .45, .94), border .45s cubic-bezier(.25, .46, .45, .94);
       -moz-transition: width .45s cubic-bezier(.25, .46, .45, .94), border .45s cubic-bezier(.25, .46, .45, .94);
        -ms-transition: width .45s cubic-bezier(.25, .46, .45, .94), border .45s cubic-bezier(.25, .46, .45, .94);
         -o-transition: width .45s cubic-bezier(.25, .46, .45, .94), border .45s cubic-bezier(.25, .46, .45, .94);
            transition: width .45s cubic-bezier(.25, .46, .45, .94), border .45s cubic-bezier(.25, .46, .45, .94);
    -webkit-border-radius: 4px;
            border-radius: 4px;
    background: #5ab546;
}

#headeline p span img
{
    position: absolute;
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

#headeline p span img:nth-child(1)
{
    top: calc(50% - 14px);
    left: calc(50% - 46px);
    width: 92px;
}

#headeline p span img:nth-child(2)
{
    top: -6px;
    left: calc(50% + 53px);
    overflow: hidden;
    width: 40px;
    -webkit-border-radius: 20px 20px 0 0;
            border-radius: 20px 20px 0 0;
}

.ua-desktop #headeline p
{
    left: 50%;
    width: 640px;
    margin-left: -320px;
}

/*# sourceMappingURL=dev/store/techo/ja/2018/sp/styl/techo2018.css.map */

@media screen and (min-width: 485px)
{
    .content-flex > li
    {
        width: 30.85%;
        margin: 0 2.13% 10px 0;
    }
}

@media screen and (min-width: 640px)
{
    #footer-lineup li
    {
        width: 24.22%;
    }

    #footer-lineup li:last-child
    {
        display: inline-block;
        width: 48.44%;
        margin: 0;
    }
}

@media screen and (min-width: 650px)
{
    .content-flex > li
    {
        width: 23.02%;
        margin: 0 1.59% 10px 0;
    }
}
