/* reset */

html, body, div, span, 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 {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

}

body {
    line-height:1;
}

img{max-width:100%;}

*{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    webkit-appearance:none;
    -webkit-appearance: none;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
select,input{
  padding: 2px 6px;
  border: 1px solid #dfdfdf;
  border-radius: 6px;
  background:#fff;
}
nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

div,p{
    word-break: break-all;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}


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

input, select,textarea,button{
  vertical-align:middle;
  font-size:inherit;
  font-family: 'Noto Sans JP', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
  text-transform: none;
}

select {
  text-transform: none;
}

button, html input[type="button"] {
  -webkit-appearance: button;
  cursor: pointer;
}

input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input[type="checkbox"], input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td, th {
  padding: 0;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*\*//*/
    height: auto;
    overflow: hidden;
    /**/
}

/*-------------------------------------------
共通
-------------------------------------------*/
body {
  background-color: #fff;
  color: #212121;
  font-size:12px;
  font-family: 'Noto Sans JP', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 500;
}

a {
  text-decoration: none;
  color: #212121;
}
a:active {
  background: rgba(0, 0, 0, 0.1);
}

p {
  line-height: 1.5rem;
  margin: 0;
}

h2 {
  margin: 0 0 12px;
  font-size: 128.57143%;
  font-weight: normal;
  line-height: 1.2;
}

h3 {
  font-size: 114.28571%;
  font-weight: normal;
  margin: 20px 0 .5rem;
}

h4 {
  font-size: 100%;
  font-weight: bold;
  margin: 20px 0 .5rem;
}

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

.u-wrap {
  text-align: center;
  vertical-align: middle;
  zoom: 1;
}
.u-wrap img {
  vertical-align: bottom;
}

.u-cf:before {
  content: "";
  display: table;
}
.u-cf:after {
  content: "";
  display: table;
  clear: both;
}
.font_ropa{
  font-family: 'Ropa Sans', sans-serif;
}
/*
* mainTitle
*/
.mainTitle{
  font-size:13px;
  margin-bottom:15px;
  letter-spacing: 1px;
  line-height:1.8;
  text-align:center;    font-weight: bold;
}
.mainTitle .style__border_inner{
  font-size:19px;
}
.mainTitle small{
  display: block;
    font-weight: normal;
  text-align: center;
  font-size: 11px;
  letter-spacing: 2px;
}

.mainTitle .fs_large{
  font-size:15px;
}
.subTitle {
    font-weight: bold;
    margin-bottom: 15px;
}

/*
 * layout
 */
.outer {
  overflow-x: hidden;
  max-width: 100%;
  height: auto;
}
.section__inner {
    padding: 0 20px;
}
.wrapper {
  position: relative;
  -o-transition-property: all;
  -webkit-transition-property: all;
  transition-property: all;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
#contents {
    padding: 0;
}
#header .headerLogo h1 {
  font-weight: normal;
  color: #7f7f7f;
  font-size: 12px;
  margin-bottom: 15px;
}

#header .headerLogo img {
  width: 53px;
}

#header .headerTop1 {
  padding: 4px;
  text-align: center;
  font-size: 11px;
  color: #fff;
  background: #9a0000;
  margin-bottom: 0;
  border-bottom: 1px solid #fff;
  font-weight: bold;
}

#header .headerTop1 strong {
  color: #fff799;
}

#header .headerTop2 {
  padding: 4px;
  text-align: center;
  font-size: 11px;
  color: #fff;
  background: #00458f;
  margin-bottom: 0;
  font-weight: bold;
}

#header .headerTop2 strong {
  color: #fff799;
}

#header #headerMiddle {
  position: fixed;
  top:0;
  width:100%;
  background: #fff;
  z-index: 1000;
}

#header #headerMiddle .headerInner {
  max-width: 1100px;
  position: relative;
  margin: auto;
  padding: 20px 0 20px;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#header #headerTel {
  font-size: 24px;
  font-family: 'Oswald',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

#header #headerRight {
  position: absolute;
  right: 20px;
  padding-bottom:8px;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#header #headerTel {
  margin-right: 20px;
}

#header .headerTextNav,
#header .headerIconNav {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right:7px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#header .headerTextNav > li,
#header .headerIconNav > li {
  margin-left: 18px;
}

#header .headerIconNav > li:first-child{
  width: 17px;
}
#header .headerIconNav > li:nth-child(2){
  width:23px;
}

#header .headerIconNav a {
  color: #a2a2a2;
}

#header .headerIconNav i {
  font-size: 24px;
}

#header .headerTextNav {
  font-size: 12px;
  font-weight: 600;
}

#header .headerBottom{
  padding-top:85px;
}
#header .headerBottom .headerSubNav{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  width: 280px;
  list-style: none;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
}

#header .headerBottom li{
  width: 50%;
}

#header .headerBottom li a{
  padding: 7px 0;
  display: block;
}
#header .headerBottom li:first-child{
  border-right: 1px solid #ababab;
}
#header .search{
  margin: 20px 15px 0;
  position: relative;
}
#header .search input{
  width:100%;
  padding:10px 7px 10px 19px;
  font-weight: 500;
  border:1px solid #333333;
  font-size: 11px;
}
#header .search input::-webkit-input-placeholder{
  color:#c9c9c9;
}
#header .search input::-moz-placeholder{
  color:#c9c9c9;
}
#header .search input:-ms-input-placeholder{
  color:#c9c9c9;
}
#header .search input::-ms-input-placeholder{
  color:#c9c9c9;
}
#header .search input::placeholder{
  color:#c9c9c9;
}
#header .search__iconBtn{
  position: absolute;
  top: 10px;
  right: 32px;
  width: 16px;
}

/* ドロワー */
#drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0 !important;
  overflow: scroll;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  opacity: 0;
  z-index: 999;
  width:88%;
  height: auto;
  background: #fff !important;
  pointer-events: none;
  margin-left: -50px;
  overflow-y: scroll;
  z-index: 10000;
}

#drawer.open {
  opacity: 1;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  display: block;
  pointer-events: all;
  margin-left: 0px;
}

#drawer.open:before {
  display: block;
}
#drawer .headerLogo{
  text-align: center;
  padding-top:28px;
}

#drawer .searchWord{
  margin: 6px 19px 0;
  font-size: 9px;
  line-height: 1.5;
}
#drawer .searchWord_list{
  font-size: 9px;
  line-height: 1.5;
  margin: 0 19px 16px;
  list-style: none;
}

#drawer .searchWord_list li{
  display: inline-block;
  margin-right: 3px;
}

#drawer .drawer__bnr {
  padding: 20px;
  border-bottom: 1px solid #dddddd;
}

#drawer .drawer__bnr img {
  max-width: 100%;
}

#drawer #drawer__close {
  background: #303030;
  text-align: center;
  padding: 15px 20px;
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: bold;
}

#drawer h2 {
  font-weight: bold;
  font-size: 13px;
  line-height: 1;
  margin-bottom: 0;
}

#drawer h3{
  background:#f2f2f2;
  padding:43px 15px 13px;
  font-size:12px;
  color:#7e7e7e;
  border-bottom:1px solid #7e7e7e;
  margin:0;
}

#drawer .search{
  margin-top:21px;
}

#drawer .bg_gray{
  background: #E6E6E6;
}



/* 通常メニュー */
#drawer .navList {
  height: auto;
  margin-bottom:40px;
  font-size: 1.2rem;
  display: block;
  background:#fff;
  border-top:1px solid #B3B3B3;
}

#drawer .navList li {
  text-align: left;
  display: block;
  width: 100%;
}

#drawer .navList li > span,
#drawer .navList li a {
  display: block;
  color: #303030;
  padding: 12px 35px;
  text-align: left;
  border-bottom: 1px solid #B3B3B3;
  line-height: 1.6;
  position: relative;
  font-size:11px;
}

#drawer .ico_arrow li > span:after,
#drawer .ico_arrow li a:after {
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  border-top: 2px solid #666;
  border-right: 2px solid #666;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
      transform: translateY(-50%) rotate(45deg);
  right: 42px;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
}

#drawer .navList li.header__nav--spTitle {
  display: block;
  text-align: left;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
}

#drawer .navList li.header__nav--spLogin {
  font-size: 14px;
}

#drawer .navList li.header__nav--spLogin i {
  display: inline-block;
  margin-right: 10px;
  font-size: 20px;
}

#drawer .navList li.gnav_facebook {
  display: inline-block;
  margin-top: 15px;
  margin-right: 10px;
  width: 36px;
  height: 36px;
}

#drawer .navList li.gnav_facebook a {
  border-bottom: 0;
  border-radius: 50%;
  text-align: center;
  border: 2px solid #303030;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
}

#drawer .navList li.gnav_facebook a span {
  font-size: 16px;
}

#drawer .navList li.hasChildren > ul {
  display: none;
}

#drawer .navList li.hasChildren > a:after,
#drawer .navList li.hasChildren > a:before{
  position: absolute;
  top: 50%;
  right: 37px;
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-top:-2px;
  border-top: 2px solid #666;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  }
  #drawer .navList li.hasChildren > a:after{
  margin-right:10px;
  margin-top:-7px;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  }
  #drawer .navList li.hasChildren > a.open:after{
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  margin-right:5px;
  margin-top:-2px;
  }

#drawer .navList li.hasChildren > ul li a{
  padding-left:70px;
}

#drawer .brandList{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 1px solid #7e7e7e;
  background: #fff;
  padding: 10px;
}
#drawer .brandList li{
  width: calc(33.3% - 15px * 2 / 3);
  margin: 5px;
}

/* アイコン付きメニュー */
#drawer .navList.drawer__iconMenu{
  margin-top: 30px;
  border-top: 1px solid #7e7e7e;
}
#drawer .navList.drawer__iconMenu li > a{
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding:10px 15px;
}

#drawer .navList.drawer__iconMenu li > a span:nth-child(1){
  max-width: 30px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 30px;
          flex: 0 0 30px;
}

#drawer .navList.drawer__iconMenu li > a span:nth-child(2){
  max-width: calc(100% - 30px);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(100% - 30px);
          flex: 0 0 calc(100% - 30px);
  padding-left: 15px;
}
#drawer .navList.drawer__iconMenu li a:after,
#drawer .navList.drawer__nav2col li a:after{
  display: none;
}
#drawer .nav2colList{
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
/* アイコン付きメニュー */
#drawer .navList.drawer__nav2col{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap:wrap;
      flex-wrap:wrap;
  margin-top:50px;
  border-top:1px solid #7e7e7e;
}
#drawer .navList.drawer__nav2col li{
  width:50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#drawer .navList.drawer__nav2col li:nth-child(odd){
  border-right:1px solid #7e7e7e;
}


/* ハンバーガー（メニューアイコン） */
#menu-icon {
  position: fixed;
  top: 27px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  left: 17px;
  width: 20px;
  height: 14px;
  padding: 15px;
  display: inline-block;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  margin-top:6px;
}

#menu-icon span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  position: absolute;
  left: 5px;
  width: 20px;
  height: 2px;
  background-color: #000;
}

#menu-icon.open span {
  background-color: #fff;

}
#menu-icon span:nth-of-type(1) {
  top: 8px;
}

#menu-icon span:nth-of-type(2) {
  top: 14px;
}

#menu-icon span:nth-of-type(3) {
  bottom: 8px;
}

#menu-icon {
  z-index: 1100;
}

#menu-icon.open.open {
  -webkit-transition: 0.25s;
  -o-transition: 0.25s;
  transition: 0.25s;
  right:12px;
  left:inherit;
}


#menu-icon.open.open span:nth-of-type(1) {
  -webkit-transform: translateY(6px) rotate(-45deg);
  -ms-transform: translateY(6px) rotate(-45deg);
      transform: translateY(6px) rotate(-45deg);
}

#menu-icon.open.open span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 0.8s forwards;
  animation: active-menu-bar02 0.8s forwards;
}

#menu-icon.open.open span:nth-of-type(3) {
  -webkit-transform: translateY(-6px) rotate(45deg);
  -ms-transform: translateY(-6px) rotate(45deg);
      transform: translateY(-6px) rotate(45deg);
}

.menu-toggle {
    cursor: pointer!important;
}

.overlay {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.4);
}

.overlay.open {
  display: block!important;
}


/*
* gNav
*/
.gNavWrap + .gNavWrap{
  margin-top:10px;
}
.gNavWrap{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  display: none;
  z-index:999;
  font-size:12px;
}
/*gNav1 全体とリンクエリアで別背景*/
.gNavWrap--type1{
  background:#f2f2f2;
  padding:10px;
}
.gNavWrap--type1 .gNav__unit{
  width:19.2%;
  float:left;
}
.gNavWrap--type1 .gNav__unit:nth-child(n+2){
  margin-left:1%;
}
.gNavWrap--type1 .gNav__link{
  display: table;
  table-layout: fixed;
  width:100%;
  background:#000000;
  color:white;
}
.gNavWrap--type1 .gNav__cell{
  display: table-cell;
  vertical-align: middle;
  height:80px;
  text-align: center;
}
.gNavWrap--type1 .fa{
  font-size:40px;
  color:#666666;
  margin-bottom:5px;
}
/*gNav2 背景一色*/
.gNavWrap--type2{
  background:#000;
  padding: 7px 36px 15px;
}
.gNavWrap--type2 .gNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
}
.gNavWrap--type2 .gNav__unit{
  width:19.2%;
}
.gNavWrap--type2 .gNav__unit:nth-child(n+2){
  margin-left:5%;
}
.gNavWrap--type2 .gNav__unit:nth-child(4){
  width:25%;
  margin-left:3%;
}
.gNavWrap--type2 .gNav__unit:nth-child(5){
margin-left:1%;
}
.gNavWrap--type2 .gNav__link{
  display: table;
  table-layout: fixed;
  width:100%;
  color:white;
  letter-spacing: -0.5px;
}
.gNavWrap--type2 .gNav__cell{
  display: table-cell;
  vertical-align: middle;
  height: 56px;
  text-align: center;
  position: relative;
}
.gNavWrap--type2 .gNav__unit:first-child .gNav__cell .gNav__img img{
  width:25px;
}
.gNavWrap--type2 .gNav__unit:nth-child(2) .gNav__cell .gNav__img img{
  width:21px;
}
.gNavWrap--type2 .gNav__unit:nth-child(3) .gNav__cell .gNav__img img{
  width:25px;
}
.gNavWrap--type2 .gNav__unit:nth-child(4) .gNav__cell .gNav__img img{
  width:18px;
}
.gNavWrap--type2 .gNav__unit:nth-child(5) .gNav__cell .gNav__img img{
  width:22px;
}

.gNavWrap--type2 .gNav__cell .gNav__img img{
  margin-top:-5px;
}
.gNavWrap--type2 .gNav__cell .gNav__txt{
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size:10px;
}
.gNavWrap--type2 .fa{
  font-size:30px;
  color:#FFFFFF;
  margin-bottom:5px;
}

/* フッター */
.footer {
  margin: 50px 0 0;
  background:#000;
  color:white;
  padding:20px 0 78px;
}
.fSns{
  letter-spacing: -.4em;
  text-align:center;
  width:100%;
  margin-bottom:20px;
  padding:0;
}
.fSns__unit{
  letter-spacing: normal;
  display: inline-block;
  max-width:30%;
}
.fSns__unit:nth-child(n+2){
  margin-left:3.33333%;
}
.fMail{
  margin:0px auto 20px;
  width:100%;
}
.fMail__title{
  font-size:16px;
  font-weight:bold;
  margin-bottom:5px;
  letter-spacing: 1px;
  font-family: "Times New Roman", 游明朝, "Yu mincho", "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS P Mincho", "MS 明朝", serif;
}
.fMail__text{
  width:80%;
  float:left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height:30px;
  padding:3px 10px;
  border:none;
  background:#fff;
  color:#333;
}
.fMail__btn{
  width:20%;
  float:left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height:30px;
  background:#333;
  color:white;
  line-height:30px;
  font-size:12px;
  text-align:center;
  color:white;
  border:none;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-weight:bold;
  cursor: pointer;
}

.linklist {
  padding: 0;
  margin: 0;
}

.linklist__item {
  border-bottom: solid 1px #e0e0e0;
  list-style: none;
}
.linklist__item a {
  display: table;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 10px 20px;
  color: #212121;
}
.linklist__item a span {
  display: table-cell;
  vertical-align: middle;
}

.linklist__item--point {
  background: #212121;
}
.linklist__item--point a {
  color: #fff;
}

.linklist__item__text {
  width: 80%;
  height: auto;
}

.linklist__item__icon {
  width: 10%;
  height: auto;
  text-align: right;
}

.section--sns {
  text-align: center;
}

.snslink {
  text-align: center;
  margin: 0 3px 0;
  color: #fff;
  border-radius: 50%;
  display: inline-table;
  width: 44px;
  height: 44px;
}
.snslink i {
  display: table-cell;
  vertical-align: middle;
}

.snslink--twitter {
  background: #00acee;
}

.snslink--facebook {
  background: #3b579d;
}

.snslink--instagram {
  background: #393939;
}

.snslink--google {
  background: #d95333;
}

.snslink--pinterest {
  background: #c9232d;
}

.section--address {
  text-align: center;
}

.copyright {
  margin: 0px 0 20px;
  font-size: 12px;
  text-align:center;
  line-height:1.2;
}

.powered {
  font-size: 12px;
  color: #212121;
}
.powered img {
  width: 190px;
  margin: 0 0 -3px 3px;
}

.u-ac--active {
  border-bottom: 1px solid #e0e0e0;
}

/*
 * top
 */
.u-hidden {
  display: none;
}
.moreinfo {
  overflow: hidden;
  max-height: 70px;
}
.u-moreinfo--active {
  max-height: none;
}

/* ヘッダー位置調整 */
#contents{
  margin-top:80px;
}

/*
 * product
 */
.linklist--breadcrumb .linklist__item__icon {
  width: 6%;
  text-align: left;
}

.prices {
  margin: 0 0 20px;
}

.price {
  font-size: 128.57143%;
  font-weight: bold;
}

.price--regular {
  text-decoration: line-through;
  color: #aaa;
}

.price--rate {
  color: #f44336;
}

.taglist {
  margin: 0 0 20px;
}
.taglist p {
  margin: 0 0 10px;
}
.taglist .button--tag {
  margin: 0 6px 10px 0;
}

.description {
  margin: 0 0 20px;
}

.buy__inner {
  margin: 0 0 20px;
}

.stock_error {
  font-weight: bold;
  text-align: center;
  color: #f44336;
}

.table {
  width: 100%;
  height: auto;
}

.table--bordered {
  font-size: 12px;
  border-top: 1px solid #ddd;
}
.table--bordered th {
  font-weight: normal;
  width: 50%;
  padding: 15px 10px;
  text-align: center;
  border-bottom: 1px solid #ddd;
}
.table--bordered td {
  width: 50%;
  text-align: center;
  padding: 15px 10px;
  border-bottom: 1px solid #ddd;
}

.otherlist {
  padding: 0;
  list-style: none;
}

.share {
  width: 88px;
  float: left;
  text-align: center;
  margin: 10px 0 0;
}

.imagelist.slick-slider {
  margin: 0 0 50px;
}
.imagelist.slick-slider .slick-slide {
  padding: 0 40px;
  text-align: center;
}

.u-oneimage {
  padding: 0 !important;
}

/*
 * product-list
 */
.boxlist {
  list-style: none;
  margin: 0;
  padding:0 15px;
}

.box {
  display: block;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(50% - 7.5px);
  margin-bottom:25px;
}
.box *{
  text-align:left;
  color:#333333;
  line-height:1.2rem;
}
.box:nth-child(2n)  {
  margin-left:15px;
}
.box .box__inner {
  display: block;
  word-wrap: break-word;
  border-bottom:solid 1px #d0d0d0;
  height:100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.box:nth-child(odd) .box__inner {
  border-right:solid 1px #d0d0d0;
}
.box:nth-child(-n+2) .box__inner {
  border-top:solid 1px #d0d0d0;
}
.box .box__image {
  display: block;
  margin: 0 0 7px;
  text-align: center;
  position: relative;
}
.box .box__image:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
}
.box .box__name{
  font-size:9.5px;
  line-height: 1.5;
}
.box .box__image--rank-1:before {
  border: 10px solid transparent;
  border-top: 10px solid #ffeb3b;
  border-left: 10px solid #ffeb3b;
}
.box .box__image--rank-2:before {
  border: 10px solid transparent;
  border-top: 10px solid #e0e0e0;
  border-left: 10px solid #e0e0e0;
}
.box .box__image--rank-3:before {
  border: 10px solid transparent;
  border-top: 10px solid #8d6e63;
  border-left: 10px solid #8d6e63;
}
.box .box__image--rank-none:before {
  border: none;
}
.box .box__price {
  font-weight: 500;
  font-weight:700;
}
.box .box-price__soldout {
  color: #f44336;
}
.box .box__caption {
  font-size: 12px;
  color: #999;
  line-height: 1rem;
}

.u-tile:nth-child(odd){
    clear:left;
}

/* 最近チェックした商品 */
.section--riftUp .boxlist .box{
  width: 31%;
  margin-right: 3.5%;
}

.section--riftUp .boxlist .box:nth-child(2n){
    margin-left:0;
}

.section--riftUp .boxlist .box:nth-child(3n){
  margin-right:0;
}

.section--riftUp .boxlist .u-tile:nth-child(odd) {
  clear: none;
}
.section--riftUp .boxlist .u-tile:nth-child(3n+1) {
  clear: left;
}
.section--riftUp .boxlist .box__price{
  font-size: 10px;
}

.section--slide h2, .section--main h2 {
  padding: 0px 20px 0;
  margin-bottom:20px;
}

.section--together .box {
  width: 33.33%;
  margin-bottom:25px;
}

.slidelist {
  margin: -10px 0 10px !important;
}
.slidelist .slick {
  padding: 0;
}
.slidelist .slick-list {
  padding: 0 10px;
}
.slidelist .slick-slide {
  padding: 0;
}
.slidelist .slide__inner {
  display: block;
  padding: 10px 10px 5px;
  word-wrap: break-word;
}
.slidelist .slide__image {
  display: block;
  margin: 0 0 5px;
  text-align: center;
  position: relative;
}
.slidelist .slide__image:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
}
.slidelist .slide__image--rank-1:before {
  border: 8px solid transparent;
  border-top: 8px solid #ffeb3b;
  border-left: 8px solid #ffeb3b;
}
.slidelist .slide__image--rank-2:before {
  border: 8px solid transparent;
  border-top: 8px solid #e0e0e0;
  border-left: 8px solid #e0e0e0;
}
.slidelist .slide__image--rank-3:before {
  border: 8px solid transparent;
  border-top: 8px solid #8d6e63;
  border-left: 8px solid #8d6e63;
}
.slidelist .slide__image--rank-none:before {
  border: none;
}
.slidelist .slide__name {
  font-size: 12px;
  line-height: 1.2rem;
  margin: 0 0 5px;
  color: #212121;
}
.slidelist .slide__price {
  font-size: 12px;
  line-height: 1.2rem;
  font-weight: bold;
  margin: 0 0 5px;
  color: #212121;
}
.slidelist .slide__price--soldout {
  color: #f44336;
}

.slick-list {
  padding: 0 10px;
}

.result {
  margin: 10px 0 20px;
}
.result span {
  font-size: 114.28571%;
  font-weight: bold;
}

.sort {
  text-align: center;
}

.pager {
  padding: 0 20px;
}

.rest {
  text-align: center;
  margin: 20px 0 35px;
}
.rest span {
  font-size: 114.28571%;
  font-weight: bold;
}

.pager__prev {
  float: left;
  line-height: 1;
  margin: 0 0 20px;
}
.pager__next {
  float: right;
  line-height: 1;
  margin: 0 0 20px;
}

.subs_title {
  padding: 0 20px 20px;
  border-bottom: solid 1px #e0e0e0;
}

.section--list{
  margin-top:30px;
}

.section--list .boxlist {
  margin: 0;
}

.freespace01 {
  margin: 0 0 20px;
  font-size: 12px;
}

.freespace02 {
  font-size: 12px;
}

/*
 * 特商法・その他
 */
.deflist {
  margin: 0;
}

.section--privacy p {
  font-size: 12px;
}

.section--search .button {
  float: right;
}

.section--push ul {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
}

/*
 * パーツ
 */
.slick-slide img {
  margin: 0 auto;
}

.button {
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  border: none;
  display: inline-block;
}

.button--blue {
  /*background: #2b98f2;*/
  background: #333;
  color: #fff;
}

.button--orange {
  background: #ff5722;
  color: #fff;
}

.button--line {
  /*border: 1px solid #2196f3;
  color: #2196f3;*/
  border: 1px solid #333;
  color: #333;
}

.button--more {
  width: 50%;
  display: block;
  padding: 5px;
  margin:0 auto;
}
.button--moreinfo{
  margin-top:10px;
}

.button--sort {
  font-size: 12px;
  padding: 5px 8px;
  width: 28%;
}

.button--tag {
  font-size: 12px;
  padding: 5px 8px;
  border-radius: 3px;
}

.button--small {
  border-radius: 3px;
  font-size: 100%;
  padding: 14px 0;
  width: 25%;
  line-height: 1;
}

.button--medium {
  font-size: 100%;
  padding: 13px 0;
  margin: 10px 0;
  width: 100%;
  line-height: 1;
}

.button--large {
  font-size: 114.28571%;
  font-weight: bold;
  padding: 20px 0;
  width: 100%;
}

.button--disabled {
  background: #e6e6e6;
  color: #bbb;
}

input[type="text"].keyword {
  font-size: 12px;
  background: #fff;
  color: #212121;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="text"].keyword--small {
  width: 68%;
  height: 44px;
}
input[type="number"].buy__num, input[type="text"].buy__num {
  padding: 8px 10px;
  width: 15%;
}
input[type="text"].buy__name-title {
  padding: 8px 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pulldown {
  width: 100%;
  height: 44px;
  background: #fff;
  margin: 0 0 15px;
  border: 1px solid #bdbdbd;
}



.button--more{
  cursor: pointer;
}
.fa-lg{
  font-size:23px !important;
}

/*バナーリスト*/
.bnrList{
  padding:0;
  margin:0;
}
.bnrList__unit{
  list-style:none;
  position:relative;
}
.bnrList__img{
  width:100%;
}
.bnrList__bottomText{
  display: inline-block;
  margin-top:10px;
  width:100%;
  text-align:center;
  padding-bottom:5px;
}
.bnrList__link{
  display: block;
}

/*フルサイズ*/
.bnrList--full .bnrList__unit:nth-child(n+2){
  margin-top:15px;
}
.bnrList--full .bnrList__bottomText{
  padding:0px 10px 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*ハーフサイズ*/
.bnrList-half .bnrList__unit{
  width:49%;
  float:left;
}
.bnrList-half .bnrList__unit:nth-child(n+2){
  margin-left:2%;
}
.bnrList-half .bnrList__unit:nth-child(2n+1){
  margin-left:0%;
  clear:both;
}
.bnrList-half .bnrList__unit:nth-child(n+3){
  margin-top:15px;
}

/*バナーのホバーテキストセット*/
.js-popBnrText{
  position:relative;
}
.popBnr{
  position:absolute;
  top:0px;
  left:0px;
  text-align: center;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.6);
  display: none;
}
.popBnr__box{
  display: table;
  width:100%;
  height:100%;
  color:white;
}
.popBnr__inner{
  display: table-cell;
  padding:10px;
  vertical-align: middle;
}
.popBnr__title{
  font-family: YuMincho, "游明朝","Times New Roman", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "MS PMincho", "ＭＳＰ明朝", "MS Mincho", "ＭＳ明朝", serif;
  font-size:14px;
}
.popBnr__text{
  margin-top:10px;
}

/*moreボタン*/
.moreBtn{
  display: block;
  position:relative;
  margin:10px auto 0;
  width:63%;
  height:54px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align:center;
  line-height:54px;
  color:white;
  font-size:12px;
  letter-spacing: 1px;
  background:#000;
  border-radius: 7px;
  -webkit-transition: opacity .25s;
     -o-transition: opacity .25s;
        transition: opacity .25s;
}
.moreBtn:after{
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
      transform: translateY(-50%) rotate(45deg);
  right: 25px;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
}
.moreBtn:hover{
  opacity: 0.8;
  -webkit-transition: opacity .25s;
       -o-transition: opacity .25s;
          transition: opacity .25s;
  text-decoration: none;
}
.js-more li:nth-child(n+7){
  display: none;
}
.js-more--contents li:nth-child(n+10){
  display: none;
}

/*インフォメーション*/
.info{
  padding:10px 10px;
  margin-top:-1px;
}
.info__date{
  float:left;
  letter-spacing: 1px;
  width:20%;
  word-break:break-all;
  line-height:1.3;
}
.info__text{
  float:left;
  padding-left:10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width:80%;
  line-height:1.3;
}
a.info__link{
  text-decoration: underline;
}
a.info__link:hover{
  text-decoration: none;
}

.cInner{
  padding:0px 10px;
}

 /*--------------------------------------------------------------------
   === [PLUS] ====================================
 --------------------------------------------------------------------*/
.hidden {
  display: none !important;
}
/* header */
.section__inner--header {
  padding: 10px;
}
.shopname {
  width: 220px;
}
/* navi */
.toolbar {
  padding: 5px 0px 3px;
  margin-bottom: 0;
}
.u-wrap > img {
  vertical-align: bottom;
  max-width: 50%;
}
.u-wrap > span {
  display: block;
  font-size: 10px;
  font-weight: 200;
  padding: 3px 0 0;
}
.u-wrap.u-cart > span {
/*
  display: inline-block;
  font-size: 12px;
*/
}
.toolbar__item a .u-wrap {
  position: relative;
}
.toolbar__item--cart .toolbar__item__count {
  position: absolute;
  top: 10px;
  right: 3px;
}
/* navi-inner */
.drawer__item--close {
  padding: 30px 20px;
}
.drawer__logo {
  position: absolute;
  text-align: center;
  width: 150px;
  top: 20px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 100;
}
.drawer__item__name__text {
  font-size: 14px;
}
.drawer__item--accordion .linklist__item a {
  padding: 15px 20px;
  font-size: 13px;
}
.drawer__sns {
  padding: 5px 0 5px;
  text-align: center;
}
.drawer__sns ul {
  display: inline-block;
  width: 200px;
  padding: 10px;
  font-size: 0;
}
.drawer__sns .fSns__unit {
  max-width: 20%;
}
.drawer__sns .fSns__unit:nth-child(n+2) {
  margin-left: 8%;
}
/* footer */
.footer {
  background-color: #fff;
  color: #212121;
  padding-top: 0;
}
.linkList {
  padding: 0;
  margin: 0;
}
.linkList__unit {
  border-bottom: solid 1px #e0e0e0;
  list-style: none;
}
.linkList__unit:first-child {
  border-top: solid 1px #e0e0e0;
}

.linkList__unit a {
  display: table;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 21px 40px;
  color: #212121;
}
.linkList__unit .linkList__unit__icon{
  font-size:15px;
  color:#666;
}
.linkList__unit a span {
  display: table-cell;
  vertical-align: middle;
}
.linkList__unit--point {
  background: #212121;
}
.linkList__unit--point a {
  color: #fff;
}
.linkList__unit__text {
  width: 80%;
  height: auto;
}
.linkList__unit__icon {
  width: 10%;
  height: auto;
  text-align: right;
}
.section--sns {
  text-align: center;
}
.itemList--contents{
  background:#fff;
}
.itemList--contents .itemList__unit{
  width:33.3333333333%;
  float:left;
}
.itemList--contents .itemList__unit:nth-child(3n+1){
    clear: both;
}
.itemList--contents .itemList__unit img{
  width:100%;
}
.footer .fSns {
  margin: 27px 0 30px;
  font-size: 0;
}
.footer .fSns__unit:first-child {
  width: 7.3%;
}
.footer .fSns__unit:nth-child(2) {
  width:7.5%;
}
.footer .fSns__unit:nth-child(3) {
  width:8%;
}
.footer .fSns__unit:nth-child(4) {
  width:10%;
}
.footer .fSns__unit:nth-child(n+2) {
  margin-left: 6%;
}
.copyright {
  font-size: 10px;
  line-height: 1.4;
}
/* top */
.section--main {
  margin-bottom: 60px;
}
.eyecatch {
  margin-bottom: 40px;
}
.eyecatch .cInner {
  padding: 0;
}
.js-more li:nth-child(n+5) {
  display: none;
}
.box .box__inner {
  border: 0;
}
.box:nth-child(2n+1) .box__inner {
  border-right: 0;
}
.box:nth-child(-n+2) .box__inner {
  border-top: 0;
}
h3.itemList__title {
  text-align: left;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}
.feature p {
  font-size: 12px;
  text-align: left;
  line-height: 1.4;
}
.feature .itemList--2 .itemList__unit:nth-child(n+3) {
  margin-top: 20px;
}
.section--instagram .js-more li:nth-child(n+5) {
  display: list-item;
}
.section--instagram .js-more li:nth-child(n+10) {
  display: none;
}
/* itemlist */
.section--main.subListBlock {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 0 10px;
  margin-bottom: 20px;
}
.subs_title {
  font-weight: bold;
  padding: 10px 0 5px;
  margin: 0;
}
.subList {
  padding: 10px;
  list-style: none;
  margin-bottom: 0px;
  margin-top: 0;
}
.subList li {
  float: left;
  margin: 0 10px 10px 0;
  font-size: 12px;
}
.subList li a {
  padding: 5px 10px;
  border: 1px solid #2196f3;
  color: #2196f3;
  border-radius: 5px;
  display: block;
}
.section.section--list.section--main {
  margin-bottom: 0;
  padding-bottom: 0;
}
.section__inner.v2f {
  margin-bottom: 50px;
}
.borderNone {
  border: none!important;
}


/*
* 上部検索メニュー関連
*/
.fixSearchBtn{
  position:fixed;
  bottom:110px;
  right:10px;
  z-index:999;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background:#262626;
  color:white;
  text-align:center;
  width:64px;
  height:64px;
  cursor: pointer;
  display: none;
}
.fixSearchBtn__table{
  display: table;
  width:100%;
}
.fixSearchBtn__cell{
  display: table-cell;
  vertical-align: middle;
  height:64px;
  text-align:center;
  line-height: 1.5;
}
.fixSearchBtn__table img{
  width:24px;
}
.fixSearchBtn__icon.fa{
  font-size:40px;
}
.fixSearchBtn__text{
  font-size:9px;
  letter-spacing: -0.3px;
}
.fixSearch{
  z-index:1000001;
  background:#333333;
  display: none;
  position:fixed;
  top:0px;
  width:100%;
}
.fixSearchTop{
  padding:20px 10px;
}
.searchWrap--fixSearch{
  float:left;
  width:80%;
}
.searchWrap--fixSearch .search{
  padding:0px;
  position: relative;
}
.searchWrap--fixSearch .search__text{
  width:100%;
  padding:10px;
}

.searchWrap--fixSearch .search__iconBtn{
  position: absolute;
  top: 10px;
  right: 10px;
  width: 16px;
}

.fixSearchTop__right{
  width:20%;
  display: table;
}
.fixSearchTop__rightInner{
  display: table-cell;
  vertical-align: middle;
  text-align:center;
  height:50px;
}
.fixSearchClose{
  color: white;
  font-size: 40px !important;
  line-height: 1;
  font-weight: bold;
  cursor: pointer;
}
.fixSearchBottom{
  padding-bottom:10px;
}
.fixSearchBottom *{
  color:white !important;
}
.fixSearch__text{
  padding:0px 20px 10px 20px;
}
.fixSearchBottom .linkList__unit:first-child {
  border-top: solid 1px #666666;
}
.fixSearchBottom .linkList__unit {
  border-bottom: solid 1px #666666;
}
.fixSearchBottom .linkList__unit:last-child {
  border-bottom:none;
}
.fixSearchBottom .linkList__link::before{
  color:white;
}
