@charset "UTF-8";

/*---------------------------------------------
header
---------------------------------------------*/
/*---------- arrow ----------*/
#gnv {
  margin-top: 10px;
}

#gnv .arrow a {
  padding-left: 34px;
}

#gnv .arrow a::before {
  top: 0;
  bottom: 0;
  margin: auto 0 auto -13px;
  height: 15px;
}

#gnv .arrow a:hover {
  background: #292D61;
  color: #fff;
}

#gnv .arrow a:hover::before {
  color: #fff;
}

@media all and (min-width: 768px) {
  #gnv {
    margin-top: 0;
  }

  #gnv .arrow a {
    padding-left: 40px;
  }
}

/*--------------------*/
header .hdTop {
  margin: 25px auto;
}

header .hdTop figure {
  margin: 0;
}

header .hdTop .hdLogoWrap figure {
  margin-right: 20px;
}

header .hdTop .hdLogoWrap figure .logo {
  width: 228px;
  height: 70px;
  vertical-align: bottom;
}

header .hdTop .hdLogoWrap .logoTxt {
  font-size: 1.6rem;
  line-height: 24px;
}

header .hdTop #search_efrsk {
  padding: 0;
  background: none;
  margin-right: 30px;
}

header .hdTop #search_efrsk #searchbox_efrsk form {
  display: flex;
}

header .hdTop #search_efrsk #searchbox_efrsk form .searchSubmit {
  background: #292D61;
  border: none;
  color: #fff;
  padding: 0 10px;
  position: relative;
  transition: 0.3s ease-in-out;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  height: 30px;
}

header .hdTop #search_efrsk #searchbox_efrsk form .searchSubmit:hover {
  opacity: 0.5;
}

header .hdTop #search_efrsk #searchbox_efrsk form .searchSubmit::before {
  content: "\f002";
  display: inline-block;
  font-family: 'fontawesome';
  margin-right: 10px;
  font-size: 1.7rem;
}

header .hdTop #search_efrsk #searchbox_efrsk form .searchbox {
  border: 1px solid #ccc;
  border-radius: 0;
  padding: 0 5px;
  width: 200px;
  height: 30px;
}

header .hdTop #search_efrsk #searchbox_efrsk form .searchbox:focus {
  outline: none;
}

header .hdTop #tel {
  margin: 0;
  display: flex;
  align-items: center;
}

header .hdTop #tel p {
  margin: 0;
  font-size: 1.4rem;
  color: #000;
}

header .hdTop #tel p::after {
  display: none;
}

header .hdTop #tel p:nth-of-type(2)::before {
  display: none;
}

header .hdTop #tel p a::before {
  margin-right: 5px;
}

header .hdTop #tel .guideTxt {
  margin: 0 23px 0 16px;
}

header .hdTop #tel .guideTxt a {
  position: relative;
  padding-left: 16px;
}

header .hdTop #tel .guideTxt a::before {
  content: '';
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  background: url(../../img/common/guide.svg) no-repeat center center/cover;
  width: 13px;
  height: 18px;
}

header .hdTop #tel .contactTxt {
  margin-right: 30px;
}

header .hdTop #tel .contactTxt a::before {
  content: "\f0e0";
  font-family: 'fontawesome';
  color: #292D61;
}

header .hdTop #tel .telTxt {
  font-weight: bold;
  font-size: 2.2rem;
}

header .hdTop #tel .telTxt::before {
  display: inline-block;
  margin-right: 5px;
  vertical-align: baseline;
  background: none;
  width: auto;
  height: auto;
  content: "\f095";
  font-family: 'fontawesome';
  color: #292D61;
}

header .hdTop #pnv {
  margin-top: 14px;
}

header .hdTop #pnv p a::before {
  display: inline-block;
  font-family: 'fontawesome';
  margin-right: 8px;
  font-size: 1.8rem;
}

header .hdTop #pnv .faxTxt {
  margin-right: 10px;
}

header .hdTop #pnv .faxTxt a:hover::before {
  color: #fff;
}

header .hdTop #pnv .faxTxt a::before {
  content: "\f1ac";
  color: #292D61;
  transition: 0.3s ease-in-out;
}

header .hdTop #pnv .mypageTxt {
  margin-right: 10px;
}

header .hdTop #pnv .mypageTxt a:hover::before {
  color: #fff;
}

header .hdTop #pnv .mypageTxt a::before {
  content: "\f007";
  color: #292D61;
  transition: 0.3s ease-in-out;
}

header .hdTop #pnv .cartTxt a::before {
  content: "\f07a";
  color: #fff;
}

#gnv {
  margin-bottom: 0;
}

#gnv .box3>div>ul a:hover,
#gnv .box2>div>ul a:hover {
  background: #292D61;
}

#gnv>li:nth-of-type(2)>div>div::before {
  margin-left: -310px;
}

#gnv>li:nth-of-type(3)>div>div::before {
  margin-left: -110px;
}

#gnv>li:nth-of-type(4)>div>div::before {
  margin-left: 95px;
}

#gnv>li:nth-of-type(5)>div>div::before {
  margin-left: 295px;
}

#gnv>li:nth-of-type(6)>div>div::before {
  margin-left: 495px;
}

#gnv>li>a {
  font-size: 1.5rem;
}

#gnv>li.megaOn>a {
  background: #292D61;
}

@media screen and (max-width: 767px) {/* SP */
  #trg {
    top: 10px;
  }
  #trg::before,
  #spcart i::before {
    color: #292D61;
  }

  header .hdTop {
    margin: 0;
  }

  header .hdTop .hdLogoWrap figure {
    margin-right: 10px;
  }

  header .hdTop .hdLogoWrap figure .logo {
    width: 140px;
    height: 43px;
  }

  header .hdTop .hdLogoWrap .logoTxt {
    font-size: 1.2rem;
    line-height: 14px;
  }

  #gnv {
    margin-top: 10px;
  }

  #gnv>li:nth-last-of-type(1)>a {
    padding: 20px;
  }

  #gnv>li a {
    display: block;
  }

  #gnv .itemBlock .itemDef {
    padding: 0;
  }

  #gnv .itemBlock .itemDef dt,
  #gnv .itemBlock .itemDef dd {
    border-top: 1px solid #ccc;
    margin: 0;
  }

  #gnv .itemBlock .itemDef a {
    vertical-align: bottom;
    line-height: 1;
    position: relative;
    padding-left: 40px;
  }

  #gnv .itemBlock .itemDef a::before {
    position: absolute;
    top: 50%;
    left: auto;
    margin: -7px 0 0 -20px;
    content: '\f105';
    font-family: 'fontawesome';
    color: #292D61;
  }

  #visual {
    margin-top: 21px;
  }

  #visual .slider .slick-arrow {
    width: 35px;
    height: 35px;
    font-size: 2.8rem;
    margin-top: -10px;
    padding-top: 3px;
  }
}

@media all and (min-width: 768px) {/* PC */
  body {
    /* margin-top: 231px; */
  }

  header .headerContents {
    width: 100%;
    padding: 0 !important;
    background: #fff;
    /* position: fixed;// .is-fixed に変更
    top: 0;
    z-index: 15; */
  }

  .gnvWrap {
    background: #E8E5E0;
    padding: 16px 0 14px;
  }

  #gnv {
    display: flex;
  }

  #gnv>li {
    height: 30px;
    width: 20%;
    display: block;
  }

  #gnv>li>div {
    margin-top: 14px;
    padding: 0;
    box-shadow: none;
    border-bottom: 4px solid #292D61;
  }

  #gnv>li>div .box4 .itemBlock {
    width: 25%;
    height: 332px;
    border-right: 1px solid #ccc;
    padding-left: 25px;
  }

  #gnv>li>div .box4 .itemBlock:nth-of-type(1) {
    border-left: 1px solid #ccc;
  }

  #gnv>li>div::before {
    background: #292D61;
  }

  #gnv>li>div>div {
    padding: 40px 0;
  }

  #gnv>li>div>div::before {
    top: -9px;
    border-bottom: 4px solid #292D61;
  }

  #gnv>li>a {
    line-height: 14px;
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  #gnv .box2>div {
    padding: 40px 0;
  }

  #gnv .box2>div.gnvbg1 {
    background: url(../../img/common/gnavi-mokuteki.jpg);
  }

  #gnv .box2>div.gnvbg2 {
    background: url(../../img/common/gnavi-brand.jpg);
  }

  #gnv .box2>div.gnvbg3 {
    background: url(../../img/common/gnavi-kakaku.jpg);
  }

  #gnv .box2>div.gnvbg4 {
    background: url(../../img/common/gnavi-hurosiki.jpg);
  }

  #gnv .box2>div:nth-of-type(2) {
    height: 404px;
  }

  #gnv .box2>div>ul {
    height: 322px;
  }

  #gnv .box2>div>ul a {
    padding: 9px 0 9px 40px;
  }
}

@media all and (-ms-high-contrast: none) {
  header .hdTop #tel .telTxt {
    display: block;
  }
}


.news {
  margin-top: 40px;
}
/*---------------------------------------------
footer
---------------------------------------------*/
footer {
  background: #fff;
}

footer>div {
  padding: 0;
}

footer>div:first-of-type {
  padding: 50px 20px 20px;
}

footer>div>div {
  width: auto;
  min-height: auto;
  padding: 0;
  border: none;
}

@media all and (min-width: 768px) {
  footer>div>div:nth-of-type(1) {
    width: 100%;
  }

  footer>div>div:nth-of-type(-n+4),
  footer>div>div:nth-of-type(6) {
    width: 100%;
  }

  footer>div>div:nth-of-type(-n+5) {
    min-height: auto;
  }

  footer>div:first-of-type {
    padding: 50px 0 20px;
  }
}

.ttl002 {
  background: none;
  color: #000;
  padding: 0 !important;
  font-size: 1.8rem;
  margin-bottom: 22px;
  line-height: 1.5;
}

.ttl002::before {
  display: none;
}

footer {
  border-top: 1px solid #ccc;
}

footer>.ftInner {
  padding: 50px 20px 20px;
}

footer h4 {
  background: #292D61;
  color: #fff;
  font-size: 1.4rem;
  padding: 10px;
}

footer .arrow li a {
  font-size: 1.4rem !important;
  display: block;
}

@media all and (min-width: 768px) {
  footer>.ftInner {
    padding: 50px 0 20px;
  }

  footer h4 {
    padding: 13px 22px;
  }

  footer .arrow li a {
    position: relative;
    line-height: 18px;
    padding-left: 12px;
  }

  footer .arrow li a::before {
    position: absolute;
    left: 0;
    top: 0;
    content: '\f105';
    font-family: 'fontawesome';
    color: #292D61;
    font-weight: 600;
  }
}

/*---------------------------------------------
商品を探す
---------------------------------------------*/
footer .ftTop {
  border-bottom: 1px solid #ccc;
  width: 100%;
  padding-bottom: 10px;
}

footer .ftTop .ftBox {
  margin-bottom: 30px;
  padding: 0;
}

footer .ftTop .ftBox .ftDefCol {
  width: 48%;
  display: inline-block;
  vertical-align: top;
}

footer .ftTop .ftBox .ftDefCol+.ftDefCol {
  margin-left: 2%;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef {
  margin-bottom: 32px;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef dt {
  margin: 0 0 6px 0;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef dt a {
  display: inline;
  color: #292D61;
  position: relative;
  font-weight: bold;
  line-height: 18px;
  transition: 0.3s ease-in-out;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef dt a:hover {
  color: #656bbe;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef dd {
  margin: 0 0 10px 0;
  border: 1px solid #ccc;
}

footer .ftTop .ftBox .ftDefCol .ftItemDef dd a {
  line-height: 16px;
  padding: 5px;
  display: block;
}

@media all and (min-width: 768px) {
  footer .ftTop {
    display: flex;
  }

  footer .ftTop .ftBox {
    min-width: 203px;
    margin-bottom: 0;
  }

  footer .ftTop .ftBox+.ftBox {
    margin-left: 32px;
  }

  footer .ftTop .ftBox.ftBox01 {
    width: calc(100% / 5);

  }

  footer .ftTop .ftBox .ftDefCol+.ftDefCol {
    margin-left: 0;
  }

  footer .ftTop .ftBox .ftDefCol .ftItemDef {
    padding-left: 15px;
    margin-bottom: 36px;
  }

  footer .ftTop .ftBox .ftDefCol .ftItemDef dt {
    margin: 0 0 15px 0;
  }

  footer .ftTop .ftBox .ftDefCol .ftItemDef dt a::before {
    position: absolute;
    left: -12px;
    top: 0;
    bottom: 0;
    height: 19px;
    margin: auto;
    content: '\f105';
    font-family: 'fontawesome';
    color: #292D61;
  }

  footer .ftTop .ftBox .ftDefCol .ftItemDef dd {
    border: none;
  }

  footer .ftTop .ftBox .ftDefCol .ftItemDef dd a {
    padding: 0;
    line-height: 18px;
    display: inline;
  }

  .ftTopMod02 .footerDl dt a {
    display: inline-block;
  }
}

/*---------------------------------------------
風呂敷について　ご利用ガイド
---------------------------------------------*/
footer .ftNav {
  padding: 50px 0 30px;
}

footer .ftNav .ftNavBox {
  vertical-align: top;
  margin: 0 0 30px 0;
}

footer .ftNav .ftCompanyInfo {
  vertical-align: top;
}

footer .ftNav .ftCompanyInfo .ftLogoPic {
  margin: 0 0 20px 0;
  text-align: center;
}

footer .ftNav .ftCompanyInfo .ftLogoPic .ftLogo {
  vertical-align: bottom;
  width: 250px;
  height: auto;
}

footer .ftNav .ftCompanyInfo .ftAddr {
  line-height: 20px;
  margin-bottom: 10px;
}

footer .ftNav .ftCompanyInfo .ftTel {
  margin-bottom: 14px;
  font-size: 2.4rem;
  line-height: 34px;
}

footer .ftNav .ftCompanyInfo .ftTel::before {
  display: inline-block;
  margin-right: 3px;
  content: '\f095';
  font-family: 'fontawesome';
}

footer .ftNav .ftCompanyInfo .ftInfoBox {
  display: flex;
}

footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt {
  width: 49%;
  border: 1px solid #ccc;
}

footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt+.ftInfoTxt {
  margin-left: 2%;
}

footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt a {
  padding: 5px;
}

@media all and (min-width: 768px) {
  footer .ftNav {
    padding: 45px 0 58px;
    display: flex;
  }

  footer .ftNav .ftNavBox {
    padding-right: 72px;
    margin: 0 60px 30px 0px;
    border-right: 1px solid #ccc;
  }

  footer .ftNav .ftNavBox.ftNavBox_2 {
    padding-right: 150px;
  }

  footer .ftNav .ftCompanyInfo .ftLogoPic {
    text-align: left;
  }

  footer .ftNav .ftCompanyInfo .ftLogoPic .ftLogo {
    width: 300px;
    height: 93px;
  }

  footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt {
    width: auto;
    border: none;
  }

  footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt a {
    padding: 0 0 0 12px;
    position: relative;
    display: block;
  }

  footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt a::before {
    position: absolute;
    left: 0;
    top: 0;
    content: '\f105';
    font-family: 'fontawesome';
    font-weight: bold;
  }

  footer .ftNav .ftCompanyInfo .ftInfoBox .ftInfoTxt+.ftInfoTxt {
    margin-left: 40px;
  }
}

footer .ftBottom .ftSns {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}

footer .ftBottom .ftSns figure {
  margin: 0 12px;
}

footer .ftBottom .ftSns figure img {
  vertical-align: bottom;
}

footer .ftBottom .ftSns figure .instaLogo,
footer .ftBottom .ftSns figure .fbLogo {
  width: 30px;
  height: 30px;
}

footer .ftBottom .ftNoteArea .ftNoteTxt {
  color: #999;
  text-align: center;
  margin-bottom: 10px;
}

footer .ftBottom .ftNoteArea .ftNoteTxt a {
  display: inline;
}

footer .copy {
  background: #292D61;
  padding: 12px;
}

footer .copy p {
  color: #fff;
  text-align: center;
}

@media all and (min-width: 768px) {
  footer .ftBottom .ftSns {
    margin-bottom: 50px;
  }

  footer .ftBottom .ftNoteArea {
    display: flex;
    justify-content: center;
  }

  footer .ftBottom .ftNoteArea .ftNoteTxt {
    margin: 0 15px;
  }

  footer .copy {
    padding: 14px;
  }
}

/*---------------------------------------------
side
---------------------------------------------*/
#sub-column .bannerList {
  margin: 0 0 20px 0;
}

#sub-column .bannerList li {
  margin-bottom: 10px;
}

.bannerLink {
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  border: 1px solid #ccc;
  padding: 4px;
}

.bannerLink figure {
  margin: 0 25px 0 0;
}

.bannerLink figure>img {
  width: 50px;
  vertical-align: bottom;
}

.bannerLink .bannerTxt {
  line-height: 23px;
}

#contents #sub-column h2 {
  border-bottom: 1px solid #ccc;
  font-size: 1.8rem;
  color: #000;
  /* margin: 30px 0 17px; */
  line-height: 27px;
  padding-bottom: 10px;
}

#contents #sub-column h3 {
  background: #292D61;
  padding: 14px 0 14px 20px;
  position: relative;
  /* margin: 25px 0 20px; */
}

#contents #sub-column h3::before {
  display: none;
}

#contents #sub-column #side-cat h2 {
  /* margin-bottom: 30px; */
}

#contents #sub-column .news h2 {
  margin-bottom: 0;
}

.news-contents dl.news-box {
  border-bottom: 1px solid #ccc;
  padding: 15px 0;
}

.news-contents dl.news-box:first-child {
  border-top: none;
}

.news-contents dl.news-box .sideNoticeRed {
  color: #C53131;
  font-weight: bold;
  line-height: 24px;
  margin-bottom: 14px;
  font-size: 1.4rem;
}

.news-contents dl.news-box .sideNoticeTxt {
  margin-bottom: 14px;
  font-size: 1.4rem;
  line-height: 24px;
}

.news-contents dl.news-box .sideNoticeTxt .bold {
  font-weight: bold;
}

.news-contents dl.news-box .sideNoticeTxt a {
  color: #292D61;
}

.news-contents dl.news-box .sideNoticeTxt a:hover {
  opacity: 0.5;
}

.itemDef {
  padding-left: 14px;
}

.itemDef dt a {
  color: #292D61;
  position: relative;
  font-weight: bold;
  line-height: 40px;
  transition: 0.3s ease-in-out;
}

.itemDef dt a::before {
  position: absolute;
  left: -12px;
  content: '\f105';
  font-family: 'fontawesome';
  color: #292D61;
}

.itemDef dt a:hover {
  color: #656bbe;
}

.itemDef dd {
  margin: 0 0 10px 0;
}

.itemDef dd a {
  line-height: 14px;
}

.column-set .column4 h3 {
  font-size: 1.4rem !important;
  margin: 0 0 14px !important;
}

.column-set .column4 p.price {
  text-align: left;
}

.column-set .column4 p.price .selling_price {
  font-size: 1.4rem;
}

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

  .column-set .column4,
  .column-set .column5 {
    margin: 0 0 30px 3%;
  }
}

@media all and (min-width: 768px) {
  .column-set .column4 {
    width: 216px;
  }
}

a:hover {
  color: #656bbe;
}

article a:hover p,
div.cart-article a:hover p {
  color: #656bbe;
}

article a:hover p {
  color: #656bbe;
}

article a p {
  transition: 0.3s ease-in-out;
}

div.cart-article a:hover p {
  color: #656bbe;
}

div.cart-article a p {
  transition: 0.3s ease-in-out;
}

.li-btn a:hover {
  background: #292D61;
  border-color: #292D61;
}

.arrow>li::before {
  color: #292D61;
  font-weight: 600;
}

.arrow a::before {
  transition: 0.3s ease-in-out;
  color: #292D61;
  font-weight: 600;
}

#to-cart {
  display: none;
}

#page-top a {
  background: #292D61;
  border-color: #292D61;
  cursor: pointer;
  height: 38px;
  width: 38px;
  line-height: 35px;
  padding: 0;
}

.itemDef dt a {
  color: #292D61;
  position: relative;
  font-weight: bold;
  line-height: 40px;
  transition: 0.3s ease-in-out;
}

@media all and (min-width: 768px) {
  #page-top a {
    height: 42px;
    width: 42px;
  }

  #sub-column {
    margin-right: 55px;
  }
}

.column-set {
  padding-top: 0;
}

/*---------------------------------------------
reset style
---------------------------------------------*/
#contents {
  padding-top: 0;
}

@media all and (min-width: 768px) {
  #contents {
    padding-top: 64px;

  }

  #contents>article {
    padding: 0;
  }
}

.w100 .freeArea2 {
  padding-bottom: 0;
  margin-bottom: 0;
}

.freeArea2 .free-contents ul {
  margin: 0;
}

.freeArea2 .free-contents ul li {
  list-style-type: none;
}

.freeArea2 .free-contents .catCol_2 {
  margin: 0 0 20px 0;
}

#main-column h2 {
  border: none;
  letter-spacing: initial;
  margin: 0 0 30px;
  font-size: 2.0rem;
  padding: 0;
  line-height: 1.6;
}

#main-column .newItem h2::before {
  display: none;
}

@media all and (min-width: 768px) {
  #main-column h2 {
    font-size: 2.4rem;
  }
}

.column-set .column4 h3,
.column-set .column5 h3,
.column-set .column4 h2 {
  margin: 10px 0 14px !important;
  font-size: 1.4rem !important;
}

.column4 p.price,
.column5 p.price,
.column4 .fixed,
.column5 .fixed,
.column4 p.fx_price,
.column5 p.fx_price {
  text-align: left;
}

.column4 p.price .selling_price,
.column5 p.price .selling_price,
.column4 .fixed .selling_price,
.column5 .fixed .selling_price,
.column4 p.fx_price .selling_price,
.column5 p.fx_price .selling_price {
  font-size: 1.4rem;
}

.recommend .column-set .column5,
.newItem .column-set .column4,
.pickup .column-set .column5 {
  margin-bottom: 10px;
}

#sub-column h2 {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
  line-height: 1.6;
}

.freeArea2 {
  margin: 0;
}

#bread-crumb-listTop ol li {
  background: none;
  padding: 0;
}

.column4 p.inner-catch {
  margin: 5px 0;
  font-size: 1.2rem;
}

/*---------------------------------------------
下層ページのメインタイトル
---------------------------------------------*/
#Journal>h1,
.header_area>h1,
#JournalList>h1,
#shopGuide_wrap #guide h1 {
  font-size: 2.2rem;
  font-weight: normal;
  line-height: 40px;
  color: #000;
  padding: 0 0 7px;
  margin-bottom: 30px;
  border-top: none;
  border-bottom: 1px solid #707070;
  text-align: center;
}

@media all and (min-width: 768px) {

  #Journal>h1,
  .header_area>h1,
  #JournalList>h1,
  #shopGuide_wrap #guide h1 {
    font-size: 2.8rem;
  }
}

/*---------- サブタイトル ----------*/
#Journal>article>h2 a,
#Journal>article>h2,
#Journal .header_area>h1,
#JournalList .header_area>h1,
#itemList h1 {
  margin: 0 0 25px;
  padding: 0;
  font-size: 2.0rem;
  border: none;
  font-weight: normal;
  line-height: 35px;
  color: #000;
}

@media all and (min-width: 768px) {

  #Journal>article>h2 a,
  #Journal>article>h2,
  #Journal .header_area>h1,
  #JournalList .header_area>h1,
  #itemList h1 {
    font-size: 2.4rem;
  }
}

#Journal>article>h2 a {
  color: #656bbe;
  transition: 0.3s ease-in-out;
}

#Journal>article>h2 a:hover {
  opacity: 0.5;
}

.btn001 {
  border: 1px solid #CCC;
  background: #fff;
  color: #000;
  min-width: 160px;
  padding: 12px 10px;
  transition: 0.3s ease-in-out;
  font-size: 1.4rem;
  text-align: center;
  position: relative;
}

.btn001::before {
  position: absolute;
  left: 0;
  margin: 0 0 0 16px;
}

.btn001.btn002:hover {
  background: #292D61;
  color: #fff;
  border: 1px solid #292D61;
}

.btn001.btn002::before {
  position: static;
  margin: 0;
}

.btn001.btn003 {
  background: #DE3114;
  border: #DE3114 1px solid;
  color: #fff !important;
  transition: 0.3s ease-in-out;
}

.btn001.btn003:hover {
  opacity: 0.5;
}

.btn001.btn003::before {
  position: static;
  margin: 0;
}

@media all and (min-width: 768px) {
  .btn001 {
    min-width: 200px;
  }

  .btn001.btn002 {
    min-width: 180px;
  }

  .btn001.btn003 {
    min-width: 180px;
  }
}

/*---------------------------------------------
お気に入りボタン
---------------------------------------------*/
.btnCancel,
.sps-wishAddItem,
.sps-wishAddItemOk {
  position: relative;
  transition: 0.3s ease-in-out;
}

.btnCancel::before,
.sps-wishAddItem::before,
.sps-wishAddItemOk::before {
  position: absolute;
  width: 5px;
  height: 14px;
  left: 0;
  top: 0;
  bottom: 0;
  padding-left: 10px;
  margin: auto;
  content: '\f105';
  font-family: 'fontawesome';
  font-weight: 600;
}

.btnCancel:hover,
.sps-wishAddItem:hover {
  background: #292D61;
  color: #fff;
  border: 1px solid #292D61;
}

.sps-wishAddItemOk {
  background: #ccc;
}

section#itemDetail-wrap .favBtn {
  width: 49%;
}

section#itemDetail-wrap .favBtn span {
  display: block;
  min-width: auto;
}

section#itemDetail-wrap .favBtn span.wishBtnHidden {
  display: none;
}

section#itemDetail-wrap p.cancel {
  padding: 0;
  background: none;
  margin: 0;
  width: 49%;
}

section#itemDetail-wrap p.cancel a {
  min-width: auto;
}

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

#itemList_wrap .favBtn {
  display: none;
}

@media all and (min-width: 768px) {

  .btnCancel,
  .sps-wishAddItem,
  .sps-wishAddItemOk {
    width: 200px;
  }
}

/*---------------------------------------------
カートボタン
---------------------------------------------*/
.inputBtnWrap {
  position: relative;
  display: inline-block;
  background: #DE3114;
  border: #DE3114 1px solid;
  transition: 0.3s ease-in-out;
}

.inputBtnWrap::before {
  position: absolute;
  display: inline-block;
  font-family: 'fontawesome';
  font-size: 2.0rem;
  content: "\f07a";
  color: #fff;
  top: 0;
  bottom: 0;
  left: 0;
  height: 17px;
  margin: auto 0 auto 25px;
}

.inputBtnWrap:hover {
  opacity: 0.5;
}

.variation .inputBtnWrap::before {
  height: 20px;
  margin: auto 0 auto 5px;
}

@media all and (min-width: 768px) {
  .variation .inputBtnWrap::before {
    margin: auto 0 auto 20px;
  }
}

.variation .btnCart {
  width: 120px;
  font-size: 1.2rem;
}

.btnCart {
  position: relative;
  background: transparent;
  border: none;
  color: #fff;
  width: 200px;
  padding-left: 20px;
  font-size: 1.4rem;
}

/* #itemDetail-cont .cartArea .btnCart:hover {
  opacity: initial;
} */

@media all and (min-width: 768px) {
  .btnCart {
    height: 40px;
    padding-left: 15px;
  }

  .variation .btnCart {
    width: 200px;
    font-size: 1.4rem;
  }
}

/*---------------------------------------------
---------------------------------------------*/
/*---------------------------------------------
default reset
---------------------------------------------*/
section#itemDetail-wrap table.spec th {
  line-height: 20px;
  padding: 0;
  vertical-align: middle;
}

section#itemDetail-wrap table.spec td input {
  height: auto !important;
  width: 100px;
}

section#itemDetail-wrap table.price {
  line-height: 27px;
  margin: 0;
}

/* section#itemDetail-wrap .cartArea {
  margin: auto;
} */

article#Detail #main-column h1 {
  font-size: 2.0rem;
  line-height: 32px;
  margin-bottom: 10px;
}

article#Detail #main-column section.spec-g_txt p {
  font-size: 1.4rem;
  padding: 0;
}

article#Detail #main-column section.spec-g_table td,
article#Detail #main-column section.spec-g_table th {
  padding: 5px 0;
  font-size: 1.4rem;
}

article#Detail #main-column section.spec-g_table tr {
  border: none;
}

article#Detail #main-column section.spec-g_txt {
  margin-right: 0;
}

#pi_cart .spec>tbody>tr:nth-of-type(2) {
  display: table-row;
  border-bottom: 1px solid #ccc;
}

table.variation span.selling_price,
table.variation span.special_price {
  font-size: 1.4rem;
  font-weight: normal;
}

table.variation span.selling_price+span.taxin,
table.variation span.special_price+span.taxin {
  color: #000;
  font-size: 1.4rem;
}

article#Detail #main-column section.spec-g_table th,
article#Detail #main-column section.spec-g_table td {
  padding: 0;
}

@media screen and (max-width: 767px) {
  #itemDetail-cont .itemOutline {
    width: 100%;
    float: none;
  }
}

.ja .shareEl .btn {
  vertical-align: bottom;
}

/*---------------------------------------------
詳細ページ
---------------------------------------------*/
/*---------- 商品レイアウト ----------*/
@media all and (min-width: 768px) {
  #itemDetail-cont #pi_cart {
    width: 435px;
    padding-left: 25px;
  }
}

/*---------- 商品サムネイル ----------*/
#itemDetail-wrap .itemThumb-wrap {
  width: 100%;
  margin: 0 0 30px;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb-main .mainImg {
  margin: 0;
  vertical-align: bottom;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul {
  display: flex;
  flex-wrap: wrap;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li {
  height: auto;
  margin: 0;
  width: calc((100% - 3%) / 4);
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li:nth-child(5n) {
  margin: 0;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li+li {
  margin-left: 1% !important;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li:nth-of-type(4n+1) {
  margin-left: 0 !important;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li:nth-of-type(n+5) {
  margin-top: 3px;
}

#itemDetail-wrap .itemThumb-wrap .itemThumb ul li img {
  width: 100%;
  vertical-align: bottom;
}

@media all and (min-width: 768px) {
  #itemDetail-wrap .itemThumb-wrap {
    width: 460px;
    margin: 0;
  }

  #itemDetail-wrap .itemThumb-wrap .itemThumb-main {
    margin-bottom: 5px;
  }
}

/*---------- 商品説明（タイトル・型番・価格） ----------*/
#pi_cart .modelText {
  font-size: 1.4rem;
  margin-bottom: 30px;
}

#itemDetail-cont #pi_cart tr.price th {
  padding: 0 0 5px 0 !important;
  width: auto !important;
}

#itemDetail-cont #pi_cart tr.price th .selling_price_str {
  font-size: 1.4rem;
}

#itemDetail-cont #pi_cart tr.price td {
  text-align: right;
  padding-bottom: 10px;
}

#itemDetail-cont #pi_cart tr.price td .selling_price {
  color: #DE3114;
  font-size: 1.8rem;
  font-weight: normal;
  margin: 0;
}

#itemDetail-cont #pi_cart tr.price td .taxin {
  font-size: 1.4rem;
  margin-left: 0;
  font-weight: normal;
  margin-bottom: 0;
  color: #000;
}

@media all and (min-width: 768px) {
  #pi_cart .modelText {
    margin-bottom: 34px;
  }
}

/*---------- 商品オプション ----------*/
section#itemDetail-wrap #itemDetail-cont #pi_cart .optionTitle {
  color: #fff;
  background: #292D61;
  padding: 10px;
  margin: 30px 0 17px;
  font-size: 1.4rem;
  text-align: left;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .option_comment {
  line-height: 20px;
  font-size: 1.4rem;
  margin-bottom: 10px;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart select {
  padding: 5px;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec {
  border: none;
  margin: 0 0 10px 0;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec th {
  font-size: 1.4rem;
  padding-left: 0;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec td {
  text-align: right;
  padding: 10px 0;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec td input {
  margin: 0 5px;
  padding: 5px;
  border: #ccc 1px solid;
  vertical-align: bottom;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec td input[name="CNT-1"] {
  text-align: right;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec .model {
  display: none;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec .option_area {
  display: table-row;
  border: none;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec .option_area td {
  padding: 5px 0;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec .option_area.optionRow {
  display: none;
}

section#itemDetail-wrap #itemDetail-cont #pi_cart .spec .option td input {
  text-align: left;
}

/*---------- ボタンエリア ----------*/
.wishAddItemOk {
  display: inline-block;
}

section#itemDetail-wrap .cartArea>div {
  margin-bottom: 30px;
}

.snsArea {
  display: block;
}

.snsArea .sps-twitter-rect {
  width: 60px;
  height: 20px;
}

.snsArea #sns-twitter-button,
.snsArea #sns-facebook-button,
.snsArea #sns-line-button {
  transition: 0.3s ease-in-out;
}

.snsArea #sns-twitter-button:hover,
.snsArea #sns-facebook-button:hover,
.snsArea #sns-line-button:hover {
  opacity: 0.5;
}

#pi_cart .infoArea {
  display: flex;
  width: 100%;
}

@media all and (min-width: 768px) {
  .cartArea>div {
    margin-bottom: 20px;
  }
}

/*---------- カートテーブル ----------*/
/* section#itemDetail-wrap .cartArea table.variation .t-variation {
  background: #292D61;
  color: #fff;
}

section#itemDetail-wrap .cartArea table.variation .t-variation th {
  font-size: 1.4rem;
  padding: 10px 0;
  background: none;
  color: #fff;
  text-align: center;
  font-weight: normal;
  border: none;
}

section#itemDetail-wrap .cartArea table.variation td {
  text-align: center;
  font-size: 1.4rem;
  border: none;
  padding: 10px 0;
}

section#itemDetail-wrap .cartArea table.variation input {
  margin: 0;
}

@media all and (min-width: 768px) {
  section#itemDetail-wrap .cartArea table.variation td {
    padding: 20px;
  }
} */

section#itemDetail-wrap .cartArea table.variation th,
section#itemDetail-wrap .cartArea table.variation td {
  border: none;
  font-size: 14px;
}
section#itemDetail-wrap .cartArea .btnCart {
  width: 155px;
  margin: 0;
  font-size: 12px;
}

/*---------- 商品説明 商品仕様 ----------*/
article#Detail #main-column .spec-g_txt_table_wrap {
  padding-left: 10px;
  padding-right: 10px;
}

article#Detail #main-column .spec-g_txt_table_wrap section {
  margin-bottom: 30px;
  width: 100%;
  float: none;
}

article#Detail #main-column .spec-g_txt_table_wrap section h2 {
  color: #fff;
  background: #292D61;
  padding: 10px;
  margin: 0 0 20px 0;
  font-size: 1.4rem;
  text-align: left;
  line-height: 14px;
}

article#Detail #main-column .spec-g_txt_table_wrap section p {
  font-size: 1.4rem;
}

article#Detail #main-column .spec-g_txt_table_wrap section th {
  width: 60px;
  text-align: left;
  vertical-align: top;
  font-weight: normal;
}

#variationPriceAnnounceMailDialog {
  padding: 0;
}

@media all and (min-width: 768px) {
  article#Detail #main-column .spec-g_txt_table_wrap {
    display: flex;
    padding-left: 0;
    padding-right: 0;
  }

  article#Detail #main-column .spec-g_txt_table_wrap section {
    width: 430px;
  }

  article#Detail #main-column .spec-g_txt_table_wrap section h2 {
    line-height: 20px;
  }

  article#Detail #main-column .spec-g_txt_table_wrap section:nth-of-type(even) {
    margin-left: 40px;
  }
}

/*---------------------------------------------
商品一覧
---------------------------------------------*/
#itemList_wrap .sps-itemList-stockDisp {
  display: none;
}

#itemList_wrap #pager-bm {
  border-top: none;
}

/*---------------------------------------------
ご利用ガイド
---------------------------------------------*/
/*---------------------------------------------
common
---------------------------------------------*/
#contents .m10 {
  margin-bottom: 10px;
}

#contents .m15 {
  margin-bottom: 15px;
}

#contents .m20 {
  margin-bottom: 20px;
}

#contents .m40 {
  margin-bottom: 40px;
}

#contents .m50 {
  margin-bottom: 50px;
}

#contents .m80 {
  margin-bottom: 80px;
}

#contents .mt10 {
  margin-top: 10px;
}

#contents .pl10 {
  padding-left: 10px;
}

#contents .pt30 {
  padding-top: 30px;
}

.subtitle04 {
  font-size: 2.0rem;
  margin: 0 0 30px;
  color: #292D61;
  font-weight: bold;
}

strong {
  font-weight: bold;
}

.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.section {
  margin-bottom: 60px;
}

.section p {
  margin-bottom: 10px;
}

.section a {
  color: #656bbe;
  transition: 0.3s ease-in-out;
}

.section a:hover {
  opacity: 0.5;
}

.header_area table td {
  vertical-align: top;
}

.header_area table td p {
  font-size: 1.6rem;
}

.header_area ul li {
  font-size: 1.6rem;
  margin-bottom: 10px;
}

#texture .archive,
#size .archive {
  display: flex;
  justify-content: space-between;
}

#texture .archive li a,
#size .archive li a {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s ease-in-out;
  color: #000;
  border: 1px solid #CCC;
  background: #fff;
  min-width: 160px;
  padding: 10px 24px;
}

#texture .archive li a:hover,
#size .archive li a:hover {
  background: #292D61;
  color: #fff;
  border: 1px solid #292D61;
  opacity: 1;
}

#texture .archive li a:hover::after,
#size .archive li a:hover::after {
  color: #fff;
}

#texture .archive li a::after,
#size .archive li a::after {
  transition: 0.3s ease-in-out;
  color: #000;
  position: absolute;
  right: 0;
  margin-right: 10px;
  content: '\f105';
  font-family: 'fontawesome';
}

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

  #texture .archive,
  #size .archive {
    flex-wrap: wrap;
  }

  #texture .archive li,
  #size .archive li {
    width: 49%;
  }

  #texture .archive li:nth-of-type(even),
  #size .archive li:nth-of-type(even) {
    margin-left: 2%;
  }

  #texture .archive li a,
  #size .archive li a {
    min-width: 100%;
  }
}

@media all and (min-width: 768px) {

  #texture .archive li,
  #size .archive li {
    margin-bottom: 0;
  }
}

/*---------- 名入れ / 風呂敷の名入れについて ----------*/
#name table {
  margin-bottom: 10px;
}

#name table td img {
  vertical-align: bottom;
  width: auto;
}

@media screen and (max-width: 767px) {
  #name table td {
    display: block;
  }

  #name table td:first-of-type {
    padding-bottom: 10px;
    text-align: center;
  }
}

@media all and (min-width: 768px) {
  #name table td:first-of-type {
    width: 280px;
  }

  #name table td:nth-of-type(2) {
    padding-left: 30px;
  }
}

/*---------- 箱入れ・ギフト包装・のし掛け ----------*/
#gift .img {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#gift .img li {
  width: 49%;
  text-align: center;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #gift .img li:nth-of-type(even) {
    margin-left: 2%;
  }

  #gift .img li:nth-of-type(n+3) {
    margin-top: 20px;
  }
}

@media all and (min-width: 768px) {
  #gift .img li {
    width: auto;
  }
}

/*---------- オリジナルオーダー ----------*/
.header_area .original_title {
  font-size: 1.8rem;
  margin-bottom: 20px;
  font-weight: bold;
}

.header_area .gold_bold {
  font-weight: bold;
  color: #BC8E04;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .header_area .txt_c img {
    width: auto;
  }
}

/*---------- 風呂敷に出来ること ----------*/
#Journal .journal-cont .line_up {
  margin: 0;
  display: flex;
  justify-content: center;
}

#Journal .journal-cont .line_up li {
  list-style: none;
  max-width: 305px;
}

#Journal .journal-cont .line_up li:nth-of-type(even) {
  margin-left: 20px;
}

#Journal .journal-cont .line_up li .txt {
  font-size: 1.4rem;
}

@media all and (min-width: 768px) {
  #Journal .journal-cont .link a {
    margin-left: 20px;
  }
}

/*---------- 包み方（平包み・お使い包み）/ 目的・用途で選ぶ ----------*/
#choice h4 {
  font-size: 1.8rem;
  margin-bottom: 30px;
  font-weight: bold;
  text-align: center;
}

#choice .archive {
  display: flex;
  flex-wrap: wrap;
}

#choice .archive li {
  margin: 0;
  border: solid 1px #ccc;
  padding: 20px;
  font-size: 1.4rem;
}

#choice .archive li a {
  font-size: 1.6rem;
  position: relative;
  display: flex;
  align-items: center;
  transition: 0.3s ease-in-out;
  color: #fff;
  background: #292D61;
  padding: 8px 10px;
  margin-bottom: 10px;
}

#choice .archive li a::after {
  color: #fff;
  position: absolute;
  right: 0;
  margin-right: 10px;
  content: '\f105';
  font-family: 'fontawesome';
}

@media screen and (max-width: 767px) {
  #choice .archive li+li {
    margin-top: 20px;
  }
}

@media all and (min-width: 768px) {
  #choice .archive li {
    width: calc((100% - 40px) / 3);
    margin-left: 20px;
  }

  #choice .archive li:nth-of-type(n+4) {
    margin-top: 20px;
  }

  #choice .archive li:first-of-type,
  #choice .archive li:nth-of-type(3n+1) {
    margin-left: 0;
  }

  #choice .archive li a {
    padding: 10px 16px;
  }
}

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

.header_area .use li {
  width: 48%;
  text-align: center;
  margin-bottom: 40px;
}

.header_area .use li .img {
  margin-bottom: 5px;
}

.header_area .use li .txt {
  display: inline-block;
  text-align: left;
  font-size: 1.4rem;
}

/*---------- 風呂敷バッグの作り方 / 風呂敷バッグをつくる ----------*/
#bag ul li {
  margin-bottom: 60px;
}

#bag ul li img {
  vertical-align: bottom;
}

@media all and (min-width: 768px) {
  #bag ul li {
    text-align: center;
  }
}

/*---------- 風呂敷の素材・染方法・お手入れ 方法 / 素材で選ぶ ----------*/
/*---------- サイズ別の呼び方・用途 / 風呂敷のサイズで選ぶ ----------*/
/*---------- 柄・デザインについて / 柄・デザインで選ぶ ----------*/
#design .subtitle04 {
  margin: 0 0 30px;
  text-align: left;
  font-size: 2.0rem;
  color: #292D61;
}

#design .txt {
  margin-bottom: 30px;
}

#design .link {
  text-align: right;
}

#design .link a {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s ease-in-out;
  color: #000;
  border: 1px solid #CCC;
  background: #fff;
  min-width: 160px;
  padding: 10px 24px;
}

#design .link a:hover {
  background: #292D61;
  color: #fff;
  border: 1px solid #292D61;
  opacity: 1;
}

#design .link a:hover::after {
  color: #fff;
}

#design .link a::after {
  transition: 0.3s ease-in-out;
  color: #000;
  position: absolute;
  right: 0;
  margin-right: 10px;
  content: '\f105';
  font-family: 'fontawesome';
}

/*---------- ご注文の流れ / ご利用案内 ----------*/
#Journal .journal-cont .guide01 {
  margin-bottom: 60px;
}

#Journal .journal-cont .guide01 h2 {
  font-size: 2.0rem;
  margin: 0 0 20px;
  color: #292D61;
  font-weight: bold;
  border: none;
  height: auto;
  line-height: initial;
}

#Journal .journal-cont .guide01 p {
  line-height: 160%;
  font-size: 1.4rem;
  margin: 0 0 10px;
}

@media all and (min-width: 768px) {
  #Journal .journal-cont .guide01 h2 {
    font-size: 2.2rem;
  }
}

/*---------- 会社概要 / ご利用ガイド ----------*/
/* 会社概要 & 特定商取引法に関する表示 */
#Journal #guide .chart table,
#shopGuide_wrap #guide .chart table {
  border-collapse: collapse;
  border: 1px solid #ccc;
}

#Journal #guide .chart table th,
#Journal #guide .chart table td,
#shopGuide_wrap #guide .chart table th,
#shopGuide_wrap #guide .chart table td {
  font-size: 1.4rem;
  font-weight: normal;
  padding: 15px;
  border: 1px solid #ccc;
  line-height: 160%;
}

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

  #Journal #guide .chart table,
  #shopGuide_wrap #guide .chart table {
    border: none !important;
  }

  #Journal #guide .chart table th,
  #Journal #guide .chart table td,
  #shopGuide_wrap #guide .chart table th,
  #shopGuide_wrap #guide .chart table td {
    width: 100%;
    display: block;
    border: none !important;
  }

  #Journal #guide .chart table th,
  #shopGuide_wrap #guide .chart table th {
    padding: 10px;
  }

  #Journal #guide .chart table td,
  #shopGuide_wrap #guide .chart table td {
    padding: 20px 10px;
  }
}

#contents #Journal {
  /* ※記事右下にある要素 */
}

#contents #Journal .state_r {
  border-top: 1px solid #ccc;
}

#contents #Journal .state_r ul {
  line-height: initial;
  display: flex;
  justify-content: flex-end;
}

#contents #Journal .state_r ul li {
  font-size: 1.2rem;
  padding: 0 5px;
  border: none;
  border-left: 1px solid #ccc;
}

#contents #Journal .state_r ul li a {
  color: #656bbe;
  transition: 0.3s ease-in-out;
}

#contents #Journal .state_r ul li a:hover {
  opacity: 0.5;
}

@media all and (min-width: 768px) {
  #contents #Journal .state_r ul li {
    font-size: 1.4rem;
    padding: 0 15px;
  }
}

/*---------- スタッフ日記 ----------*/
#JournalList h2 {
  font-size: 2.0rem;
}

#JournalList h2 a {
  color: #656bbe;
  transition: 0.3s ease-in-out;
}

#JournalList h2 a::after {
  color: #656bbe;
  position: static;
  display: inline-block;
  border: none;
  padding: 0;
  width: auto;
  font-size: 1.4rem;
}

#JournalList h2 a:hover {
  opacity: 0.5;
}

#JournalList h2 a:hover::after {
  background: transparent !important;
  color: #656bbe !important;
}

#JournalList .journal-cont {
  margin: 0 0 30px;
}

#JournalList .journal-cont p {
  margin-bottom: 20px;
  line-height: 160%;
}

#JournalList .journal-cont p img {
  vertical-align: bottom;
}

#JournalList article {
  margin: 0 0 30px;
}

@media all and (min-width: 768px) {
  #JournalList h2 {
    font-size: 2.4rem;
  }

  #JournalList h2 a::after {
    margin: 0 0 0 20px;
  }
}

/*---------- スタッフ日記個別ページ ----------*/
#contents {
  /* 投稿ボタン */
}

#contents .btn-confirm,
#contents a .more {
  cursor: pointer;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s ease-in-out;
  color: #fff;
  border: 1px solid #292D61;
  min-width: 160px;
  padding: 10px 24px;
  border-radius: 0;
  width: auto;
  height: auto;
  font-size: 1.4rem;
  margin: 0;
  background: #292D61;
}

#contents .btn-confirm img,
#contents a .more img {
  display: none;
}

#contents .btn-confirm:hover,
#contents a .more:hover {
  opacity: .7;
  width: auto;
  height: auto;
  background: #292D61;
}

#contents .btn-confirm::after,
#contents a .more::after {
  transition: 0.3s ease-in-out;
  color: #fff;
  position: absolute;
  right: 0;
  margin-right: 10px;
  content: '\f105';
  font-family: 'fontawesome';
}

#contents .btn-confirm {
  padding: 0;
}

#contents input[type="button"].btn-confirmBack,
#contents input[type="submit"].btn-confirmPost {
  position: relative;
  z-index: 1;
  cursor: pointer;
  background-color: transparent;
  border: none;
  color: #fff;
  height: auto;
  width: auto;
  padding: 0;
  font-size: 1.4rem;
  min-width: 160px;
  padding: 10px 24px;
}

/*---------------------------------------------
top
---------------------------------------------*/
.slider .slick-arrow {
  background: #292D61;
}

.catArea {
  margin-bottom: 50px;
  padding: 0 10px;
}

@media all and (min-width: 768px) {
  .catArea {
    margin-bottom: 88px;
    padding: 0;
  }
}

.catCol_2 {
  margin-bottom: 20px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.catCol_2 li {
  width: 49%;
  position: relative;
}

.catCol_2 li:nth-of-type(even) {
  margin-left: 2%;
}

.catCol_2 li:nth-of-type(n+3) {
  margin-top: 10px;
}

.catCol_2 li figure {
  margin: 0;
}

.catCol_2 li figure>img {
  vertical-align: bottom;
}

@media all and (min-width: 768px) {
  .catCol_2 li {
    width: 440px;
  }

  .catCol_2 li:nth-of-type(even) {
    margin-left: 20px;
  }

  .catCol_2 li:nth-of-type(n+3) {
    margin-top: 20px;
  }
}

.catCol_3 {
  display: flex;
  justify-content: flex-start;
}

.catCol_3 li {
  width: calc(100% / 3);
  position: relative;
}

.catCol_3 li+li {
  margin-left: 10px;
}

.catCol_3 li figure {
  margin: 0;
}

.catCol_3 li figure>img {
  vertical-align: bottom;
}

@media all and (min-width: 768px) {
  .catCol_3 li {
    width: 287px;
  }

  .catCol_3 li+li {
    margin-left: 19px;
  }
}

.freeArea2 .free-contents .labelName {
  padding: 5px 0 0;
  font-size: 1.4rem;
  line-height: 20px;
  font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;
  color: #000;
  background: #fff;
  transition: 0.3s ease-in-out;
}

.freeArea2 .free-contents .labelName.labelName_2 {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}

.freeArea2 .free-contents .labelName.labelName_2 .small {
  font-size: 1.2rem;
  display: inline-block;
  line-height: 14px;
}

.freeArea2 .free-contents a:hover .labelName {
  opacity: .6;
}

@media all and (min-width: 768px) {
  .freeArea2 .free-contents .labelName {
    font-size: 1.8rem;
    line-height: 24px;
    padding: 13px 10px;
    position: absolute;
    right: 0;
    bottom: 0;
  }

  .freeArea2 .free-contents .labelName.labelName_2 {
    flex-direction: row;
    align-items: center;
  }

  .freeArea2 .free-contents .labelName.labelName_2 .small {
    margin: 0 0 0 10px;
    font-size: 1.4rem;
    line-height: 20px;
  }
}

#contents .ttl001 {
  margin: 0 0 20px;
  padding: 0;
  border-bottom: none;
  font-size: 2.2rem;
  font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;
}

@media all and (min-width: 768px) {
  #contents .ttl001 {
    margin: 0 0 30px;
    font-size: 2.7rem;
  }
}

.list001 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  padding: 0;
}

.list001 li {
  text-align: center;
  width: calc(100% / 3);
  position: relative;
}

.list001 li::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #999;
  position: absolute;
  right: 0;
}

.list001 li:nth-of-type(3n)::before {
  display: none;
}

.list001 li:nth-of-type(n+4) {
  margin-top: 60px;
}

.list001 li:nth-of-type(n+4)::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #999;
  position: absolute;
  top: -30px;
}

.list001 li figure {
  padding: 0 10px;
  margin-bottom: 10px;
}

.list001 li figure>img {
  vertical-align: bottom;
}

.list001 li .catItemName {
  font-size: 1.4rem;
  font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;
  padding: 0 10px;
}

@media all and (min-width: 768px) {
  .list001 li figure {
    padding: 0;
    margin: 0 0 30px;
  }

  .list001 li .catItemName {
    font-size: 1.8rem;
  }
}

.list002 {
  padding: 0 10px;
}

.list002 li {
  border: 1px solid #ccc;
}

.list002 li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 15px;
}

.list002 li a .catItemName02::before {
  margin-right: 20px;
  content: '\f105';
  font-family: 'fontawesome';
}

.list002 li a figure {
  margin: 0;
}

.list002 li a figure>img {
  vertical-align: bottom;
}

@media screen and (max-width: 767px) {
  .list002 li+li {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .list002 {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
  }

  .list002 li {
    width: 435px;
  }

  .list002 li:nth-of-type(even) {
    margin-left: 30px;
  }

  .list002 li:nth-of-type(n+3) {
    margin-top: 30px;
  }
}

.li-btn.li-btn02 li {
  margin: 0;
}

.li-btn.li-btn02 a {
  display: flex;
  align-items: center;
  padding: 0 20px;
  min-height: 60px;
}

@media screen and (max-width: 767px) {
  .li-btn.li-btn02 li+li {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .li-btn.li-btn02 li {
    width: 280px;
  }

  .li-btn.li-btn02 li+li {
    margin-left: 30px;
  }

  .li-btn.li-btn02 li:nth-of-type(3n+1) {
    margin-left: 0;
  }

  .li-btn.li-btn02 li:nth-of-type(n+4) {
    margin-top: 20px;
  }
}

.list003 {
  padding: 0 10px;
}

.list003 li {
  width: 49%;
  text-align: center;
}

.list003 li:nth-of-type(even) {
  margin-left: 2%;
}

.list003 li:nth-of-type(n+3) {
  margin-top: 20px;
}

.list003 li h3 {
  margin: 5px 0 0;
  font-size: 1.4rem;
}

.list003 a {
  display: inline-block;
  vertical-align: bottom;
}

.list003 a img {
  vertical-align: bottom;
}

@media screen and (max-width: 767px) {
  .list003.list003_2 li {
    width: 100%;
    margin: 0;
  }

  .list003.list003_2 li+li {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .list003 {
    padding: 0;
  }

  .list003 li {
    width: 440px;
  }

  .list003 li:nth-of-type(even) {
    margin-left: 20px;
  }

  .list003 li:nth-of-type(n+3) {
    margin-top: 26px;
  }

  .list003 li h3 {
    margin: 10px 0 0;
    font-size: 1.8rem;
  }
}

.list004 {
  display: flex;
  flex-wrap: wrap;
  padding: 0 10px;
}

.list004 li {
  width: 49%;
}

.list004 li:hover .priceTxt {
  opacity: 0.6;
}

.list004 li figure {
  margin: 0 0 11px 0;
}

.list004 li figure>img {
  vertical-align: bottom;
}

.list004 li h3 {
  font-size: 1.4rem;
  font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif;
  margin-bottom: 14px;
}

.list004 li .priceTxt {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  color: #F60000;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .list004 li:nth-of-type(even) {
    margin-left: 2%;
  }

  .list004 li:nth-of-type(n+3) {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .list004 {
    padding: 0;
  }

  .list004 li {
    width: 216px;
    margin-left: 12px;
  }

  .list004 li:first-of-type {
    margin-left: 0;
  }

  .list004 li:nth-of-type(4n+1) {
    margin-left: 0;
  }

  .list004 li:nth-of-type(n+5) {
    margin-top: 25px;
  }
}

.sec001 {
  margin-bottom: 50px;
}

.is-fixed {
  position: fixed;
  inset: 0 0 auto;
  z-index: 9999;
}


/*---------------------------------------------
アコーディオン
---------------------------------------------*/
@media all and (min-width: 768px) {
  .menu {
    display: none;
  }
}

@media all and (max-width: 767px) {
  .menu {
    transition: ease .5s;
    z-index: 1000;
    padding: 0 10px;
    margin-bottom: 30px;
    margin-top: 40px;
  }

  .menu_list {
    position: relative;
    z-index: 10;
    overflow: auto;
  }

  .menu_list_item {
    border-bottom: 1px solid #CCC;
    color: #fff;
    font-size: 1.4rem;
    cursor: pointer;
    background: #292D61;
    display: flex;
    align-items: center;
    height: 22px;
  }

  .menu_list_item.acodion_open {
    position: relative;
    padding: 22px;
  }

  .menu_list_item.acodion_open::after {
    color: #fff;
    font-size: 16px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    content: "▼";
  }

  .menu_list_item.acodion_open.open::after {
    content: "▲";
  }

  .acordionmenu {
    padding: 0 5px;
    background: #d7d7de;
    display: none;
  }

  .acordionmenu.open {
    display: block;
  }

  .itemDef dd:last-of-type {
    margin-bottom: 0;
  }
}


.megamenu_open .gnavMegaWrap {
  opacity: 0;
  visibility: hidden;
}

.gnavItem:hover .gnavMegaWrap {
  opacity: 1;
  visibility: visible;
}


.shopGuide_wrap {
  margin-top: -64px;
}
#return {
  padding-top: 64px !important;
  margin-top: -64px !important;
}