/* ログイン分岐 */
body[data-member-login="true"] .login_none { display:none; }
body:not([data-member-login="true"]) .login_only { display:none; }

.mt2 { margin-top:2em!important; }
[class*=ttl-] { margin-bottom:1em; font-size:clamp(20px,5vw,35px); font-weight:inherit; }
[class*=btn-]>a { position:relative; z-index:2; display:inline-block; overflow:hidden; min-width:260px;
  padding:.8em 3em; font-size:18px; text-align:center; border-radius:2em; }
[class*=btn-]>a>.fa { display:block; font-size:24px; position:absolute; top:0; bottom:0; right:1em; margin:auto; height:fit-content;}
.btn-blu { color:#fff; }
.btn-blu>a { color:#fff; background:#949dbd; }

/*----------------------------------------------------------------------
 common
----------------------------------------------------------------------*/
.inner { margin:auto; width:min(94%, 1300px); }
.narrow { margin:auto; width:min(92%, 1120px); }
.inner_narrow { max-width: 1000px; width: 93%; margin: 0 auto;}

.bg_blu { background: #6c788c;}
.bg_blu2 { background: #6c868c;}
.bg_ppl { background: #988fa4;}
.bg_red { background: #8c595b;}
.bg_bei { background: #f6f5f4;}
.txt { margin: 0;}
.mb0 { margin-bottom: 0;}

@import url('https://fonts.googleapis.com/css2?family=Hina+Mincho&family=Noto+Sans+JP&display=swap');

*, *::before, *::after { box-sizing:border-box; }

html { overflow:auto; -webkit-text-size-adjust:100%; }
body {
  margin:0; padding:0;
  font-size:16px; color:#484745; line-height:calc(1em + 0.8rem);
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  font-family:'Hina Mincho', serif;
  }
h1, h2, h3, h4, dl, dd, ul, form, textarea, figure { margin:0; padding:0; font-size:100%; font-weight:inherit; }
article, aside, dialog, figure, footer, header, hgroup, nav, section, main { display:block; }

/* clearfix 回り込み解除 ------------------------ */
.clearfix:after { content:""; clear:both; display:block; }

/* 共通 ------------------------ */
a { color:inherit; -webkit-transition:all .3s; transition:all .3s; text-decoration:none; }
:where(a:active, a:hover) { color:inherit; opacity:.5; }
a:focus { outline:none; }

strong { font-size:1.2em; }
em { font-style:normal; font-weight:bold; }

fieldset { border:none; }
table { border-collapse:collapse; border-spacing:0; }
map area:focus, map area:active { outline:none; border:0; }

ul { list-style-type:none; }
ul.disc, ul.square { padding-left:1.3em; }
.disc li { list-style-type:disc; }
.square li { list-style-type:square; }
.decimal > li { list-style-type:decimal; }

ul.kome li { text-indent:-1em; margin-left:1em; }
ul.kome li::before { content:"※"; }

ol.kome { padding-left:5px; }
ol.kome li { text-indent:-2em; margin-left:2em; }
ol.kome { list-style:none; counter-reset:number; }
ol.kome li::before { counter-increment:number; content:"※"counter(number)" "; }
.kome_red li::before { color:#c00; }

ol.paren { padding-left:1.8em; }
ol.paren > li { list-style-type:none; counter-increment:paren; }
ol.paren > li::before { content:"(" counter(paren) ") "; display:inline-block; width:1.7em; margin-left:-1.8em; padding-left:.1em; }

img { max-width:100%; height:auto; font-size:0; line-height:0; border-width:0px; vertical-align:bottom; }
img.middle { vertical-align:middle; }

.fleft  { float:left; }
.fright { float:right; }

.left   { text-align:left; }
.center { text-align:center; }
.right  { text-align:right; }

.big    { font-size:1.3em; }
.small  { font-size:.85em; }
.bold   { font-weight:bold; }
.italic { font-style:italic; }
.marker { background:linear-gradient(transparent 50%, #fff284 0%); }

.clear  { clear:both; }
.hide   { display:none; }
.iblock { display:inline-block; }
.wide   { width:100%; }
.indent { text-indent:-1em; padding-left:1em; }
.shadow { box-shadow:0 0 3px rgba(0,0,0,0.3); }

.red, .err { color:#c00; }
.bg-beg { background-color:#f6f5f4; }

.flex { display:-webkit-box; display:flex; flex-wrap:wrap; }
.flex-between { -webkit-box-pack:justify; justify-content:space-between; }
.flex-center  { -webkit-box-pack:center; justify-content:center; }
.flex-end  { -webkit-box-pack:end; justify-content:flex-end; }
.flex-align-center { -webkit-box-align:center; align-items:center; }

.item-center { display:grid; place-items:center; }
.vh_ctr {
  position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%, -50%);
  transform:translate(-50%, -50%);
}

.link-disabled { cursor:default; pointer-events:none; opacity:0.6; }

.is-fixed { position:fixed; top:0; right:0; bottom:0; left:0; }
.is-hide { transform:translateY(-100%); }
.is-empty {
  height:0;
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  border:none !important;
}

.noto { font-family:'Noto Sans JP', sans-serif; }

input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], textarea {
  -webkit-appearance:none;
   width:100%; padding:5px !important; line-height:2;
   background:#fff; border:1px solid #ddd; border-radius:3px; }


/*----------------------------------------------------------------------
 base
----------------------------------------------------------------------*/
/*ヘッダー*/
.common_header { position:relative; z-index: 1; margin-bottom:clamp(40px,10vw,50px); padding-bottom:min(20%,100px); }
.common_header >.sysContent>* { position:absolute; top:0; bottom:0; margin:auto; }
.common_header .sitename { left:0; right:0; width:min(40%,220px); }
/*ハンバーガーメニュー*/
.common_header #menu-btn { left:min(4%,40px); width:2em; height:2em; cursor:pointer; }
.common_header #menu-btn::before,
.common_header #menu-btn::after { position:absolute; display:block; top:0; bottom:0; margin:auto; border:#484745 1px solid; width:100%; content:''; }
.common_header #menu-btn::before { border-width:1px 0; height:1.25em;}
.common_header #menu-btn::after { border-width:1px 0 0; height:1px; }
#wrapper #sysAside { display:block; position:fixed; z-index:1000; top:0; left:0; margin:0; width:300px!important; height:100%; overflow-y:auto; padding:25px; background:#fff; border-right:#c2c7cd 1px solid;
-webkit-transition:all .3s ease-in; transition:all .3s ease-in;
-webkit-transform:translate(-300px); transform:translate(-300px);
-webkit-overflow-scrolling:touch; }
#wrapper #sysAside.open { -webkit-transform:translate(0); transform:translate(0); }
#wrapper .overlay { display:none; position:fixed; z-index:1000; width:100%; height:100%; background:#fff; opacity:.75; }
/*ヘッダー右側リンク*/
#h-link { line-height:1.2; right:min(4%,40px); font-size:13px; }
#h-link img[class*=ico-] { margin-right:2px; width:18px; height:18px; object-fit:contain; vertical-align:sub; }
#h-link .legist, #h-link .legist>a { margin-left:.5em; }
#h-link .cart { margin-left:5px;}
#h-link .cart-num { display:inline-block; padding:3px; min-width:18px; height:18px; font-size:11px; text-align:center; line-height:12px; color:#fff; background:#484745; border-radius:9px; }
/*ヘッダー下nav*/
#h-nav { top:100%; margin:0; width:100%; height:clamp(40px,10vw,50px); color:#fff; border:#c2c7cd solid; border-width:1px 0; }
#h-nav>ul { margin:auto; width:min(100%,1120px); height:100%; background:#757c96; }
#h-nav>ul>li { position: relative; flex:1; height: 100%; }
#h-nav>ul>li:nth-child(n+2)::before { position: absolute; content: ""; left: 0; top: 50%; transform: translateY(-50%); height: 70%; width: 1px; background: #c2c7cd; }
#h-nav>ul>li>a,#h-nav>ul>li>span { cursor: pointer; display:flex; justify-content: center; align-items: center; height: 100%; }
.sub-gnav { display: none; position: absolute; width: 100%; background: rgba(117, 124, 150, 0.88); border-top: 1px solid rgba(255, 255, 255, 0.36); padding: 1em; font-size: 0.9em;}
.sub-gnav li + li { padding-top: .5em; margin-top: .5em; border-top: solid 1px;}
.sub-gnav li a { display: block;}

/* フッター */
.common_footer { width:min(96%,1300px); margin:auto; }
.f-main { padding:min(6%,60px) 4%; }
.f-logo { padding:.5em 0 1em; }
.f-info { font-size:.9em; line-height:1.6; }
.f-info .tel { position: relative; padding-left: 1.3em; font-size:1.2em; }
.f-info .tel::before { position: absolute; content: ""; left: 0; top: 55%; transform: translateY(-50%); width: 1em; height: 1em; background: url(/img/common/icon-tel.svg) no-repeat center / contain;}
.f-link { margin-top:20px; gap:1em; }
.f-link>a>img { width:30px; height:30px; object-fit:scale-down; }
.f-nav { gap:min(7vw,100px); font-size:15px; }
.f-notice { padding:min(4%,40px); font-size:.875em; line-height:1.6em; border:solid #eee; border-width:1px 0; }
.f-notice>li { margin-top:.4em; margin-bottom:.4em; }
.copyright { padding:min(4%,40px) 0; font-size:.8em; }

/*----------------------------------------------------------------------
 TOP
----------------------------------------------------------------------*/
#top #sysMain .sysHeadline { margin:min(10%, 100px) auto 1.5em; font-weight:inherit; }
#top #sysMain .top_lead .sysHeadline { margin-top:0; }
#top #sysMain .sysHeadline::before { display:none; }
#top #sysMain .sysHeadline b { margin:1em 0; padding:0; font-weight:inherit; border:none; }
#top #sysMain .sysHeadline { width: auto; margin:min(10%, 100px) auto 1.5em; font-weight:inherit; font-size:clamp(20px,5vw,35px); }
#top #sysMain .sysHeadline::before { display:none; }
#top #sysMain .sysHeadline b { margin:1em 0; padding:0; font-weight:inherit; border:none; }
.sysItemBlock>ul { display:-ms-grid; display:grid; grid-template-columns:repeat(4, 1fr); gap:2.5em 2%; column-gap: max(1%, (66px / 3));}
.sysItemBlock>ul>li{ display:flex; height:100%; flex-direction:column; }
#top .sysContent .sysVertical .sysItemImage a { position: relative; display: block; padding-top: 133%;}
#top .sysContent .sysVertical .sysItemImage img { position: absolute; top: 0; left: 0; width:100%; height: 100%; object-fit: cover; margin:auto; float:none; }
#top :is(.sysItemName,.sysItemPrice) { font-size:clamp(12px,2.5vw,1em); line-height:1.2em; }
#top .sysItemName>a { display:block; padding:1em 0 .5em; min-height:3em; text-align:left; }
#top .sysItemPrice { margin-top:auto; text-align:right; }
#top .sysItemPrice>span { font-size:.64em; }

#top .top_newarrival ul{
  font-size:0;
  text-align:left;
}
#top .top_newarrival li{
  float:none !important;
  display:inline-block;
  width:100% !important;
  font-size:12px;
  text-align:center;
  vertical-align:top;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
#top .top_newarrival li img{
  width:100%;
}
#top .top_newarrival .sysItemName{
  font-size:16px;
  font-weight:500;
  padding-top:10px;
}
/* バナー */
a:hover img {
opacity:1;
filter: alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
transition: 0.4s;
}
.floating-banner {
position: fixed;
left: 0;
bottom: 0;
z-index: 99;
}
.target.is-hidden {
display: none;
}
p {
margin: 0;
}
/* ボタンの設定 */
.floating-banner_button {
display: block;
width: 30px;
height: 30px;
background-color: rgb(87,87,87);
position: absolute;
left: 92.5%;
cursor: pointer;
}
/* アイコンの設定(開) */
.floating-banner_button::before, .floating-banner_button::after {
display: block;
content: '';
width: 4px;
height: 24px;
background-color: #FFF;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
.floating-banner_button::before {
transform: rotateZ(90deg);
}
.floating-banner_button::after {
transform: rotateZ(90deg);
}
/* アイコンの設定(閉) */
.floating-banner_buttonClose {
display: block;
width: 30px;
height: 30px;
margin-left: auto;
background-color: rgb(87,87,87);
position: absolute;
left: 0;
bottom: 100%;
cursor: pointer;
}
.floating-banner_buttonClose::before, .floating-banner_buttonClose::after {
display: block;
content: '';
width: 4px;
height: 24px;
background-color: #FFF;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
.floating-banner_buttonClose::before {
transform: rotateZ(0deg);
}
.floating-banner_buttonClose::after {
transform: rotateZ(90deg);
}
}

/* スライダー */
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f0f0f0;
}

.carousel {
position: relative;
width: 100%;
max-width: 100%;
overflow: hidden;
}

.carousel-inner {
display: flex;
width: 400%;
transition: transform 1s ease;
}

.carousel-item {
width: 25%;
box-sizing: border-box;
}

.carousel-item img {
width: 100%;
}

input[name="carousel"] {
display: none;
}

input[name="carousel"]:nth-child(1):checked ~ .carousel-inner {
transform: translateX(0%);
}

input[name="carousel"]:nth-child(2):checked ~ .carousel-inner {
transform: translateX(-25%);
}

input[name="carousel"]:nth-child(3):checked ~ .carousel-inner {
transform: translateX(-50%);
}

input[name="carousel"]:nth-child(4):checked ~ .carousel-inner {
transform: translateX(-75%);
}

.carousel-controls {
position: absolute;
bottom: 10px;
left: 50%;
transform: translateX(-50%);
display: flex;
}

.carousel-controls label {
width: 12px;
height: 12px;
border-radius: 50%;
background-color: #ddd;
margin: 0 5px;
cursor: pointer;
}

input[name="carousel"]:nth-child(1):checked ~ .carousel-controls label[for="slide1"],
input[name="carousel"]:nth-child(2):checked ~ .carousel-controls label[for="slide2"],
input[name="carousel"]:nth-child(3):checked ~ .carousel-controls label[for="slide3"],
input[name="carousel"]:nth-child(4):checked ~ .carousel-controls label[for="slide4"] {
background-color: #333;
}

/* lead */
.top_lead { padding:clamp(60px,8vw,80px) 0; text-align:center; background:
  url(/img/top/lead-bg1.jpg) left top / clamp(100px,25%,479px) no-repeat,
  url(/img/top/lead-bg2.jpg) right bottom / clamp(100px,25%,376px) no-repeat,
  #f6f5f4; }
.top_lead>.sysContent p { line-height:2em; margin:1em 0; }

/* 新着 */
.top_newarrival .sysItemBlock { margin-bottom: min(10vw, 60px);}

/* 振袖と袴 */
.top_furisode_hakama { text-align:center; padding-bottom:min(20vw,200px); position:relative; }
.top_furisode_hakama::after { z-index:-1; position:absolute; left:0; right:0; bottom:0; height:min(20vw,200px); background:#f6f5f4; content:''; }
.top_furisode_hakama .ttl-def { margin:min(12%,120px) auto min(5vw,50px); }
.top_furisode_hakama>.sysContent>.flex { flex-wrap:nowrap; margin:0 20vw; gap:1em min(4vw,80px); }
.top_furisode_hakama .cat-box { width:12.5em; min-height:20.75em; padding-bottom:3em; position:relative; }
.top_furisode_hakama .cat-box::before { display:block; position:absolute; bottom:max(-9vw, -125px); width:20vw; height:min(37vw,510px); background:contain no-repeat; content:''; }
.top_furisode_hakama .cat-box.furisode::before { right:100%; background:url(/img/top/deco-furisode.png) right/contain no-repeat; }
.top_furisode_hakama .cat-box.hakama::before { left:100%; background:url(/img/top/deco-hakama.png) left/contain no-repeat; }
.top_furisode_hakama .cat-box .bg-beg { font-size:1.25em; padding:.3em; }
.top_furisode_hakama .cat-box li>a { display:block; padding:.6em 0; border-bottom:1px solid #eeeeee; position:relative; }
.top_furisode_hakama .cat-box li>a>.fa { position:absolute; top:0; bottom:0; right:10px; margin:auto; height:1em; color:#c2c7cd; }

/* 前撮り */
.top_maedori>.sysContent { max-width: 1100px; margin-inline: auto; color:#fff; display:-ms-grid; display:grid; grid-template-columns:1fr 1fr; gap:1em 2%; }
.flow-link.furisode>a>span { margin-left:auto; margin-right: 46%; }
.flow-link.hakama>a>span { margin-right:auto; margin-left: 46%; }
.flow-link.furisode>a { background:url(/img/maedori/seijin/mv.jpg) no-repeat center / cover; }
.flow-link.hakama>a { background:url(/img/maedori/sotugyo/mv.jpg) no-repeat center / cover; }
.top_maedori a { position: relative;}

/* 流れ */
.top_flow>.sysContent { color:#fff; display:-ms-grid; display:grid; grid-template-columns:1fr 1fr; gap:1em 2%; }
.flow-link>a { display:block; padding-bottom:50%; position:relative; background:url(/img/top/flow-visits.jpg) center/100% no-repeat,#757c96; }
.flow-link.visits>a { background-image:url(/img/top/flow-delivery.jpg); }
.flow-link>a::before,.flow-link>a>span { position:absolute; top:0; bottom:0; left:0; right:0; }
.flow-link>a::before { content:''; margin:10px; border:1px solid #fff; }
.flow-link>a>span { margin:auto 50%; width:fit-content; height:fit-content; text-shadow:0px 0px 10px rgba(150, 151, 133, 0.7);}
.flow-link.delivery>a>span { margin-right:auto; }
.flow-link.visits>a>span { margin-left:auto; }
.flow-link>a b { display:block; font-size:1.875em; font-weight:inherit; }

#feed { display:grid; grid-template-columns:repeat(4, 1fr); column-gap: max(2%, (100px / 3)); margin-bottom:15px; }

/*----------------------------------------------------------------------
 aishipRデフォルト
 *----------------------------------------------------------------------*/
#sysAll {
  max-width:100%;
  background-color:transparent;
  padding:0;
}
#sysWrap {
  max-width:1100px;
  margin:160px auto 0;
  padding:0;
  overflow:hidden;
}
#sysHeader { margin:0; padding:0; }
div#sysMain {
  float:none;
  width:100%;
  margin:0 auto;
  padding:0;
}
#sysAside { display:none; float:none; padding:0; }
#sysFooter { margin:min(10%,100px) 0 0; padding:0; color:#fff; background:#757c96; }

#top #sysWrap{
  margin-top:0;
}


.sysContent { padding:0 !important; }
p.indent{ margin:5px 0 !important; text-indent:1em }

.sysFormField{ margin:.5em 0 1em; }
.sysFormField label{ margin-right:20px; font-size:15px; }
.sysFormField a{
  display:inline-block; margin:0 3px; line-height:1.5;
  color:#757c96; border-bottom:1px solid #757c96;
  }
#sysItemCategory select{
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none !important;
  width:100%; padding:3px 5px; }

/**
 * Owl Carousel v2.2.1
 * Copyright 2013-2017 David Deutsch
 * Licensed under  ()
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display:none;
  width:100%;
  -webkit-tap-highlight-color:transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position:relative;
  z-index:1; }
  .owl-carousel .owl-stage {
    position:relative;
    -ms-touch-action:pan-Y;
    -moz-backface-visibility:hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content:".";
    display:block;
    clear:both;
    visibility:hidden;
    line-height:0;
    height:0; }
  .owl-carousel .owl-stage-outer {
    position:relative;
    overflow:hidden;
    /* fix for flashing background */
    -webkit-transform:translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility:hidden;
    -moz-backface-visibility:hidden;
    -ms-backface-visibility:hidden;
    -webkit-transform:translate3d(0, 0, 0);
    -moz-transform:translate3d(0, 0, 0);
    -ms-transform:translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position:relative;
    min-height:1px;
    float:left;
    -webkit-backface-visibility:hidden;
    -webkit-tap-highlight-color:transparent;
    -webkit-touch-callout:none; }
  .owl-carousel .owl-item img {
    display:block;
    width:100%; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor:pointer;
    cursor:hand;
    -webkit-user-select:none;
    -khtml-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none; }
  .owl-carousel.owl-loaded {
    display:block; }
  .owl-carousel.owl-loading {
    opacity:0;
    display:block; }
  .owl-carousel.owl-hidden {
    opacity:0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility:hidden; }
  .owl-carousel.owl-drag .owl-item {
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none; }
  .owl-carousel.owl-grab {
    cursor:move;
    cursor:grab; }
  .owl-carousel.owl-rtl {
    direction:rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float:right; }

/* No Js */
.no-js .owl-carousel {
  display:block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration:1000ms;
  animation-fill-mode:both; }

.owl-carousel .owl-animated-in {
  z-index:0; }

.owl-carousel .owl-animated-out {
  z-index:1; }

.owl-carousel .fadeOut {
  animation-name:fadeOut; }

@keyframes fadeOut {
  0% {
    opacity:1; }
  100% {
    opacity:0; } }

/*
 *  Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition:height 500ms ease-in-out; }

/*
 *  Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity:0;
  transition:opacity 400ms ease; }

.owl-carousel .owl-item img.owl-lazy {
  transform-style:preserve-3d; }

/*
 *  Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position:relative;
  height:100%;
  background:#000; }

.owl-carousel .owl-video-play-icon {
  position:absolute;
  height:80px;
  width:80px;
  left:50%;
  top:50%;
  margin-left:-40px;
  margin-top:-40px;
  /*background:url("owl.video.play.png") no-repeat;*/
  cursor:pointer;
  z-index:1;
  -webkit-backface-visibility:hidden;
  transition:transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform:scale(1.3, 1.3);
      transform:scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display:none; }

.owl-carousel .owl-video-tn {
  opacity:0;
  height:100%;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:contain;
  transition:opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position:relative;
  z-index:1;
  height:100%;
  width:100%; }

.owl-controls {
  margin-top:10px;
  text-align:center;
  -webkit-tap-highlight-color:transparent
}
.owl-controls .owl-nav [class*=owl-] {
  color:#fff;
  font-size:14px;
  margin:5px;
  padding:4px 7px;
  background:#d6d6d6;
  display:inline-block;
  cursor:pointer;
  -webkit-border-radius:3px;
  -moz-border-radius:3px;
  border-radius:3px
}
.owl-controls .owl-nav [class*=owl-]:hover {
  background:#869791;
  color:#fff;
  text-decoration:none
}
.owl-controls .owl-nav .disabled {
  opacity:.5;
  cursor:default
}
.owl-dots{
  text-align:center;
}
.owl-dots .owl-dot {
  display:inline-block;
  zoom:1;
  *display:inline;
  position:relative;
  top:10px;
}
.owl-dots .owl-dot span {
  width:7px;
  height:7px;
  margin:5px;
  background:#c2c7cd;
  display:block;
  -webkit-backface-visibility:visible;
  -webkit-transition:opacity 200ms ease;
  -moz-transition:opacity 200ms ease;
  -ms-transition:opacity 200ms ease;
  -o-transition:opacity 200ms ease;
  transition:opacity 200ms ease;
  -webkit-border-radius:30px;
  -moz-border-radius:30px;
  border-radius:30px
}
.owl-dots .owl-dot.active span, .owl-dots .owl-dot:hover span {
  background:#8595a9;
}
.owl-nav{ display:none;
  margin-top:10px;
  text-align:center;
  -webkit-tap-highlight-color:transparent
}
.owl-nav [class*=owl-] {
  position:absolute;
  top:98%;
  margin-top:-18.5px;
  outline:0;
  width:20px;
  height:37px;
  padding:0;
  text-indent:-9999px;
  z-index:9999;
  border:none;
  border-radius:none;
  cursor:pointer;
}
.owl-nav .owl-prev{
  left:35%;
  background:url(/img/common/controls.png) no-repeat 0 0;
  background-size:40px;
}
.owl-nav .owl-next{
  right:35%;
  background:url(/img/common/controls.png) no-repeat -20px 0;
  background-size:40px;
}
.owl-nav .owl-prev:hover {
  background-position:0 0;
}
.owl-nav .owl-next:hover {
  background-position:-20px 0;
}

/* 検索ボックス */
.search_bx form{
  overflow:hidden;
  border:1px solid #dddddd;
}
.search_bx .sysItemSearchFormWord {
  float:left;
  width:70%;
}
.search_bx input[type="search"] {
  height:40px;
  border:none;
  padding:5px;
  width:100%;
}
.search_bx .sysSearchButton {
  overflow:hidden;
  float:left;
  display:block;
  width:20%;
  height:40px;
  margin:0;
  padding:0;
  text-indent:-999px;
  color:#fff;
  border-radius:0px;
  border:none;
  background:#222222 url(/img/common/ico_search.png) no-repeat center center;
  background-size:70px; cursor:pointer;
}

/* submitボタンの調整 */
#sysMypageReminder #sysMain input[type=submit],
.sysBackButton,
.sysNextSubmit {
  display:block; width:80%; margin:0 auto; padding:10px 15px;
  color:#fff; text-shadow:none; background:#949dbd;
  border-color:transparent; border-radius:5px;
  }

/* 商品パンくず */
.sysItemCategoryPankuzu, .sysCategoryPankuzu, .pankuzu { width:min(100%,1120px); margin:auto; padding:.5em; font-size:.75em; }
.sysItemCategoryPankuzu br, .sysCategoryPankuzu br { display:none; }

/* 商品カテゴリページ */
#sysItemCategory #sysMain { width:min(100%,1120px); margin:auto; }
.sysItemListDisp { font-size: .9em;}
.sysPagination ul li { width: 50px;}
.sysPagination a { line-height: 35px;}
.sysPagination { margin-top: 2em;}
.sysItemCategoryCtl .sysCurrent { background: #949dbd; font-weight: normal;}
.search-cat { float: left; width: 15%; margin-left: 18%;}

.sysFuncItemCategory a {
    line-height:1.75;
}
.sysFuncItemCategory a:hover {
    background:#eee;
}
#sysItemCategory h1.itemCategory{
  margin-left:5px;
  border-left:5px solid #222222;
  padding-left:10px;
  font-size:18px;
  margin:20px 0 10px;
}
.sysSelectionDescription{margin :2px 0 10px;}

/* 4-1-3 Category View Mode */
.sysItemCategoryCtl {
    font-size:small;
    border: none;
    padding: 2.5em 3em;
    background: #f5f5f5;
    margin-bottom: 1em;
}
.sysItemCategoryCtl a {
  display: inline-block;
  padding: 2px 8px;
  background: #757c96;
  color: #fff;
  border-radius: 3px;
  text-decoration: none;
  margin: 2px 0;
}

.sysItemSearchFormWord {
  width: 40%; float: left; margin: 0 0 0 18%;
}
.sysItemSearchFormWord input { height: 42px;}

.sysSearchButton { display: inline-block; position: relative; left: 1%; overflow: hidden; min-width: 20%; padding: 0.4em 3em; margin: 0 0 1.5em !important; font-size: 16px; text-align: center; color: #fff; background: #949dbd; border: none;}

/* PRアイコン設定 */
.sysItemPr {
    font-size:small;
    padding:0 5px;
    background:#fff;
    border:1px solid #666;
    border-radius:3px;
    display:inline-block;
    font-weight:bold;
}
/*PRアイコン(商品詳細ページ)*/
.sysPr span{
        width:24%;
        padding:3px 10px;
        color:#222222;
        font-weight:bold;
        font-size:13px;
        border-radius:15px;
        margin:0 0 5px;
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        text-align:center;
}
span.icon_online, span.icon_kyobashi{
        display:inline-block;
        background:#ff1000;
        border:3px solid #ff1000;
        color:#fff;
}
span.icon_book{
        display:inline-block;
  border:3px solid #ff1000;
        color:#ff1000;
        -webkit-box-sizing:border-box;
        -moz-box-sizing:border-box;
        box-sizing:border-box;
}
span.icon_chilled{
        display:inline-block;
        background:#4472c4;
        border:3px solid #4472c4;
        color:#fff;
        text-indent:0.5em;
        letter-spacing:0.5em;
}

/* カートボタン */
.sysCartButton {
    border:none;
    padding:10px;
    margin:5px 0;
    border-radius:5px;
    background-color:#222222;
    color:#fff;
    cursor:pointer;
}
.sysCartButton:hover {
    background:#999;
}

/* アーカイブリスト */
.sysItemList ul.sysList li .sysThumbnailImage {
    width:40%;
    max-width:200px;
}
/* 4-1-7  商品サムネイル画像 */
.sysItemList ul.sysThumbnail li {
    display:inline-block;
    float:none;
    vertical-align:top;
    letter-spacing:normal;
    display: flex;
    height: 100%;
    width: 100%;
    padding: 0 !important;
    flex-direction: column;
}
.sysItemList ul.sysThumbnail li a { position: relative; display: block; padding-top: 133%;}
.sysItemList ul.sysThumbnail li a img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.sysItemList ul.sysThumbnail {
    letter-spacing:-.4em;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5em 2%;
}
.sysItemList ul.sysThumbnail input {
    width:100%;
    padding:10px 0;
}

.sysItemList ul.sysThumbnail li .sysRetailPrice { margin-top: auto; text-align: right;}
.sysItemList ul.sysThumbnail li .sysRetailPrice span { font-size: .64em;}
.sysItemList ul.sysThumbnail li .sysItemName a {display: block; padding: 1em 0 0.5em; min-height: 3em; text-align: left; }

/* 商品ぺージ */
/* 商品画像 */
.sysThumbnailImage > span,.sysThumbnailImage > br { display:none;}
.sysItemImages{
  max-width:500px;
  padding-right:20px;
}
.sysItemImages .sysImageList li{
    display:inline-block;
    vertical-align:top;
    height:auto;
    width:23%;
    line-height:1;
    float:none;
    margin:1% 0;
}

#sysItemDetail .sysItemImages { max-width: 550px; padding-right:2%;}
.sysItemImages .sysImageList li.sysCurrent img { border-width: 1px;}
#sysItemDetail .item-info { padding-left: 2%;}

/* 商品名 */
.sysItemName h1 { font-size:x-large;}

/* 注文エリア*/
.orderArea {
    letter-spacing:-.4em;
    text-align:center;
}
.orderArea > div {
    width:50%;
    display:inline-block;
    letter-spacing:normal;
    text-align:left;
    vertical-align:top;
}
.orderArea > .orderArea > div {
    width:100%;
    display:block;
}

#sysItemDetail #orderArea { width: min(100%,1120px); margin: auto;}


/* 商品ページのタイトル */
.sysItemName,
.sysExplanation > div > span,
.sysReview > span{
    display:block;
    margin-bottom:0px;/*
    font-size:large;*/
}
/* 商品説明 */
.sysExplanation table {
    width:100%;
    text-align:center;
    border:1px solid #999;
    line-height:2;
}
.sysExplanation thead {
    text-align:center;
    color:#fff;
    background:#999;
}
.sysExplanation td {
    font-size:small;
    text-align:left;
    padding-left:10px;
}

/* 買い物フォーム */
#sysItemDetail .sysRetailPrice { font-weight:bold; margin-bottom: 1.7em !important;}
#sysItemDetail #sysVariation {
     overflow:hidden;
     margin:5px auto;
}
#sysItemDetail #sysVariation >div {
    margin:10px auto;
    overflow:hidden;
}
#sysItemDetail .sysNumArea button {
    display:inline-block;
    width:48%;
    background:#666;
    padding:10px;
    border:1px solid #999;
    border-radius:5px;
    color:#fff;
}
#sysItemDetail .sysNumArea {
    padding-top:5px;
    clear:both;
    text-align:right;
}
#sysWishlist .sysButton,
#sysItemDetail .sysCartButton {
    width:98%;
    margin-left:2%;
}
#sysItemDetail .sysShare { padding:5px 0 0 2%;}
#sysCartInForm { width:100%;}

/* ログインボタン */
.sysLoginButton,
.sysButton {
  margin:5px 0; padding:10px; cursor:pointer;
  color:#484745; background-color:#dfdcd8; border:none; border-radius:5px; }
.sysLoginButton, .sysButton.btn {
  color:#fff; background:#949dbd; }

/* カートボタン */
.sysCart #sysMain .sysNextSubmitArea .sysNextSubmit,
.sysCart #sysMain input[type=submit],
.sysCart #sysMain button[type=submit],
.sysCart #sysMain button {
    background:#666;
    color:#fff;
    text-shadow:none;
}
.sysCartInDone{ margin:0;}

/* フォームページの基本レイアウト*/
#sysFormIndex #sysMain,
#sysFormConfirm #sysMain,
#sysFormThanks #sysMain,
.sysMemberRegister #sysMain,
.sysMypage #sysMain{
            width:1100px;
            border:1px solid #eee;
            padding:20px 150px !important;
            margin:30px auto;
}
#sysDestination #sysMain{
           width:1100px;
            border:1px solid #eee;
            padding:20px 150px !important;
            margin:30px auto;
}
#sysFormConfirm label, #sysMemberRegisterConfirm label{
  display:block;
  margin:15px 0 5px!important;
}
#sysFormConfirm .sysFormField #sysMemberRegisterConfirm .sysFormField{
  margin:10px 0 20px !important;
}
#sysFormConfirm button.sysButton{
  width:49%;
  float:left;
  margin:0;
  margin-right:1%;
  margin-top:30px;
  height:50px;
  border-radius:3px;
  background:#ccc;
  color:#444;
}
#sysFormConfirm .sysNextSubmit{
  width:49%;
  margin:0;
  margin-top:50px;
  margin-left:1%;
}
#sysMemberRegisterConfirm .sysNextSubmit{
        width:49%;
  margin:0;
  margin-top:20px;
  margin-right:1%;
        float:left;
}
#sysMemberRegisterConfirm .sysBackButton{
        width:49%;
  float:left;
  margin:0;
  margin-left:1%;
  margin-top:0px;
  height:50px;
  border-radius:3px;
  background:#ccc;
  color:#444;
}
#sysFormThanks .completeText{
  margin:20px 0;
  text-align:center;
  font-size:15px;
}
#sysFormThanks .completeText a{
  color:#068acc;
  text-decoration:underline;
}
#sysMemberRegisterRegister #sysMain h2,
#sysMemberRegisterConfirm #sysMain h2,
#sysMemberRegisterIndex #sysMain h2,
#sysFormThanks #sysMain h2,
#sysFormConfirm #sysMain h2,
#sysFormIndex #sysMain h2 {display:none;}
#sysFormIndex #sysMain input {font-size:15px;}

#sysFormIndex .txtBlock{text-align:center;}
#sysMemberRegisterConfirm  #sysMain > form,
#sysMemberRegisterIndex #sysMain > form,
#sysFormConfirm #sysMain > form,
#sysFormIndex #sysMain > form { padding:10px;}

#sysMypageReminder #sysMain input[type="text"],
#sysMemberRegisterIndex #sysMain input[type="text"],
#sysFormIndex #sysMain input[type="text"],
#sysFormIndex #sysMain textarea {
  margin-bottom:2em; background:#fff;
  }
#sysMemberRegisterIndex #sysMain input[type="tel"],
#sysMemberRegisterIndex #sysMain input[type="email"] ,
#sysMemberRegisterIndex #sysMain input[type="password"] {
  margin-bottom:2em; background:#fff;
  }

#sysMain .sysFormLabel { display:block; position:relative; }
#sysMain .sysFormLabel::before {
  content:""; position:absolute; top:50%; left:-.5em; z-index:-1;
  width:2.2em; height:2.2em; background:#dee0ea; border-radius:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%); }

#sysMain .sysRequired{display:inline-block; font-size:.85em; }
#sysMain textarea { min-height:75px;}
.sysZipcode button,
.sysZipcode .sysFormField { display:inline-block;}
.sysZipcode .sysFormLabel { display:block;}
.sysZipcode .sysFormField { width:200px;}
.sysZipcode br{ display:none;}
.sysBirthday input { width:auto!important;}

.sysAcceptMailmagazine { display:none; }

/* フォーム確認ぺージ */
#sysMypageEditConfirm #sysMain .sysFormField,
#sysMemberRegisterConfirm #sysMain .sysFormField,
#sysFormConfirm #sysMain .sysFormField {
    border:1px solid #999;
    line-height:2;
    padding-left:10px;
    font-size:small;
    border-radius:3px;
    margin:5px auto;
    min-height:20px;
}

/* マイページ */
.sysMypageMajorHeadLine{display:none;}
.SysMypageMinorHeadLine{
        font-size:18px;
  border-left:5px solid #3d3d3d;
  padding-left:5px;
  margin:20px 0;
}
#sysMypageLogin .sysMypageMinorHeadLine{display:none;}

/* 購入履歴 */
.sysOrderList {
    border:1px solid rgb(212,212,212);
    padding:10px;
    max-height:400px;
    overflow-y:scroll;
}
.sysOrderList li {
    border-bottom:1px dotted rgb(212,212,212);
    margin-bottom:5px;
    padding-bottom:5px;
}

/* Member Profile Editor */
#sysMypageEditDelivery #sysMain > form,
#sysMypageEditMember #sysMain > form{ padding:10px;}
#sysMypageEditDelivery #sysMain input,
#sysMypageEditMember #sysMain input {
    line-height:15px;
    padding:5px;
    font-size:small;
    margin:5px auto;
}

#sysMypageEditConfirm #sysMain > form { padding:10px;}

/* Special Point */
.sysSpecialPoint {
    overflow:hidden;
    letter-spacing:-.4em;
}
.sysSpecialPoint > div:nth-child(2n) {
    width:60%;
}
.sysSpecialPoint > div {
    display:inline-block;
    letter-spacing:normal;
    padding:5px 10px;
    border-bottom:1px solid #d5d5d5;
}
.sysSpecialPoint > div:nth-child(2n+1) {
    width:40%;
}

/* 4-5-4 Coupon List */
.sysCoupon {
    border:1px solid #d5d5d5;
    margin:10px;
}

/* マイページ（複数配送先編集画面）*/
.sysSelectAddress{background:none;}
.sysSelectAddress a {
    display:block;
    text-decoration:none;
    border:0px solid;
    padding:10px;
}

.sysSelectAddress {
    margin:10px 0;
}

.sysSelectAddress a:hover {
    background:#eee;
}

/***********************************
  商品詳細ページ
***********************************/
/*商品名*/
#sysItemDetail .sysItemName h1{
  font-size:24px;
  font-weight:normal;
  padding-bottom:10px;
  margin-bottom:10px;
  border-bottom:1px solid #757c96;
}
/*商品番号*/
#sysItemDetail .sysItemId { font-size:.85em; color:#757c96 }
/*価格表示*/
#sysItemDetail .sysRetailPrice {
  display:inline-block;
  width:100%;
  margin-bottom:5px;
  color:#000;
  font-weight:bold;
  text-align:right;
}
#sysItemDetail .sysRetailPrice span {
  font-size:.6em;
}
#sysItemDetail .sysRetailPrice span.sysRetailPriceValue {
  font-size:1.5em; letter-spacing: 1px; 
  font-weight:normal;
}
/*通常価格*/
#sysItemDetail .sysSuggestedRetailPrice {
  margin-bottom:5px;
  text-align:right;
}
#sysItemDetail .sysSuggestedRetailPrice span {
  font-size:1.1rem;
}
/*送料区分*/
#sysItemDetail .sysShippingCost {
  display:inline-block;
  width:auto;
  margin-left:auto;
  margin-top:5px;
  padding:0 5px;
  color:#da4636;
  font-weight:bold;
  font-size:1.1rem;
  border:1px solid #da4636;
  border-radius:3px;
}
/*PRアイコン(カテゴリーページ)*/
#sysItemCategory input[type=submit]{margin-top:0px;}
.sysAddSelection div{margin-bottom:10px;}
.sysAddSelection { clear:both;}
.sysAddSelection input, .sysAddSelection select{margin:5px 0;}
.sysItemPrArea{margin-top:5px;}
.sysItemPrArea span{
        width:49%;
        height:30px;
        display:inline-block;
        padding:3px 0px;
        font-size:18px;
        line-height:18px;
        border-radius:20px;
        font-weight:bold;
        margin:0 0 5px;
        text-align:center;
}

#sysItemDetail .sysForm select {
  position: relative; display: block; width: 100%; max-width: 100%; min-width: auto; font-size: 1em; appearance: none; border: 1px solid #ddd; border-radius: 3px; height: 44px; padding: 5px 1em !important; background-color: #fff; background-image: url(/img/common/icon-arrow-down.svg); background-position: right 20px center; background-repeat: no-repeat; background-size: 15px;
}
#sysItemDetail .sysForm select[name="num"]{
        max-width:100px; margin-left: auto; display: inline;
}
#sysItemDetail .sysNumArea { display: none;}
#sysItemDetail .sysForm input[type="text"]{margin-top:5px;}
#sysSelections div{margin-bottom:10px;}
#sysItemDetail .sysSelections{ line-height:30px;}
#sysItemDetail #sysVariation {
  width:100%;
  max-width:500px;
  overflow:hidden;
  margin-left:auto;
}
#sysItemDetail #sysVariation >div {
  margin:10px auto;
  overflow:hidden;
}
#sysItemDetail .sysNumArea button {
  display:inline-block;
  width:48%;
  background:#000;
  padding:10px;
  border:1px solid #999;
  border-radius:5px;
  color:#fff;
}
#sysItemDetail .sysNumArea {
  padding-top:5px;
  clear:both;
  text-align:right;
}
#sysWishlist .sysButton, #sysItemDetail .sysCartButton {
  width:98%;
  margin-left:2%;
}
#sysItemDetail .sysShare {
  padding:5px 0 0 2%;
}
#sysCartInForm {
  width:100%;
  margin-left:auto;
}
/*バリエーション*/
#sysItemDetail .sysFormVariationName {
  background-color:#fdf5f5;
}
#sysItemDetail .sysFormVariationTable {
  width:100%;
  max-width:500px;
}
/*下部フォーム*/
#sysItemDetail .order_bottom {
  margin:0 auto 40px;
  text-align:right;
}
/*簡易商品説明*/
#sysItemDetail .sysDescription {
  text-align:left;
}
/*商品詳細*/
.sysExplanation {
  text-align:center;
}
.sysExplanation img {
  height:auto;
}
#sysItemDetail .itempage_cap{
  margin-bottom:30px;
  font-size:12px;
}
#sysItemDetail .itempage_cap .i_ttl{
  margin-bottom:20px;
  font-size:120%;
  font-weight:bold;
}
#sysItemDetail .itempage_detail h3{
  font-size:18px;
  font-weight:normal;
}
#sysItemDetail .itempage_detail table{
  width:100%;
  margin-bottom:10px;
  border-top:1px solid #ccc;
}
#sysItemDetail .itempage_detail table tr {
    border-bottom:1px solid #ccc;
}
#sysItemDetail .itempage_detail table th,
#sysItemDetail .itempage_detail table td {
    padding:10px;
  font-size:12px;
  line-height:1.6;
    text-align:center;
}
#sysItemDetail .itempage_detail table th{
  width:30%;
    border-right:1px solid #ccc;
}
#sysItemDetail .itempage_detail table td{
  width:70%;
  text-align:left;
    background:#fff;
}
#sysItemDetail .itempage_detail_ttl{
  position:relative;
  margin-top:40px;
  padding:5px 0;
  font-weight:bold;
  font-size:18px;
}
#sysItemDetail .itempage_detail_ttl:after{
  content:"　";
  display:block;
  position:absolute;
  bottom:0;
  left:50%;
  margin-left:-30px;
  width:60px;
  height:2px;
  background-color:#000;
}

#sysItemDetail .sysMainImage img{
  border:1px solid #ccc;
}

/* 詳細入力フォーム */
#sysItemDetail .item-form { margin: 3em auto 0; width: min(100%,1120px);}

/* カレンダー*/
#sysItemDetail #sysCartInForm { gap: 0 4%; display: grid; grid-template-columns: repeat(2,48%);}
#sysItemDetail #sysCartInForm .sysRentalSchedules { grid-column: 1 / 2;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalStartDate { padding: 0.7em 1em; font-size: .9em; line-height: 1.4; background: #757c96; color: #fff;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalSchedulesCalendar tbody { background: #fff;}
.sysRentalSchedulesCalendar th { min-width: 33px;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalSchedulesCalendarArea { background: #f7f7f7; padding: 2em;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalSchedulesCalendars { margin: auto; width: 100%;}
.sysRentalScheduleInfo { margin-top: 1.5em;}
.sysRentalSendDay,.sysRentalReachDay,.sysRentalUseDays,.sysRentalReturnDay { border-bottom: 1px solid #d2d2d2; border-left: 1px solid #d2d2d2; border-right: 1px solid #d2d2d2;}
.sysRentalSendDay { border-top: solid 1px #d2d2d2;}
.sysRentalScheduleInfo > div > span:nth-child(1) { background: #dfdae4;}
.sysRentalUseItemName { background: #988fa4 !important; color: #fff;}
.sysRentalScheduleInfo > div > span { padding: .5em 1em; display: table-cell; width: 55%;}
.sysRentalScheduleNotice { margin-top: .3em;}

/* 情報入力欄 */
#sysItemDetail .sysSelections { grid-column: 2 / 2;}

/*数量増減*/
#sysItemDetail #sysNumber{ grid-column: 2 / 2; text-align: right;}
#sysItemDetail #sysSubtotal { grid-column: 2 / 2; margin-block: .5em;}
#sysItemDetail #sysSubtotal span.sysSubtotalPrice { font-size: 1.3em;}
#sysItemDetail .sysNumArea {
  margin-bottom:20px;
}
#sysItemDetail .sysNumArea button {
  overflow:hidden;
  display:inline-block;
  width:25%;
  padding:10px;
  text-indent:-999px;
  border:1px solid #b9b9b9;
  border-radius:5px;
  background:#f1f1f1;
  cursor:pointer;
}
#sysItemDetail .sysNumArea button:hover {
  background-color:#efefef;
}
#sysItemDetail .sysNumArea .sysBtnPlus {
  border-color:#b9b9b9;
  background:url(/img/layout/system/btn_plus.png) center center no-repeat;
  background-size:65px;
  width:37%;
}
#sysItemDetail .sysNumArea .sysBtnMinus {
  border-color:#b9b9b9;
  background:url(/img/layout/system/btn_minus.png) center center no-repeat;
  background-size:90px;
  width:37%;
}
/*カートに入れる*/
#sysItemDetail .sysCartButton {
  padding:23px 15px !important;
  text-indent:-999px;
  background:#455274 url(/img/layout/system/btn_cart.png) center center no-repeat;
  background-size:140px;
}
#sysItemDetail .sysCartButton:hover {
  opacity:0.8;
}
#sysItemDetail .sysGoCartButton {
  background:#8D4C4C url(/img/layout/system/btn_cart2.png) center center no-repeat;
  background-size:127px;
}

#sysItemDetail #sysSubmit { grid-column: 2/2;}
#sysItemDetail #sysWishlist { grid-column: 2/2;}
/*お気に入り*/
#sysItemDetail #sysWishlist .sysButton {
  overflow:hidden;
  text-indent:-999px;
  border:1px solid #b9b9b9;
  background:#fff url(/img/layout/system/btn_favo.png) center center no-repeat;
  background-size:100px;
}
#sysItemDetail #sysWishlist .sysButton:hover {
  background-color:#efefef;
}
.modaal-container {
    max-width:750px !important;
    padding:30px 8%;
    box-shadow:none !important;
    color:#333 !important;
}
.sysWishListButton{
  background:#ddd;
    border:1px solid #999;
    border-radius:3px;
    text-decoration:none;
}
/* お気に入り登録時の画面 */
/* バツボタン */
.modaal-close{
  width:50px;
    height:50px;
    width:22px !important;
    height:22px !important;
    position:absolute !important;
    right:15px !important;
    top:15px !important;
    border-radius:0 !important;
    border:1px solid #da4636!important;
    background-color:#fff !important;
}
.modaal-close:after, .modaal-close:before {
    display:block;
    content:" ";
    position:absolute;
    top:0.3px!important;
    left:8px!important;
    width:4px;
    height:22px;
    border-radius:4px;
    background:#da4636!important;
    -webkit-transition:background .2s ease-in-out;
    transition:background .2s ease-in-out;
}
@media (min-width:1024px)
.modaal-close {
    width:44px !important;
    height:44px !important;
    right:30px !important;
    top:30px !important;
}
button, input, optgroup, select, textarea {
    font:inherit;
}

/*sns*/
.fb_iframe_widget 

/* サンプルイメージ */
.mdl-dialog__image::before {
    content:"お気に入り登録完了";
    margin-bottom:15px;
    display:block;
    text-align:center;
    font-size:1.3rem;
}
.mdl-dialog__image {
    width:88.81%;
    max-width:250px;
    margin:auto;
}
.massage{
  text-align:center;
}
/* ログインボタン */
.sysWishlistLoginButton{
  width:167px;
    /* height:35px; */
    line-height:35px;
    position:relative;
    background-color:#da4636;
    text-align:center;
    font-size:1.3rem;
    transition:.2s;
    color:#fff;
}
.sysWishlistLoginGroup {
    margin:auto auto 30px!important;
    text-align:center;
}

:after, :before {
    text-decoration:inherit;
    vertical-align:inherit;
    background-repeat:no-repeat;
    box-sizing:inherit;
}
@media (min-width:1024px)
.mdl-dialog__content {
    padding:0 0 30px !important;
    font-size:1.6rem !important;
}
/* 会員登録ボタン */
.sysWishlistMemberRegisterGroup::before {
    content:"会員登録をされていないお客様はこちら";
    margin-top:12px;
    display:block;
    font-size:1.1rem;
    text-align:center;
}
.sysWishlistMemberRegisterGroup {
    width:80%;
    text-align:center;
    height:92px;
    border:1px solid #bbb;
    position:relative;
    background-color:#fff;
    margin:auto auto 30px!important;
}
.sysWishlistMemberRegistButton{
  width:167px;
    /* height:35px; */
    line-height:35px;
    position:relative;
    background-color:#da4636;
    text-align:center;
    font-size:1.3rem;
    transition:.2s;
    color:#fff;
}
/* この画面を閉じるボタン */
.sysWishlistCloseBottomButtonGroup button {
    border-bottom:1px solid #da4636;
    transition:.2s;
    background-color:transparent;
    border-radius:0px;
}
.sysWishlistCloseBottomButtonGroup {
    margin-top:30px;
    text-align:right;
    font-size:1.3rem;
}

/*SNSボタン*/
#sysItemDetail .sysShare {
  padding:5px 0 0 2%;
  text-align:right;
  grid-column: 2/2;
}
#sysItemDetail .sysShare .sysFacebook {
  position:relative;
}
#sysItemDetail .sysShare .sysGoogleplus {
  width:58px;
}
#sysItemDetail .sysShare .sysLine, #sysItemDetail .sysShare .sysDisplayPcNone {
  display:inline-block !important;
}
#sysItemDetail .sysShare .sysLine {
  position:relative;
  top:0px;
}
/*.sysReview*/
#sysItemDetail .sysReview {
  margin:20px 0 40px;
}

/*テーブルデザイン*/
.sysExplanation table{
  margin-bottom:40px;
  border:none;
  border-top:1px solid #ccc;
}
.sysExplanation table tr{
  border-bottom:1px solid #ccc;
}
.sysExplanation table th,
.sysExplanation table td{
  padding:3px 10px;
  text-align:center;
  border:none;
}
/*商品ページ用おすすめ商品*/
.sysItemBlock { margin:0 auto min(12vw, 60px); width:min(94%, 1300px); }
.itempage_recommend .sysItemBlock .sysHorizontal li{
  width:25%;
  padding:0 10px;
}
.itempage_recommend .sysItemName{
  margin-bottom:0;
  font-size:14px;
  text-align:left;
}
.itempage_recommend .sysItemPrice{
  text-align:left;
}
/*商品ページ成分表*/
#sysItemDetail .show_bx{
  margin-bottom:30px;
}
#sysItemDetail .show_bx_inner{
  margin-bottom:10px;
}
#sysItemDetail .btn_tr{
  padding:10px 0 10px 35px !important;
  background:#e4e4e4 url(/img/layout/system/ico_plus.png) 10px center no-repeat !important;
  background-size:18px !important;
  cursor:pointer;
}
#sysItemDetail .active{
  background:#e4e4e4 url(/img/layout/system/ico_minus.png) 10px center no-repeat !important;
  background-size:18px !important;
}
#sysItemDetail .contents_tr{
  background-color:#f5f5f5;
}
#sysItemDetail .contents_tr td{
  background-color:#f5f5f5 !important;
}
#sysItemDetail .contents_tr table{
  margin-bottom:0;
}

/*レンタルアイテム一覧*/
.rental_items { margin-top: clamp(40px,8vw,80px); padding-block: clamp(40px,8vw,80px);}
.rental_items .inner { width: min(100%,1120px); margin: auto;}
.rental_items .rental_wrap { gap: 2em; padding-top: .8em;}
.rental_items .img_box { padding-top: 7%;}
.rental_items .list_box { flex: 1;}
.list_rental { display: grid; grid-template-columns: repeat(5,1fr); gap: 2em .8em;}
.list_rental li { position: relative; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 5px;}
.list_rental li .list_rental_ttl { position: absolute; width: 100%; top: 0; left: 50%; transform: translateY(-50%) translateX(-50%); font-size: 13px; color: #fff; text-align: center; border-radius: 13px; background: #e3889e;}
.list_rental li img { max-height: 60%; max-width: 70%;}
.list_rental li.mini img { max-width: 60%; }
.rental_items .rental_wrap .remark { margin-top: 1em;}

/*商品詳細ご利用ガイド*/
.inner_narrow2 { max-width: 700px; margin-inline: auto;}
.rental_items_guid {margin-top: clamp(40px,8vw,80px);}
.rental_items_guid section + section { margin-top: clamp(60px,10vw,100px);}
.item_box { margin-top: 1.3em;}
.item_box .item_ttl { padding: .3em 0; font-size: 1.125em; color: #fff; background: #757c96;}
.item_box .item_con { padding: 1em; background: #f6f5f4;}

.rental_period .em_txt { padding-bottom: .3em; margin-bottom: 1em; text-align: center; color: #c63e3e; font-size: 1.5em; border-bottom: solid 1px #d0d4e4;}
.rental_period .em_txt .small { font-size: .6em;}

.sec_txt { margin-bottom: 1.3em;}

.day_flow { padding-top: 2.5em; display: grid; grid-template-columns: repeat(4,1fr);}
.day_flow li { position: relative;}
.day_flow li .sankaku { position: relative; overflow-y: clip; display: flex; gap: .1em; height: 100%; align-items: center; justify-content: center; flex-direction: column; padding: 1em; font-size: 1.125em; text-align: center;}
.day_flow li .sankaku::before { position: absolute; content: ""; display: block; border-top: 60px solid transparent; border-bottom: 60px solid transparent; border-left: 1.5vw solid #e1e3ec; top: 50%; transform: translateY(-50%); right: -1.4vw; z-index: 10;}
.day_flow li .small { font-size: .7em; line-height: 1.5;}
.day_flow li .date { position: absolute; top: -2.6em; left: 50%; transform: translateX(-50%); color: #757c96; font-size: .875em;}
.day_flow li .date .num { font-size: 1.57em;}
.day_flow li.use { color: #fff;}

.day_flow li:nth-child(1) { background: #e1e3ec;}
.day_flow li:nth-child(1) .sankaku::before { border-left-color: #e1e3ec;}
.day_flow li:nth-child(2) { background: #d0d4e4;}
.day_flow li:nth-child(2) .sankaku::before { border-left-color: #d0d4e4;}
.day_flow li:nth-child(3) { background: #757c96;}
.day_flow li:nth-child(3) .sankaku::before { border-left-color: #757c96;}
.day_flow li:nth-child(4) { background: #e1e3ec;}
.day_flow li:nth-child(4) .sankaku::before { content: none;}

.flow_list { counter-reset: number 0;}
.flow_list li { position: relative; padding: 1.5em 1em 1.5em 6.6em; background: #dadfe4;}
.flow_list li .step_wrap { position: absolute; left: 0; top: 0; height: 100%;}
.flow_list li .box_arrow { position: relative; display: flex; align-items: center; height: 100%; margin-right: 2em; padding: 1.2em 1em 1.5em 1em; background: #6c788c; color: #fff; font-size: .7em;}
.flow_list li .box_arrow .step { position: relative; top: -1em;}
.flow_list li .box_arrow::before { position: absolute; counter-increment: number 1; content: counter(number); left: 50%; top: 50%; transform: translateX(-50%) translateY(calc(-50% + .5em)); font-size: 1.6em;}
.flow_list > li:not(:last-child) { margin-bottom: 3.2em;}
.flow_list > li:not(:last-child)::before { content: ""; position: absolute; left: 50%; transform: translateX(-50%) translateY(-50%); bottom: calc(-2.4em); border-top: 0.8em solid #6c788c; border-right: 1em solid transparent; border-left: 1em solid transparent;}
.flow_list li .box_arrow::after { position: absolute; content: ""; top: 0; right: -20px; clip-path: polygon(0 0, 0 100%, 100% 50%); background-color: #6c788c; height: 100%; width: 20px;}

/***********************************
  カートページ
***********************************/
/*カートページ内レイアウト調整*/
.sysCart .header_h1_under,
.sysOpcBody .header_h1_under{
  float:none;
  padding:10px 0;
  width:100%;
  height:auto;
  background-color:#fff;
}
.sysCart .header_h1_under a,
.sysOpcBody .header_h1_under a{
  display:block;
  width:160px;
  margin:0 auto;
}
.sysCart .header_h1_under .logo img,
.sysOpcBody .header_h1_under .logo img{
  float:none;
  margin-right:0;
}
.sysCart .header_h1_under .head_title,
.sysOpcBody .header_h1_under .head_title{
  text-align:center;
}
.sysCart .header_wrap {
    border-bottom:none;
    height:auto;
    position:inherit;
}
.sysCart #sysWrap {
    margin:0 auto;
}
.sysCart #sysMain,
.sysOpcBody #sysMain{
  max-width:1100px;
  border:1px solid #eee;
  padding:20px 150px;
  margin:0 auto;
}


.sysCart #sysMain, .sysCart #sysMain a {
  color:#000;
}
.sysCart .sysBox, .sysCart .sysSelectPaymentArea,
.sysCart .sysSelectDeliveryArea, .sysCart .sysRemarksArea,
.sysCart .sysSelectOptionArea, .sysCart .sysDetail,
.sysCart .sysOrder .nav,
.sysCart .sysAcceptDomainArea,
.sysCart .sysRepeatOrderSetting {
  background-color:#ffffff;
  border:1px solid #cfcfcf;
  border-radius:0;
  box-shadow:none;
  margin:1em auto 2em;
  padding:1em;
}
.sysCart .sysBox hr {
  display:block;
  border:0;
  height:0;
  border-bottom:1px solid #cfcfcf;
  margin:5px 0;
  padding:0;
}
.sysCart #sysMain input[type="text"],
.sysCart #sysMain input[type="password"],
.sysCart #sysMain input[type="email"],
.sysCart #sysMain input[type="number"],
.sysCart #sysMain input[type="tel"],
.sysCart #sysMain input[type="search"],
.sysCart #sysMain textarea {
  background:none;
  border-radius:0;
  border:1px solid #dddddd;
}
.sysCart .sysTotalTxt {
  text-shadow:none;
}
.sysTotal .sysTotalTxt .sysCartAttention {
  font-size:2rem;
}
.sysCart .sysSubTotalArea {
  margin:10px 0;
}
.sysCart .sysNextSubmitArea {
  margin-bottom:20px;
}
.sysCart #sysMain .sysNextSubmitArea .sysNextSubmit {
  width:100%;
  padding:10px;
  margin:5px 0;
  color:#fff;
  font-weight:bold;
  text-shadow:none;
  border-radius:5px;
  background:#8D4C4C !important;
  border:none;
}
.sysCart .sysCartAttention, .sysCart .sysRequired {
  color:#da4636;
  font-weight:bolder;
}
.sysCart .sysGetPoint {
  color:#da4636;
  font-weight:bolder;
}
.sysCart .sysCartNote {
  color:#000;
  font-size:90%;
}
.sysCart .sysCartTitle {
  color:#000;
  font-size:large;
  font-weight:bolder;
  background-color:#fff;
  padding:0;
  margin-bottom:2-px;
}
.sysCart .sysCartTitle span {
  font-size:1.2rem;
}
.sysCart #sysMain input {
  background:#fff !important;
}
.sysCart #sysMain input[type="submit"], .sysCart #sysMain button[type="submit"], .sysCart #sysMain button {
  display:inline-block;
  padding:10px;
  width:auto;
  height:auto;
  color:#000;
  background:#fff;
  border-radius:none;
  border:1px solid #999;
  text-overflow:ellipsis;
  overflow:hidden;
  white-space:nowrap;
}
.sysCart .sysDeleteArea, .sysCart .sysConfirmButton {
  text-align:right;
}
.sysCart .sysNavImg {
  text-align:center;
         margin-top:10px;
  margin-bottom:20px;
}
.sysCart .sysFreeArea {
  color:#000;
  margin:20px 0;
}
.sysSelectPayment li:last-child,
.sysSelectDelivery li:last-child,
.sysSelectOption li:last-child,
.sysCart .sysDetail li:last-child,
.sysRemarks, .sysCart .sysOrder .nav li:last-child {
  border-bottom:none;
}
.sysCart .sysAcceptDomainArea input {
  padding:0 10px!important;
}
.sysCart .cart_btn {
  color:#000;
  text-align:center;
  margin-top:40px;
}
.sysCart .cart_btn p {
  margin:0;
  padding:0;
}
.sysCart .cart_btn .btn {
  margin-top:5px;
}
.sysCart .cart_btn img {
  width:200px;
  border:1px solid #d0d0d0;
}
#sysBasket #sysMain {
  padding-top:10px;
}
.sysCart .cart_info .sysContent {
  max-width:300px;
  color:#000;
  text-align:center;
  font-weight:bolder;
  font-size:13px;
  border:1px solid #d0d0d0;
  border-radius:5px;
  margin:1em auto 0 auto;
  padding:10px;
  background-color:#fff;
}

.sysCart #sysMain .sysConfirmButton input[type="submit"] {
  width:auto;
}
.sysCart #sysMain select {
  display:inline-block;
}
.sysCart .sysBtnChange {
  margin-bottom:10px !important;
}
/*登録せずに購入*/
#sysBillingAddress .input-append input[type="text"] {
  display:inline-block;
}
/*都道府県*/
#sysBillingAddress .sysPrefState select {
  width:200px;
}
/*性別*/
#sysBillingAddress .sysGender {
  margin-bottom:20px;
}
#sysBillingAddress .sysGender input {
  vertical-align:middle;
}
#sysBillingAddress .sysGender label {
  display:inline-block;
  margin-right:20px;
}
/*メルマガ*/
#sysBillingAddress .sysAcceptMailmagazine {
  margin-bottom:20px;
}
/*注文完了ページ*/
.cart_completion {
  text-align:center;
}
/*ご注文番号*/
#sysThanks #sysMain .sysOrderNumber {
  font-size:1.5rem;
  font-weight:bold;
}
/*お買い物を続ける*/
body#sysBasket .sysBackButton2 {
  font-weight:bold;
  background:#b4f4ff !important;
  border-color:#000 !important;
}


/***********************************
  ワンページカート
***********************************/
.mdl_btn_.opcDialog, form.opcUseAmazon{
  width:100%;
  padding-right:0;
}
.sysCart #sysMain h3{
  font-size:20px;
}
.sysCart #sysMain #show-dlg-1,
.sysCart #sysMain #show-dlg-1_low,
.sysCart #sysMain .sysOpcNextSubmit,
.sysCart #sysMain .sysNextSubmit{
  display:block;
  width:100% !important;
  padding:15px 10px !important;
  margin:5px 0 !important;
  color:#fff !important;
  font-size:1.2rem;
  line-height:1;
  font-weight:bold;
  text-shadow:none;
  box-shadow:none;
  border:none !important;
  border-radius:5px;
  background:#da4636 !important;
}
.sysCart #sysMain #show-dlg-2,
.sysCart #sysMain #show-dlg-3{
  display:block;
  width:100% !important;
  padding:10px;
  margin:0 0 30px !important;
  color:#fff !important;
  font-size:1.2rem;
  line-height:1;
  text-shadow:none;
  box-shadow:none;
  border:none !important;
  border-radius:5px;
  background:#000 !important;
}
.sysCart #sysMain #show-dlg-3{
  color:#fff !important;
  background:#da4636 !important;
}
.sysCart #sysMain .next_btn{
  color:#fff !important;
  font-size:1rem;
  line-height:1;
  border:none !important;
  background:#000 !important;
}
.sysCart #sysMain #order_price_confirm_btn{
  color:#fff !important;
  width:100% !important;
  box-shadow:none;
  background:#000 !important;
}
.sysCart #sysMain .mdl-js-button{
  box-shadow:none;
}
.sysCart #sysMain #change-to-billAddr,
.sysCart #sysMain #show-dlg-addrList,
.sysCart #sysMain #show-dlg-inputAddr{
  line-height:1;
  border:none !important;
  background:#000 !important;
}
.sysCart #sysMain p.user_type{
  font-size:1.2rem;
}
.sysOpcProduct .sysOpcItemName{
  font-size:1.2rem;
}

/*情報入力ページ調整*/
.sysOpcBody div#sysWrap {
  margin:0 auto;
}
.sysOpcBody div#sysMain {
  padding:3em 200px 0;
  margin-bottom:60px;
}
.sysOpcBody .header_wrap {
  height:auto;
  position:static;
  border-bottom:none;
}
.sysOpcBody .header_h1_under a {
  pointer-events:none;
}
.sysOpcBody .footer .f_gnav_all {
  display:none;
}
input[type="button"],
select {
  box-sizing:border-box;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  -webkit-appearance:none;
}
select {
  padding:0 .5em;
}
.sysOpcBody img {
  max-width:100%;
}
.opcCommonInputText,
.opcCommonInputSelect,
.opcCommonInputRadio,
.opcCommonInputCheckbox {
  margin-left:0 !important;
}
.opcCommonEditModeBlock {
  background:#fff !important;
  padding:20px;
}
.opcOrderSummaryTitle,
.opcBillingAddressTitle,
.opcDeliveryAddressTitle,
.opcItemTitle,
.opcPaymentMethodTitle {
  font-size:large !important;
  margin-bottom:0.5em;
}
.opcItem{
    padding:3%;
    border:1px solid #9b9b9b;
    margin-top:10px
}
.opcCommonInputSelect,
.opcCommonButton {
  /*width:100px !important;*/
  background:#fff !important;
}
.opcCommonInputSelect {
  background:#f1f1f1 !important;
}
.opcBillingAddress_completeButton_edit,
.opcDeliveryMethod_completeButton_edit,
.opcPaymentMethod_completeButton_edit,
.opcItem_completeButton_edit,
.opcDeliveryAddress_completeButton_edit,
.opcPointAndCouponDialog_applyButton_edit,
.opcRemarks_completeButton_edit {
  background:#8D4C4C !important;
  border:1px solid #8D4C4C !important;
  color:#fff !important;
  font-weight:bold;
}
.opcConfirm_inputStatus {
  display:block !important;
  width:700px !important;
  margin:0 auto 1em;
  background:#da4636 !important;
  color:#fff !important;
  border:1px solid #da4636 !important;
  font-weight:bold;
}
.opcConfirm_inputStatus_disable {
  display:block !important;
  width:700px !important;
  margin:0 auto 1em;
  background:#ccc !important;
  color:#000 !important;
}
.opcConfirm_order {
  display:block !important;
  width:700px !important;
  margin:0 auto;
  background:#8D4C4C !important;
  color:#fff !important;
  border:1px solid #8D4C4C !important;
  font-weight:bold;
}
.opcConfirm_order_disable {
  display:block !important;
  width:700px !important;
  margin:0 auto;
  background:#ccc !important;
  color:#000 !important;
}
.opcItem_increaseNumButton_edit,
.opcItem_decreaseNumButton_edit {
  width:30px !important;
  background:#f1f1f1 !important;
}
.opcCommonButtonGroup {
  margin-top:1em;
}
.opcBillingAddress_genderMaleAndLabelGroup_edit,
.opcBillingAddress_genderFemaleAndLabelGroup_edit {
  width:15% !important;
}
.opcBillingAddress_acceptMailmagazineYesLabel_edit {
  margin-top:1em;
  display:inline-block;
}
.opcOrderSummary_totalPriceAndLabelGroup {
  padding-bottom:10px !important;
}
.opcCommonEditLabel {
  margin-top:1em;
  border-left:0px;
}
.opcOrderSummary_priceBreakDownGroup {
  padding-top:1em;
  padding-bottom:1em;
}
.opcOrderSummary_feeAndLabelGroup,
.opcOrderSummary_usePointPriceAndLabelGroup {
  padding-bottom:1em;
  margin-bottom:1em;
}
.opcBillingAddress_prefState_edit {
  margin:5px 0;
}
.opcBillingAddressButtonGroup_edit,
.opcDeliveryAddress_buttonGroup,
.opcDeliveryMethod_buttonGroup_edit {
  padding:1em 0;
}
.opcDeliveryMethod_hopeDeliveryDateAndLabelGroup_edit,
.opcDeliveryMethod_hopeDeliveryTimeAndLabelGroup_edit {
  margin-bottom:1em;
}
.opcItem_itemSubTotalPriceAndLabelGroup {
  padding-bottom:1em;
  margin-bottom:1em;
}
.opcDeliveryAddressAndDeliveryMethodGroup,
.opcItemList {
  margin-bottom:0 !important;
  border:none !important;
  padding:0 !important;
  position:static !important;
}
.opcBillingAddress .opcCommonReferenceLabel {
  width:70px;
  display:inline-block;
  position:relative;
}
.opcBillingAddress .opcCommonReferenceLabel::after {
  position:absolute;
  right:0;
}
.opcDeliveryMethod .opcCommonReferenceLabel {
  width:123px;
  display:inline-block;
  position:relative;
}
.opcDeliveryMethod .opcCommonReferenceLabel::after {
  position:absolute;
  right:0;
}
.opcCommonRequireLabel {
  color:#da4636 !important;
  font-weight:bold;
}
.opcRemarks_remark_edit {
  width:100% !important;
}
.opcDeliveryAddressEditDialog_directChangeButtonAndLabelGroup {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-bottom:2em;
}
.opcDeliveryAddressEditDialog_directChangeLabel {
  width:100%;
}
.opcDeliveryAddressEditDialog_directChangeButtonAndLabelGroup .opcCommonButton {
  width:calc(32% - 1em) !important;
}
.opcItem_itemName {
  font-weight:bold;
  font-size:15px;
}
.opcConfirm_headerErrorMessage {
  width:100% !important;
  max-width:800px;
}
.opcRemarks_remark,
.opcRemarks_cartOption {
    margin-left:0 !important;
    width:100% !important; ;
    white-space:normal !important; ;
}
#sysOpc > form + div {
  margin-bottom:60px !important;
}
.opcDeliveryMethod_normalShippingDetailAndLabelGroup_edit {
  padding-left:0 !important;
  margin-left:0 !important;
  border-bottom:none !important;
}
.opcDeliveryAddress {
  border-bottom:1px solid #9b9b9b;
  margin-bottom:1em;
}
.opcDeliveryMethod_hopeDeliveryDateLabel_edit {
  width:126px;
  display:inline-block;
}

/*完了ページ調整*/
#sysThanks #sysMain {
  border:none;
}
#sysThanks .sysNavImg {
  display:none;
}
#sysThanks.sysCart .sysBox:nth-of-type(2) div:nth-of-type(1),
#sysThanks.sysCart .sysBox:nth-of-type(2) div:nth-of-type(2) {
  margin-bottom:1em;
}

/***********************************
  検索ページ
***********************************/
#sysItemSearch div#sysMain {
  max-width:980px;
  margin:20px auto 40px;
}
#sysItemSearch .sysThumbnail .sysItemPrArea {
  text-align:left;
  margin-top:5px;
}
#sysItemSearch #sysMain h2 {
  font-size:13px;
  margin-bottom:10px;
}
#sysItemSearch #sysMain .sysItemSearchForm {
  font-size:12px;
  padding:20px;
  margin-bottom:20px;
  background-color:#ededed;
}
#sysItemSearch #sysMain .sysItemSearchFormWord {
  margin-bottom:5px;
}
#sysItemSearch #sysMain .sysItemSearchFormWord input {
  height:40px;
  vertical-align:bottom;
  border:1px solid #d0d0d0;
}
#sysItemSearch #sysMain .sysSearchButton {
  display:block;
  margin:10px auto;
  padding:10px;
  width:95%;
  border:none;
  background:#939CBD;
  color:#fff;
  font-size:120%;
  cursor:pointer;
  border-radius:3px;
}
#sysItemSearch #sysMain .sysItemSearchFormRange input {
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
#sysItemSearch #sysMain .sysItemSearchFormRange,
#sysItemSearch #sysMain .sysItemSearchFormCategory,
#sysItemSearch #sysMain .sysItemSearchFormSort,
#sysItemSearch #sysMain .sysItemSearchFormLimit {
  display:inline-block;
  margin:5px auto;
}
#sysItemSearch #sysMain .sysItemSearchFormRange input {
  padding:10px;
}

/***********************************
  お問い合わせ
***********************************/
#sysFormConfirm .sysNextSubmit{
  width:100%;
  margin:20px 0 0 !important;
}
#sysFormConfirm button.sysButton{
  width:30%;
  margin-bottom:20px;
}

/***********************************
  新規会員登録
***********************************/
.sysMemberRegister #sysWrap{
  margin:160px auto 0;
}

/***********************************
  マイページ
***********************************/
.sysMypage #sysWrap{
  margin:160px auto 0;
}
.sysMypage input[type="submit"]{
  margin-top:10px;
}

/* マイページボタン */
.sysMypageNav > form {
    display:inline-block;
    width:49%;
    vertical-align:top;
}
.sysMypageNav .sysButton {
    width:100%;
    display:block;
    font-size:15px;
  margin:5px 0;
  padding:15px 0;
}
#sysMemberRegisterIndex .sysNextSubmit{
  margin-top:25px;
  float:left; width:49%; margin-right:2%;
  height:50px;
}
#sysMemberRegisterIndex .sysButton[type="submit"]{
  float:left; width:49%;
  height:50px;
}
#sysMypageLogin .sysLoginButton{
  width:49%;
  float:left;
  margin-right:1%;
  font-size:15px;
}
#sysMypageLogin .sysButton{
  width:49%;
  margin-left:1%;
  font-size:15px;
}

/***********************************
  ヘッダー
***********************************/
.header_wrap{
  position:fixed;
  height:130px;
  top:0; left:0; right:0;
  margin:auto;
  background:#fff;
  z-index:120;
        border-bottom:1px solid #aaa;
}
.header_wrap_inner{
  max-width:1100px;
  margin:0 auto;
}
.h_inner{margin:15px 0 0;}
.header_h1_under, .header_h1{
  width:580px;
  height:80px;
  float:left;
}
.header{
  width:395px;
  height:80px;
  float:left;
}
.logo img{
  width:180px;
  margin-right:15px;
  float:left;
}
.head_title{
  font-size:11px;
  font-weight:bold;
  height:32px;
  line-height:32px;
  letter-spacing:1px;
        margin-top:0 !important;
        padding-top:0 !important;
}
.header .g_navi li{
  float:left;
  text-align:center;
}
.header .g_navi li a{
  display:block;
  width:120px;
  margin:15px 5px 0;
  height:30px;
  line-height:28px;
  font-weight:bold;
  font-size:12px;
  border:1px solid #222222;
  border-radius:20px;
}
.header .g_navi li i{margin-right:5px;}


/***********************************
  カート情報
***********************************/
#cartInfo{
  float:left;
  position:relative;
  margin-top:15px;
  margin-left:5px;
  width:120px;
  height:30px;
  line-height:28px;
  font-weight:bold;
  font-size:12px;
  border-radius:20px;
  border:1px solid #222222;
  background:#222222;
  color:#fff;
  text-align:center;
  cursor:pointer;
  padding-top:-10px;
}
#cartInfo p.cartTxt{
  margin:-2px;
  line-height:21px;
  padding-top:5px;
  font-size:10px;
}
#cartInfo p img{
  width:20px;
  height:20px;
  display:inline-block;
  margin-right:5px;
}
#cartInfo i{
  margin-right:5px;
}
.h_cart{
  display:none;
  width:280px;
  height:145px;
  position:absolute;
  top:40px; right:5px;
  border:1px solid #aaa;
  background:#fff;
  color:#000;
  z-index:110;
  padding:10px 20px;
}
.h_cart dl{
  font-size:12px;
  margin-bottom:0px;
}
.h_cart dl:after{
  display:block;
  content:"";
  clear:both;
}
.h_cart dt, .h_cart dd{float:left;}
.h_cart dd span{
  display:inline-block;
  color:#da4636;
  font-weight:bold;
  padding:0 5px;
}
.h_cart .sysCartInfoCartIn a{
  display:block;
  background:#000;
  color:#fff;
  width:100%;
  margin:10px 0% 5px;
  height:50px;
  padding:12px 0 0;
  font-size:15px;
  font-weight:bold;
  text-align:center;
  border-radius:5px;
}
.h_cart .sysCartInfoCartIn a:hover{
  background:#999;
}
.h_cart .sysCartInfoCartIn a img{
  display:inline-block;
  width:25px;
  height:25px;
  margin-right:5px;
}
.h_cart .sysCartInfoCartIn a i{margin-right:5px;}

/* カート内商品数表示 */
button.itemCount{
  display:none;
  border:none;
  width:20px;
  height:20px;
        line-height:20px;
  text-align:center;
  font-weight:bold;
  margin-left:5px;
  color:#222222;
  background:#fff;
  border-radius:10px;
}

/* 確認画面の注意文 */
.check-notice {
  margin-bottom: 0; padding: 1.3em 1.5em; font-size: 1.1em; letter-spacing: .7px; line-height: 1.8; background: #f6f5f4;
}
.check-notice .red { display: inline-block; margin-bottom: 0.3em; font-size: 1.2em;}


/***********************************
  ナビゲーション
***********************************/
.h_navi{
  width:100%;
  height:60px;
    margin-bottom:10px;
}
#headNavigation{
  max-width:1100px;
  margin:0 auto;
        height:60px;
}
#headNavigation .pcnone{display:none;}
#headNavigation li.tab1{
  width:220px;
  float:left;
  text-align:center;
}

#headNavigation li a{
    display:block;
  font-weight:700;
}
#headNavigation li a span{
  display:block;
  font-size:10px;
}
.tabmenu .border:after{
  background-color:#000;
    content:" ";
    height:15px;
    margin-top:-35px;
    position:absolute;
    right:0;
    top:42px;
    width:1px;

}

/*ナビゲーショントグル*/
.tabmenu:before{
  display:block;
  content:"";
  clear:both;
}
.tabmenu{
  margin:10px 0 0;
}
.toggleNav{
  display:none;
  width:220px;
  position:absolute;
  height:0px; /*heightはjs制御*/
  top:50px; left:0;
  background:rgba(255,255,255,1);
  z-index:110;
  box-shadow:2px 2px 4px 0px #ccc;
  -moz-box-shadow:2px 2px 4px 0px #ccc;
  -webkit-box-shadow:2px 2px 4px 0px #ccc;
}
.toggleNav:hover{
  overflow:visible !important;
}
.tabmenu li.tab1{
  position:relative;
}
.tabmenu li.tab1 a{
  font-size:14px;
}
.tabmenu li.tab2{
  text-align:left;
  height:35px;
  border-bottom:1px dotted #ccc;
  position:relative;
}
.tabmenu li.tab2:hover{background:#ededed;}
.tabmenu li.tab2 a{
  display:block;
  position:relative;
  padding:10px;
  font-size:12px !important;
  line-height:15px;
    font-weight:bold;
}
.tabmenu li.tab2 a i{
  position:absolute;
  right:10px;
  top:10px;
}
.tabmenu li.tab2 .subCategory{
  position:absolute;
  width:200px;
  left:200px; top:0px;
  background:rgba(255,255,255,1);
  visibility:hidden;
  transition:all .10s ease;
  z-index:120;
  box-shadow:2px 2px 4px 0px #ccc;
  -moz-box-shadow:2px 2px 4px 0px #ccc;
  -webkit-box-shadow:2px 2px 4px 0px #ccc;
}
.tabmenu li.tab2:hover .subCategory{
  visibility:visible;
}
.tabmenu li.tab3{
  font-size:14px;
  height:35px;
  border-bottom:1px dotted #ccc;
    font-weight:bold;
}
.tabmenu li.tab3:hover{background:#ededed;}

/***********************************
  フッター
***********************************/
.footer{
  width:100%;
  margin:50px 0 0;
  text-align:center;
  letter-spacing:2px;
}
.footer .f_navi_all{
  width:1000px;
  margin:0 auto;
  padding:10px 0 0;
}
.footer .f_navi h3{
  margin:10px 0 0;
  font-size:15px;
}
.footer .f_navi ul{
  width:671px;
  text-align:left;
  margin:0 auto;
}
.footer .f_navi li{
  display:inline-block;
  padding:0 15px 0 5px;
  margin:10px 5px 0;
  font-size:15px;
  position:relative;
}
.footer .f_navi li:after{
  background-color:#000;
    content:"　";
    height:10px;
    margin-top:-35px;
    position:absolute;
    right:0;
    top:41px;
    width:1px;
}
.footer .f_navi .b_none{border-right:0px;}
.footer .telephone{
  margin:20px 0 5px;
}
.footer .telephone .telephone01{
  width:250px;
  height:32px;
  line-height:32px;
  border:1px solid #000;
  border-radius:15px;
  display:inline-block;
  font-size:15px;
  font-weight:bold;
  margin-right:10px;
}
.footer .telephone .telephone02{
  width:300px;
  display:inline-block;
  margin-left:10px;
  font-weight:bold;
}
.footer .telephone .telephone02 a{
  display:inline-block;
  height:32px;
  line-height:32px;
  font-size:25px;
}
.footer .telephone .telephone02 a img{
  display:inline-block;
  height:30px;
  margin-right:10px;
}
.footer .telephone:after{
  display:block;
  content:"";
  clear:both;
}
.footer .time{
  font-size:15px;
  margin:0 0 10px;
}
.footer .f_gnav_all{
  padding:15px 0 10px;
  letter-spacing:2px;
}
.footer .f_gnav li{
  display:inline-block;
  padding:0px 20px 0 15px;
  font-size:12px;
  position:relative;
}
.footer .f_gnav li:after{
  background-color:#000;
    content:"　";
    height:10px;
    margin-top:-35px;
    position:absolute;
    right:0;
    top:40px;
    width:1px;

}
.footer .f_gnav li:last-child{
  border-right:0px;
}
.footer .f_gnav{margin-bottom:5px;}
.footer .f_copy{
  padding:10px;
  font-size:12px;
  font-weight:bold;
}

/***********************************
  フッター部分のご利用ガイド
***********************************/
.f_guide{
  width:100%;
  border-top:2px solid #222222;
  margin-top:50px;
}
.f_guide .sysContent{
  width:1100px;
  margin:0 auto;
}
.f_guide .Title{
  font-size:15px;
  text-align:center;
  font-weight:bold;
  padding:10px 0 30px;
}
.f_guide .clearfix{
  font-size:0;
}
.f_guide .guideBlock{
  display:inline-block;
  width:550px;
  font-size:14px;
  vertical-align:top;
}
.f_guide .guideBlock:after{
  display:block;
  content:"";
  clear:both;
}
.f_guide .guide01{padding-right:50px;}
.f_guide .guide02{padding-left:50px;}
.f_guide .guideTitle{
  width:120px;
  height:30px;
  line-height:30px;
  text-align:center;
  border:1px solid #000;
  border-radius:15px;
  margin-bottom:10px;
}
.f_guide p{
  font-size:15px;
  line-height:22px;
  margin:5px 0;
}
.f_guide .mt{margin-top:20px;}
.f_guide .smaller{font-size:12px;}

.f_guide .freedial{
    background:rgba(0, 0, 0, 0) url("/img/common/dial.png") no-repeat scroll left center / 45px auto;
    display:inline-block;
    font-size:40px;
    font-weight:bold;
    line-height:1;
    margin-bottom:10px;
    padding-left:50px;
}

/*ボタン*/
.f_guide .common_btn{
  margin:10px auto;
}
.f_guide .common_btn a{
  font-size:13px;
  padding:10px 0;
}

/* ページトップに戻る*/
.pagetop{
  position:fixed;
  bottom:20px;
  right:20px;
  width:52px;
  height:52px;
  text-align:center;
        z-index:999999;
}
.pagetop #page-top{
  display:none;
  color:#fff;
  font-size:11px;
  line-height:14px;
  background:#000;
  border-radius:5px;
  padding-top:4px;
  height:51px;
}
.pagetop #page-top:hover{
  background:#999;
}

/***********************************
  サイド
***********************************/
/*検索ボックス*/
.side_search{margin-bottom:30px;}
.side_search form{border:none;}
.side_search input[type="search"]{
  height:40px;
  border:1px solid #ddd;
  margin-bottom:5px;
}
.side_search .sysItemSearchFormWord {
    float:none;
    width:100%;
  margin-bottom:5px;
}
.side_search .sysSearchButton{
  float:none;
  width:100% !important;
  height:40px;
  border-radius:5px;
  background:#6D788C url(/img/common/ico_search.png) no-repeat center center;
  background-size:70px;
  text-indent:-999px;
}

.side_navi .sysHeadline,
.side_navi_item .sysHeadline{
    font-size:14px;
    margin:0 !important;
    text-align:left;
  font-weight:bold;
  letter-spacing:2px;
    width:auto;
  border-bottom:1px solid #222222;
}
.side_navi .sysHeadline:before,
.side_navi_item .sysHeadline:before{
  content:none;
}
.side_navi a{
  position:relative;
  padding:7px 5px 7px 20px !important;
    letter-spacing:1px;
  border-bottom:1px dotted #cdcdcd !important;
}
.side_navi a:after{
  position:absolute;
  top:7px;
  right:10px;
  content:">";
  font-size:14px;
}
.side_navi a:hover{
    background:#eee;
}
.side_navi{
  margin-bottom:30px;
}

/*商品別*/
.side_navi_item{
  margin-bottom:0;
  border-bottom:1px solid #000;
}
.side_navi_item .sysHeadline,
.side_navi_item .sysContent{
  width:90% !important;
  margin-left:auto !important;
}
.side_navi_item a{
  position:relative;
  padding:7px 5px !important;
    letter-spacing:1px;
  border-bottom:1px dotted #cdcdcd !important;
}
.side_navi_item a:after{
  position:absolute;
  top:7px;
  right:10px;
  content:">";
  font-size:14px;
}
.side_navi_item li:last-child a{
  border-bottom:none !important;
}
.side_navi_item .sysHeadline{
  font-size:13px;
  padding:0;
  border-bottom:1px dotted #cdcdcd !important;
}
.side_navi_item .sysHeadline a{
  display:block;
  border-bottom:none !important;
}
/*お買い物ガイド 最後2つ*/
.side_navi_guide li:nth-last-child(1),
.side_navi_guide li:nth-last-child(2),
.side_navi_blog li{
  font-size:14px;
  font-weight:bold;
  border-bottom:1px solid #222222;
  margin-bottom:10px;
}
.side_navi_guide li:nth-last-child(1) a,
.side_navi_guide li:nth-last-child(2) a,
.side_navi_blog li a{
  padding:7px 5px !important;
  border:none !important;
}
.side_navi_guide li:nth-last-child(1) a:hover,
.side_navi_guide li:nth-last-child(2) a:hover,
.side_navi_blog li a:hover{
  background-color:#fff;
}
.side_navi_guide li:nth-last-child(3){
  margin-bottom:10px;
}

/***********************************
  共通パーツ
***********************************/
hr.style01 {
  width:100%; margin:50px auto; padding:0;
  height:1px; background:#222222; border:0;
}
.sysTitle, .sysHeadline{
  width:600px;
  margin:30px auto/*!important*/;
  position:relative;
  text-align:center;
  font-size:23px;/*
  letter-spacing:3px;*/
}
.sysTitle b, .sysHeadline b{
  display:block; font-size:14px; text-align:center; color:#8595a9;
}
.sysTitle span, .sysHeadline span{
  position:relative;
  z-index:0;
  display:inline-block;
  margin:0 2.5em;
  padding:0 40px;
  background-color:#fff;
  text-align:center;
}
.sysTitle::before, .sysHeadline::before {
  position:absolute;
  top:50%;
  z-index:-1;
  content:'';
  display:block;
  width:100%;
  height:1px;
  background-color:#222222;
}
.contentsWrap{
  width:1100px;
  margin:0 auto;
}

/***********************************
  特商法テーブルレイアウト
***********************************/
#main_tradelaw, .main_tradelaw {
    border:1px solid #ddd;
    margin:0 auto 30px;
    max-width:1100px;
}
#main_tradelaw dl, .main_tradelaw dl{
  display:flex;
  background:#ededed;
  border-bottom:1px dotted #bfbfbf;
  overflow:hidden;
}
#main_tradelaw dl:last-child, .main_tradelaw dl:last-child{border:0px;}
#main_tradelaw dt, .main_tradelaw dt{
  padding:15px 0 15px 20px;
  width:200px;
  font-weight:bolder;
}
#main_tradelaw dd, .main_tradelaw dd{
  flex:1;
  padding:15px;
  background:#fff;
}
.shipFee{
  max-width:1100px;
  margin:20px auto
}
.shipFee .tableTitle{
  font-size:16px;
        height:70px;
        padding:10px;
  color:#424242;
  margin:50px 0 0px;
  border:0px !important;
  text-align:leftr;
}
table.shipFeeTable {
    border-collapse:collapse;
  margin-bottom:30px;
    text-align:left;
    line-height:1.5;
  text-align:center;
}
table.shipFeeTable .eyeCatch{
  width:120px;
  display:block;
  margin:5px auto;
  height:25px;
  line-height:25px;
  color:#000;
        border-bottom:1px solid #aaa;
        padding-bottom:5px;
}
table.shipFeeTable thead {
        background:#555;
  text-align:center;
}
.spThead{display:none;}
table.shipFeeTable thead th {
        padding:10px;
        vertical-align:top;
        font-weight:normal;
        color:#fff;
}
table.shipFeeTable tbody .sum{position:relative;}
table.shipFeeTable tbody .sum i{
  position:absolute;
  color:#888;
  font-size:35px;
  right:-15px;
  bottom:30px;
  z-index:20;
}
table.shipFeeTable tbody th {
        width:600px;
        padding:10px;
        vertical-align:top;
       background:#fff;
        font-weight:normal;
  border-bottom:1px solid #ddd;
  border-left:1px solid #ddd;
  border-right:1px solid #ddd;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
table.shipFeeTable td {
    width:500px;
    padding:10px;
    vertical-align:top;
  border-right:1px solid #ddd;
    border-bottom:1px solid #ddd;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  background:#eee;
}
table.shipFeeTable b{
  color:#D42E30;
  display:inline-block;
  padding:0 3px;
  font-size:1.2em;
}
div#main_tradelaw a{
  display:inline-block;
  color:#068acc;
  text-decoration:underline;
}

/***********************************
  2カラムレイアウト
***********************************/
.column2Wrap{
  width:1100px;
  margin:0 auto;
}
.column2Wrap:after{
  display:block;
  content:"";
  clear:both;
}
.sideWrap{
  width:180px;
  height:1000px;
  background:#aaa;
  margin-right:20px;
  float:left;
}
.mainWrap{
  width:900px;
  margin-left:200px;
}
.col2Style h2.pattern01{
  font-size:18px;
  border-left:5px solid #3d3d3d;
  padding-left:5px;
  margin:15px 0;
}
.col2Style h2.pattern02{
  font-size:18px;
  border-bottom:1px solid #3d3d3d;
  padding-left:5px;
  padding-bottom:5px;
  margin:15px 0;
}
.col2Style h2.pattern03{
  height:35px;
  line-height:35px;
  font-size:18px;
  padding:0 0px 3px 30px;
  margin:0 0 15px;
  border-bottom:1px solid #6843ac;
}
.col2Style h3.pattern01{
  font-size:14px;
  border-bottom:0px solid #aaa !important;
  padding:0px 0px 3px;
  margin:15px 0 5px;
}
.col2Style h4.style01{
  font-size:15px;
  padding-bottom:3px;
  margin:20px 0;
  border-bottom:0px solid #3d3d3d!important;
}
.col2Style .txtBlock{margin:30px 0;}
.col2Style .imgWrap {
  margin:30px 0;
}
.col2Style .txtBlock a, #forbusiness .txtBlock a, #relocation .txtBlock a, #privacypolicy .txtBlock a{
  color:#757c96;
  line-height:25px;
  padding-bottom:1px;
  border-bottom:1px solid #757c96;
}
#shoplist td a, #corporate dd a{
  color:#757c96;
  padding-bottom:1px;
  border-bottom:1px solid #757c96;
}
.col2Style .txtBlock li{
  margin:5px 0;
  font-size:12px;
}
.col2Style .txtBlock li .larger{
  font-size:14px;
  margin-bottom:10px;
}
.col2Style .txtBlock li span{ width:20px; display:inline-block; }
.col2Style .imgWrap img{ width:40%; margin:10px 0; }
.col2Style .floatWrap{ margin:20px 0; }
.col2Style .floatWrap:after{
  display:block;
  content:"";
  clear:both;
}
.col2Style .floatWrap img{
  width:150px;
  float:left;
}
.col2Style .floatWrap .txt{
  padding-top:5px;
  margin-left:170px
}
.col2Style .floatImg{text-align:center;}
.col2Style .floatImg:after{
  display:block;
  content:"";
  clear:both;
}
.col2Style .floatImg .imgWrap{
  width:50%;
  float:left;
}
.col2Style .floatImg .imgWrap img{
  width:60%;
  margin:20px 10%;
}

/***********************************
   お買い物ガイド
***********************************/
.indexList{margin:10px 0;}
.indexList li{
  display:inline-block;
  text-align:center;
  margin:0 5px 10px;
  border:1px solid #aaa;
  padding:3px 10px;
  border-radius:5px;
  font-size:15px;
}
.guideBlock{padding-top:30px;}

/*商品購入ステップ*/
.steps ul{
  width:700px;
  margin:0 auto;
}
.steps ul:after{
  display:block;
  content:"";
  clear:both;
}
.steps li{
  float:left;
  padding:0 6px;
  height:200px;
}
.steps li a{
  display:block;
  height:100%;
  height:200px !important;
}
.steps li img{height:200px;}


/***********************************
   ボタンデザイン
***********************************/
.common_btn{
  width:250px;
  margin:20px auto 50px;
  position:relative;
}
.common_btn a{
  display:block;
  padding:15px 0;
  font-size:16px;
  color:#fff;
  text-align:center;
  border-radius:5px;
  background:#000;
}
.common_btn a:hover{
  background:#999;
}
.common_btn a i{
  display:inline-block;
  margin-left:10px;
  font-size:20px;
}

/***********************************
  TOPページ
***********************************/
/*スライダー*/
#slider{
  display:none;
}
.top_slider .owl-item {
  opacity:0.5;
  filter:alpha(opacity=50);
  -moz-filter:"alpha( opacity=50 )";
  -webkit-filter:"alpha( opacity=50 )";
  -o-filter:"alpha( opacity=50 )";
  -ms-filter:"alpha( opacity=50 )";
}
.top_slider .center {
  opacity:1;
  filter:alpha(opacity=100);
  -moz-filter:"alpha( opacity=100 )";
  -webkit-filter:"alpha( opacity=100 )";
  -o-filter:"alpha( opacity=100 )";
  -ms-filter:"alpha( opacity=100 )";
}
.top_slider > .sysContent > img { width:100%; max-width:none; }

/*特集一覧*/
.top_features{
  overflow:hidden;
}
.top_features ul{
  font-size:0;
  text-align:left;
}
.top_features li{
  float:none !important;
  display:inline-block;
  width:30%;
  margin:1.66666666666667%;
  font-size:12px;
  vertical-align:top;
}
.top_features li img{width:100%;}
.top_features li a{
  display:block;
  position:relative;
}
.top_features li span{
  display:block;
  font-size:14px;
  font-weight:bold;
}

/*おすすめ商品、ランキング*/
.top_recommend_item li .sysItemName,
.top_ranking_item li .sysItemName{
  font-size:16px;
  font-weight:500;
  padding-top:10px;
}
top_recommend_item .sysItemPrice,
top_ranking_item .sysItemPrice{
  font-size:14px;
  color:#ff0000;
  font-weight:600;
  padding-top:5px;
}

.top_recommend_item_sotugyou .sysContent .sysHorizontal .sysItemImage,.top_recommend_item_seijin .sysContent .sysHorizontal .sysItemImage {
  flex: 1 !important;
}
.top_recommend_item_seijin .sysContent .sysHorizontal .sysItemImage a,.maedori_recommend_item_seijin .sysContent .sysHorizontal .sysItemImage a,.maedori_recommend_item_sotugyou .sysContent .sysHorizontal .sysItemImage a, .top_recommend_item_sotugyou .sysContent .sysHorizontal .sysItemImage a { position: relative; display: block; padding-top: 133%;}
.top_recommend_item_seijin .sysContent .sysHorizontal .sysItemImage img, .top_recommend_item_sotugyou .sysContent .sysHorizontal .sysItemImage img,.maedori_recommend_item_seijin .sysContent .sysHorizontal .sysItemImage img,.maedori_recommend_item_sotugyou .sysContent .sysHorizontal .sysItemImage img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.top_recommend_item_seijin .sysItemBlock,.maedori_recommend_item_seijin .sysItemBlock,.maedori_recommend_item_sotugyou .sysItemBlock,.top_recommend_item_sotugyou .sysItemBlock { margin-bottom: min(3vw, calc(60px - 2.5em));}

.top_recommend_item_sotugyou .sysContent .sysHorizontal li { width: 100%;}

/*おすすめ商品*/
.top_recommend_item{
  margin-bottom:60px;
}
.top_recommend_item li{
  width:100% !important;
  padding:0 20px !important;
}

.top_recommend_item_seijin .sysHorizontal,.top_recommend_item_sotugyou .sysHorizontal {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5em 2%; grid-template-columns: repeat(4, 1fr); column-gap: max(1%, (66px / 3));
}
.top_recommend_item_seijin .sysHorizontal li,.maedori_recommend_item_seijin .sysHorizontal li ,.maedori_recommend_item_sotugyou .sysHorizontal li,.top_recommend_item_sotugyou .sysHorizontal li { padding: 0 !important; width: 100% !important;}

/*ランキング*/
.top_ranking_item ul{
  font-size:0;
  text-align:left;
}
.top_ranking_item li{
  float:none !important;
  display:inline-block;
  width:30% !important;
  margin:0 1.5% 30px !important;
  padding:10px;
  font-size:12px;
  text-align:center;
  vertical-align:top;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

span.sysSubtotalPrice {
    font-size:17px;
    float:right;
}

/*クロネコペイボタン装飾調整*/
div#kuronekoPayFlex {
    margin-right:21px;
}
.sysCart #sysMain #kuronekoPayFlex button img {
    margin-top:-11px;
}
.sysCart #sysMain button#kmid-login-subwindow-launch,
.sysCart #sysMain button[onclick="Sys('#kmid-login-subwindow-launch').click()"]
 {
  padding:10px 0px 0px 0px;
}
.sysConfirmButton input#open_dlg_edit_customer_info {
    display:inline-block;
    padding:10px;
    width:auto;
    height:auto;
    color:#000;
    background:#fff;
    border-radius:none;
    border:1px solid #999;
    text-overflow:ellipsis;
    overflow:hidden;
    white-space:nowrap;
}

/* 追加装飾 */
.p-corporate-history { margin-top:min(7%,70px); }

/* ご利用の流れ */
.top_flow .sysContent { max-width: 1100px; margin-inline: auto;}

/* インスタ */
.top_insta .sysHeadline { margin-bottom: .8em; color: #8595a9; font-size: clamp(28px,5vw,40px) !important;}
.top_insta .sysHeadline b { margin-bottom: 0 !important; color: #484745 !important;}
.top_insta .insta-list { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 1fr); max-width: 1000px; margin: auto; padding-inline: .3em; gap: 0.3em;}
.top_insta .btn-blu { margin-top: 3em;}

/***********************************
  ご利用ガイド
***********************************/
/* common */
.box_con { padding: 1.3em 1.5em;}
.con_box + .con_box { margin-top: clamp(50px,6vw,60px);}
.sub_con_box + .sub_con_box { margin-top: clamp(40px,5vw,50px);}

/*ttl*/
.ttl_tborder { position: relative; padding: .4em 0 1em; margin-bottom: 1.4em; font-size: 1.625em; text-align: center; line-height: 1.4;}
.ttl_tborder::before { content: ""; position: absolute; width: 1.6em; height: 2px; top: 0; left: 50%; transform: translateX(-50%); background: #6c788c;}
.ttl_tborder::after { content: attr(data-en); position: absolute; width: 100%; left: 50%; transform: translateX(-50%); bottom: 0; font-size: .6em; color: #8595a9;}

.sub_ttl_lborder { padding-left: .4em; margin-bottom: clamp(18px,2.5vw,25px); font-size: 1.5em; border-left: 3px solid #6c788c; }
.sub_ttl_bborder { padding: 0.8em 1.2em; margin-bottom: 1.3em; font-size: 1.125em; background: #f3e4e4; border-bottom: solid 1px #8c595b;}

/*btn*/
.list_btn { gap: 1em 1.5%;}
.list_btn li { width: 31%;}
.list_btn li.bg_red { width: 41%;}
.list_btn li a { position: relative; display: flex; align-items: center; justify-content: center; height: 100%; padding: .9em 2em .9em 1em; color: #fff; text-align: center; line-height: 1.3;}
.list_btn li a::before {position: absolute; content: ""; width: 10px; height: 10px; right: 1.2em; border: 2px solid; border-color:  transparent transparent #fff #fff; transform: rotate(-45deg);}
.btn_contact { margin: .6em 0 !important;}
.btn_contact a { display: block; padding: 0.5em 1em; background: #757c96; color: #fff; width: 50%; text-align: center;}

/*list*/
.list_step { counter-reset: number 0;}
.list_step li { position: relative;}
.list_step li .ttl_arrow { display: flex; align-items: center; padding-right: .3em; background: #dadfe4; font-size: 1.145em; overflow: hidden;}
.list_step > li:not(:last-child) { margin-bottom: 3.2em;}
.list_step > li:not(:last-child)::before { content: ""; position: absolute; left: 50%; transform: translateX(-50%) translateY(-50%); bottom: calc(-2.4em); border-top: .8em solid #6c788c; border-right: 1em solid transparent; border-left: 1em solid transparent;}
.list_step .ttl_arrow .box_arrow { position: relative; display: inline-block; margin-right: 2em; padding: 1.2em .6em .8em 1em; background: #6c788c; color: #fff; font-size: .7em;}
.list_step .ttl_arrow .box_arrow .step { position: relative; top: -.9em; }
.list_step .ttl_arrow .box_arrow::before { position: absolute; counter-increment: number 1; content: counter(number); bottom: .3em; left: 50%; transform: translateX(-50%); font-size: 1.6em;}
.list_step .ttl_arrow .box_arrow::after { position: absolute; content: ""; border-top: 2.5em solid transparent; border-bottom: 2.5em solid transparent; border-left: 0.7em solid #6c788c; top: 50%; transform: translateY(-50%); right: -0.6em;}
.list_step li .bg-wht { background: #fff; padding: 1em 1.3em; margin-bottom: 0;}
.mt1em { margin-top: 1em;}

#guide .list_btn { margin-bottom: clamp(50px,8vw,80px);}
#guide ul.kome li { font-size: .9375em; line-height: 1.7;}
#guide ul.kome li:nth-child(n + 2) { margin-top: .5em;}
#guide ul.kome-txt li:nth-child(n + 2) { margin-top: 0;}

#guide section + section { margin-top: clamp(60px,10vw,100px);}
#guide p { margin: 1em 0;}
#guide p.txt { margin: 0;}

/*send*/
.send .box_con ,.rental .box_con  { margin: 1.1em 0; padding: 1.7em 1.5em;}

/*payment*/
.payment .kome { margin-top: 1em;}

/*table*/
.table { border: 1px solid #ddd;;}
.table > div { display: flex; flex-wrap: wrap;}
.table > div dt { display: flex; align-items: center; justify-content: center; width: 15%; padding: .8em 0;  background: #f6f5f4;}
.table > div + div { border-top: dashed 1px #ddd;}
.table > div dd { flex: 1; padding: .8em 2em; background: #fff; line-height: 1.6;}
.table .indent { display: block;}

/*reserve_shop*/
#reserve_shop .ttl_tborder::before,#reserve_shop2 .ttl_tborder::before { background: #988fa4;}
#reserve_shop .ttl_tborder::after,#reserve_shop2 .ttl_tborder::after { color: #988fa4;}
#reserve_shop .list_step .ttl_arrow .box_arrow,#reserve_shop2 .list_step .ttl_arrow .box_arrow { background: #988fa4;}
#reserve_maedori .list_step .ttl_arrow .box_arrow { background: #6c868c;}
#reserve_shop .list_step .ttl_arrow .box_arrow::after,#reserve_shop2 .list_step .ttl_arrow .box_arrow::after { border-left: 0.7em solid #988fa4;}
#reserve_maedori .list_step .ttl_arrow .box_arrow::after { border-left: 0.7em solid #6c868c;}
#reserve_shop .list_step li .ttl_arrow,#reserve_shop2 .list_step li .ttl_arrow { background: #dfdae4;}
#reserve_maedori .list_step li .ttl_arrow { background: #d5e1e3;}
#reserve_shop .list_step li:not(:last-child)::before,#reserve_shop2 .list_step li:not(:last-child)::before { border-top: 0.8em solid #988fa4;}
#reserve_maedori .list_step li:not(:last-child)::before { border-top: 0.8em solid #6c868c;}
.list_step .kome li::before { border-top: none !important;}
#reserve_shop .sub_ttl_lborder,#reserve_shop2 .sub_ttl_lborder { border-left: 3px solid #988fa4;}
#reserve_maedori .sub_ttl_lborder { border-left: 3px solid #6c868c;}
#reserve_shop .list_step li .btn-blu,#reserve_shop2 .list_step li .btn-blu { margin: 1.2em 0 .5em;}

/*cancel*/
#cancel .sub_con_box .table { margin-top: 2em;}
#cancel .sub_con_box .box_con { margin-top: 1.5em;}
#cancel .ttl_tborder::before { background: #8c595b;}
#cancel .ttl_tborder::after { color: #8c595b;}
#cancel .sub_ttl_lborder { border-left: 3px solid #8c595b;}
#cancel .howto_cancel .table > div dt { width: 25%; min-width: 220px;}
.contact_box { margin-top: 1em;}

/***********************************
  プライバシーポリシー
***********************************/
.policy .cnt-ttl { position: relative; counter-increment: cnt-ttl; margin: 2em 0 1em; padding-bottom: .5em; font-size: 1.3em; border-bottom: 1px solid #757c96; }
.policy .cnt-ttl::before { content: counter(cnt-ttl, decimal-leading-zero); display: inline-block; margin-right: 0.4em; font-size: 1.2em; color: #757c96;}
.policy ol { margin-top: 1em;}
.policy-contact { margin-top: 2em; padding: 1.6em 2em; background: #f5f5f5;}
.policy-contact h3 { font-size: 1.1em; margin-bottom: 0.5em;}

.sysMypage .sysMypageNav form:nth-of-type(3){
display:none;
}
.sysMypage .sysMypageNav form:nth-of-type(4){
display:none;
}

/***********************************
  前撮りページ
***********************************/

/*common*/
#maedori_furisode { letter-spacing: 2px;}
.ttl_circle { position: relative; margin-bottom: clamp(60px,8vw,80px); z-index: 1; text-align: center; font-size: clamp(23px,3.4vw,34px);}
.ttl_circle::before { position: absolute; z-index: -1; content: ""; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); width: clamp(80px,11vw,110px); height: clamp(80px,11vw,110px); border-radius: 50%; background: #c8d4e1; opacity: .35;}
.ttl_circle::after { position: absolute; content: ""; left: 50%; top: 0; transform: translateX(-50%) translateY(-100%); width: 1px; height: clamp(30px, 4vw, 40px); background: #9f9f9f;}
.ttl_circle .en { display: block; margin-bottom: .2em; font-size: clamp(12px,1.6vw,16px); opacity: .5; letter-spacing: 4px;}

#maedori_hakama .ttl_circle::before { background: #d3ebca;}

.ttl_en_sub { margin-bottom: clamp(20px,4vw,40px); font-size: clamp(20px,2.8vw,28px); text-align: center; letter-spacing: 3px;}
.ttl_en_sub > span { display: block; font-size: clamp(11px,1.4vw,14px); color: #8595a9;}

.ttl_border { margin-bottom: clamp(25px,4vw,40px); padding-bottom: .6em; position: relative; font-size: clamp(22px,3.4vw,34px); text-align: center; border-bottom: solid 1px rgba(143, 117, 80, .5); letter-spacing: 3px;}
.ttl_border .en { position: absolute; left: 50%; bottom: .3em; transform: translateX(-50%); color: #8f7550; opacity: .09; font-size: clamp(40px,7vw,70px);}

/*mv*/
.mv {position: relative; min-height: 640px; width: 100%;}
.mv_ttl { position: absolute; top: 45%; font-size: clamp(22px,3.6vw,36px); color: #fff; letter-spacing: 6px; text-align: center;}
.mv_ttl .en { display: block; margin-top: .6em; font-size: clamp(12px,2vw,20px); opacity: .8; letter-spacing: 3px;}
#maedori_furisode .mv { background: url(/img/maedori/seijin/mv.jpg) no-repeat center / cover;}
#maedori_hakama .mv { background: url(/img/maedori/sotugyo/mv.jpg) no-repeat center / cover;}
#maedori_hakama .mv_ttl { right: 3%;}

/*キャンペーンバナー*/
.bnr_wrap { margin-block: clamp(20px,4vw,40px) clamp(40px,9vw,90px);}
.bnr_cam { position: relative; margin: auto; padding: clamp(20px,4vw,40px) 1em; text-align: center; max-width: 690px; width: 100%; border: solid 1px #8f7550; outline: solid 1px #8f7550; outline-offset: clamp(-6px,-1.2vw,-12px); color: #8f7550;}
.bnr_cam::before,.bnr_cam::after { position: absolute; content: ""; width: clamp(45px,8vw,80px); height: clamp(45px,8vw,80px);}
.bnr_cam::before { left: 13px; top: 13px; background: url(/img/maedori/deco-cam-l.png) no-repeat center / contain;}
.bnr_cam::after { right: 13px; bottom: 13px; background: url(/img/maedori/deco-cam-r.png) no-repeat center / contain;}
.bnr_cam p { margin: 0; letter-spacing: 3px;}
.term { font-size: clamp(15px,2.6vw,26px);}
.term .num { font-size: 1.16em;}
.term .num .small { font-size: .6em;}
.cam_main { margin-block: .5em .7em !important; font-size: clamp(20px,3.5vw,35px); letter-spacing: 5px !important;}
.txt_check { font-size: clamp(11px,1.8vw,18px); color: #333;}

/*メッセージ*/
.message { margin-top: clamp(40px,6vw,60px);}
.message .inner { display: flex; flex-wrap: wrap; gap: 4em; flex-direction: row-reverse;}
.message .txt_box { flex: 1;}
.message .img_box { width: 45%;}
.message_lead { margin-bottom: clamp(30px,3vw,40px); font-size: clamp(19px,3vw,30px); line-height: 1.6; letter-spacing: 4px;}
.message_lead .gold { color: #8f7550;}

/*ページ内リンク*/
.btn_list_wrap { margin-block: clamp(50px,10vw,100px) clamp(80px,10vw,100px);}
.btn_list_wrap .list_btn { margin: auto; max-width: 1000px;}

/*プラン*/
.plan_wrap + .plan_wrap { margin-top: clamp(50px,10vw,100px);}
.plan .img_box { display: block; margin-bottom: 3em; text-align: center;}
.plan .img_box img { width: 70%; margin: auto;}

.price_box { padding: clamp(35px,4vw,40px) clamp(17px,4vw,40px); max-width: 950px; margin-inline: auto; background: #f9f8f6; box-shadow: 10px 10px 0 rgba(143, 117, 80, .15);}
.price_box p { margin: 0; text-align: center; letter-spacing: 3px;}
.price_box .price_info { margin-bottom: 1em; font-size: clamp(14px,2.2vw,22px); line-height: 1.8;}
.price_box .price_info .em { font-size: 1.15em; color: #90173c; background: linear-gradient(transparent 60%, rgba(144,23,60,.15) 0%);}
.txt_otoku { margin-bottom: .5em !important; font-size: clamp(12px,2.2vw,20px); color: #90173c;}
.txt_otoku .em { font-size: 1.6em;}
.txt_otoku > span { position: relative;}
.txt_otoku > span::before,.txt_otoku > span::after { position: absolute; content: ""; bottom: 0; width: 1px; height: clamp(15px,2.5vw,25px); background: #90173c;}
.txt_otoku > span::before { left: -.5em; transform: rotate(-20deg);}
.txt_otoku > span::after { right: -.5em; transform: rotate(20deg);}
.price_txt { font-size: clamp(25px,4vw,40px); color: #8f7550; letter-spacing: 5px !important;}
.price_txt .yen { font-size: .6em;}
.price_txt .yen_mark { font-size: .9em;}

.price_cam_box { position: relative; margin-top: clamp(40px,6vw,60px); padding: 2em 1em; background: #fff; text-align: center;}
.price_cam_box::before { content: ""; position: absolute; left: 50%; transform: translateX(-50%); width: clamp(50px,9vw,90px); height: clamp(7px,1.5vw,15px); top: -18%; clip-path: polygon(50% 100%, 0 0, 100% 0); background: #8f7550;}
.price_cam_box .term { display: inline-block; padding-bottom: .2em; margin-bottom: .4em; color: #8f7550; border-bottom: solid 1px #8f7550;}
.price_txt_sub { margin-bottom: .3em !important; color: #8f7550;}
.price_cam_box .price_txt { display: inline-block; font-size: clamp(25px,4.5vw,45px); background: linear-gradient(transparent 70%, rgba(144,23,60,.15) 0%);}
.price_box .kome { margin-top: 1em !important; font-size: clamp(12px,1.4vw,14px);}

/*プラン内容*/
.disc2 li { position: relative; padding-left: .8em;}
.disc2 li::before { position: absolute; content: ""; left: 0; top: .8em; width: 5px; height: 5px; background: #356a7d; border-radius: 50%;}
.plan_detail { margin-block: clamp(40px,7vw,70px);}
.plan_detail_list { display: flex; justify-content: center; gap: 1.8em;}
.plan_detail_list > li { position: relative; width: 32%; border-radius: 15px; background: #cfdae4; outline: solid 1px #fff; outline-offset: clamp(-6px, -1.2vw, -12px); }
.plan_detail_list > li + li::before { content: "+"; position: absolute; top: 50%; transform: translateY(-50%) translateX(-113%); left: 0; font-size: clamp(20px,3vw,30px);}
.plan_detail_list > li .deco { position: relative; padding: 2.3em 2em 2em; height: 100%;}
.plan_detail_list > li .deco::before ,.plan_detail_list > li .deco::after { position: absolute; content: ""; width: clamp(60px,10vw,100px); height: clamp(45px,7vw,70px);}
.plan_detail_list > li .deco::before { right: 0; top: 0; background: url(/img/maedori/deco-detail-r.png) no-repeat center / contain;}
.plan_detail_list > li .deco::after { left: -1em; bottom: 0; background: url(/img/maedori/deco-detail-l.png) no-repeat center / contain;}
.plan_detail_list > li.rental_seijin { background: #e4cfd3 !important;}
.plan_detail_list > li.satuei_maedori { background: #e5ecf2;}
.plan_detail_ttl { margin-bottom: .8em; padding-bottom: .6em; font-size: clamp(18px,2.4vw,24px); text-align: center; letter-spacing: 3px; border-bottom: solid 1px rgba(90, 129, 143, .3); color: #356a7d;}
.plan_detail_list > li .deco > ul { padding: 1em 2em; background: rgba(249, 248, 246, .6); letter-spacing: 3px;}
.plan_detail_list > li .kome { margin-block: .5em 0; font-size: clamp(12px,1.4vw,14px);}
.plan_detail_list > li.rental_seijin .plan_detail_ttl { color: #984360; border-bottom-color: rgba(152, 67, 96, .3);}
.plan_detail_list > li.rental_seijin .disc2 li::before { background: #984360;}

#maedori_hakama .plan_detail_list > li { background: #d1e4cf;}
#maedori_hakama .plan_detail_list > li.satuei_maedori { background: #e5f2e5 !important;}

/*オプション*/
.ttl_border_normal { font-size: clamp(20px, 3vw, 30px);}
.tbl_blu { max-width: 950px; margin-inline: auto; padding: clamp(20px,4vw,40px) clamp(30px,5vw,50px); background: #eef2f6;}
.option .tbl_blu { margin-bottom: 2em;}
.tbl_blu > div { padding-bottom: .7em; margin-bottom: .7em; border-bottom: solid 1px #fff; display: flex; justify-content: space-between; letter-spacing: 2px;}
.tbl_blu > div .yen { font-size: .76em;}
.tbl_blu > div dd { font-size: 1.1em;}
#maedori_furisode .btn-blu>a,#maedori_hakama .btn-blu>a { background: #6c788c;}
.btn_under { position: relative;}
.btn_under::before { position: absolute; content: ""; width: 10px; height: 10px; top: 50%; right: 1.2em; border: 2px solid; border-color: transparent transparent #fff #fff; transform: rotate(-45deg) translateY(-70%);}

/*おすすめ*/
.recommend { margin-block: clamp(40px, 7vw, 70px) 0;}

/*ギャラリー*/
.slide_gallary  { margin-top: clamp(60px,10vw,100px);}

/*ロケーション*/
.location { margin-top: clamp(60px,12vw,120px);}
.location .lead_box { display: flex; flex-wrap: wrap; gap: 4em; flex-direction: row-reverse;}
.location .lead_box.align { margin-top: 1em; align-items: center;}
.location .lead_box + .lead_box { margin-top: clamp(40px,7vw,70px);}
.location .lead_box .img_box { width: 45%;}
.location .lead_box .txt_box { flex: 1;}
.location .lead_box:nth-child(2) { flex-direction: row;}

/*ロケーション詳細*/
.price_box2 .price_info .em { color: #484745; background: none;}
.price_box2 .price_sub { display: inline-block; margin-left: 1em;}
.price_box2 .price_sub .num { font-size: 1.3em;}
.price_box2 .txt_otoku .em { font-size: 1.3em; background: linear-gradient(transparent 60%, rgba(143, 117, 80, .15) 0%);}
.price_box2 .disc2 { margin: 2.5em auto 2em; width: fit-content; display: grid; grid-template-columns: repeat(2,1fr); gap: 0 2em; }
.detail { margin-block: clamp(40px, 7vw, 70px);}

/*ロケーション内ギャラリー*/
.location .slide_gallary { margin-top: clamp(60px, 10vw, 100px);}

/*流れ*/
.flow { margin-top: clamp(80px, 12vw, 120px);}
.flow .ttl_en_sub { margin-top: 2em;}
.box_con .btn-blu { margin-top: 1em;}
@media screen and (max-width:600px){
/*----------------------------------------------------------------------
 common(sp)
----------------------------------------------------------------------*/
.pc_only,.sp_none { display:none; }
[class*=btn-]>a { min-width:240px; font-size:16px;}

/*----------------------------------------------------------------------
 base(sp)
----------------------------------------------------------------------*/
body { font-size:14px; }
.common_header #h-link { font-size:12px; }
.common_header #h-link img[class*=ico-] { display:block; margin:0 auto 2px; }
.f-main { display: block; }
.f-nav { display: block; margin-top:6%; }
#h-nav>ul { font-size: .9em;}
.sub-gnav { width: 140%;}

/*----------------------------------------------------------------------
 top(sp)
----------------------------------------------------------------------*/
.sysItemBlock>ul { grid-template-columns: repeat(2, 1fr); gap: 2em 4%;}
.top_newarrival .sysItemBlock { margin-bottom: min(17vw, 82px);}
#top .top_newarrival ul { gap: 5% 4%;}
.top_furisode_hakama>.sysContent>.flex { flex-direction: column; }
.top_flow>.sysContent,.top_maedori>.sysContent { grid-template-columns: 1fr; margin-inline: 15px; }
.flow-link { font-size: 3vw; }
.sysItemBlock { margin-inline: 15px; width: auto;}

/* 振袖と袴 */
.top_furisode_hakama { padding:3% 0 2%; overflow: hidden;}
.top_furisode_hakama::after { display:none; }
.top_furisode_hakama>.sysContent>.flex { display:block; margin:10px; }
/* .top_furisode_hakama .cat-box { width:50%; }  モデル画像ありの時*/
.top_furisode_hakama .cat-box { width:100%; min-height: auto; padding-bottom: 2em;}
.top_furisode_hakama .cat-box:nth-child(2) { padding-bottom: 0;}
.top_furisode_hakama .cat-box ul { display: flex; flex-wrap: wrap;}
.top_furisode_hakama .cat-box ul li { width: 50%;}
.top_furisode_hakama .cat-box::before { width:min(100%,200px); height:18em; bottom:3em; left:auto !important; background-position-x:50%; }
/* .top_furisode_hakama .cat-box.furisode:before { right:-100%; }
.top_furisode_hakama .cat-box.hakama::before { right:-110%; } モデル画像ありの時*/
.top_furisode_hakama .cat-box.furisode:before,.top_furisode_hakama .cat-box.hakama::before {display: none;}
.top_furisode_hakama .cat-box li>a { border: solid 1px #eeeeee; border-top: none;}
.top_furisode_hakama .cat-box li:nth-child(even)>a { border-left: none;}


#top .top_newarrival li{
  width: 100% !important;
  padding:0 !important;
}
#top .top_newarrival li .sysItemName{
  padding-top:0; font-size: 12px;
}
#top .top_newarrival li .sysItemPrice{
  font-size:12px;
}

/*----------------------------------------------------------------------
ブログfeed
 *----------------------------------------------------------------------*/
#feed { grid-template-columns: repeat(2, 1fr);  gap: 2em 4%;}

/*----------------------------------------------------------------------
  商品カテゴリページ 
 *----------------------------------------------------------------------*/
 .sysItemSearchFormWord { width: 64%; margin: 0;}
 .sysItemSearchFormWord input { height: 37px;}
 .sysSearchButton { min-width: 20%; left: 2%; margin-bottom: .5em !important; padding: 0.3em 2em; -webkit-appearance: none; border-radius: 0;}
 .sysItemCategoryCtl { padding: 2.3em 2em;}
 .sysItemCategoryCtl a{ width: 48%; padding: 4px 8px; margin: 5px .5%; text-align: center;}
 .sysItemList ul.sysThumbnail { margin-top: .5em; gap: 2em 4%;}
 .sysItemList ul.sysThumbnail li { padding: 0;}
 .sysItemList ul.sysThumbnail li .itemDetailWrap { height: auto !important;}
 .sysItemList ul.sysThumbnail li .sysItemName a { padding-bottom: 0;}
 .sysItemList ul.sysThumbnail li .sysRetailPrice { font-size: 1.3em; letter-spacing: .05em;}
 .sysPagination { margin-top: 0;}
 .sysPagination ul li { width: 45px;}
 .sysPagination a { line-height: 30px;}
 .search-cat { width: 100%; margin: .8em 0 0; text-align: center; font-size: 1.1em;}

/*----------------------------------------------------------------------
 aishipRデフォルト(sp)
 *----------------------------------------------------------------------*/
.sysDisplayMobileNone{
  display:none !important;
}

/* 10-0 Only Smartphone
 *----------------------------------------------------------------------*/
#sysWrap{margin-top:120px;}
#sysMain,#sysAside{ width: 100%!important;}

#sysMain form + form { margin-top:5%; }

.sysMypage #sysWrap,
.sysMemberRegister #sysWrap{
  margin: 130px auto 0;
}

#sysFormIndex div#sysMain,
#sysFormConfirm div#sysMain,
#sysFormThanks div#sysMain{
  width: 98% !important;
  padding:20px 10px 30px !important;
    margin:10px auto;
}
.sysCart #sysMain,
.sysMypage div#sysMain,
.sysMemberRegister #sysMain,
#sysItemSearch div#sysMain{
    width: 98% !important;
  padding:20px 10px 30px !important;
    margin:0 auto;
}
.sysCart #sysMain {
  width: 94% !important;
  padding: 0 !important;
  margin: 0 auto;
}
.sysFormField label{display: block;}
#sysFormIndex .txtBlock{text-align: left;}
#sysMain{ margin-top: 0;}
.grid-col {
  float: none;
  width: 100%!important;
        margin-left: 0;
}
/*Header */
#sysHeader{ margin-bottom: 5px;}

/* Category Pankuzu */
.sysItemCategoryPankuzu {
    font-size: xx-small;
}

/* Archive Thumbnail Item */
.sysItemList ul.sysThumbnail { font-size: small;}
.sysItemList ul.sysThumbnail input { font-size: x-small;}

/* Order Area */
.orderArea { letter-spacing: normal;}
.orderArea > div {
    width: 100%;
    padding-right: 0;
    float: none;
}

/*header検索ボックス*/
.h_search{
  margin-top:30px;
}

/***********************************
  商品一覧
***********************************/
.sysItemList ul.sysThumbnail { grid-template-columns: repeat(2, 1fr);}
.sysItemList ul.sysThumbnail li { width: 100% !important;}


/***********************************
  商品詳細ページ
***********************************/
#sysItemDetail .item-form { margin-top: 1em;}
#sysItemDetail #sysMain article {
    max-width: 450px;
    width: 90% !important; margin: auto;
}

#sysItemDetail .sysRetailPrice { margin-block: 1em .5em !important;}
.sysRentalScheduleNotice font { font-size: 12px;}

#sysItemDetail .sysShare { text-align: center; padding: .5em 0 0;}

#sysItemDetail .sysCartButton { padding-block: 17px !important;}
#sysItemDetail .sysNumArea { text-align: center;}

#sysItemDetail #sysNumber { display: flex; align-items: center; justify-content: right; text-align: right;}
#sysItemDetail .sysForm select[name="num"] { max-width: 80px; min-width: auto; margin-left: 0;}
.sysRentalSchedulesCalendar th { min-width: 44.06px;}

/*
.sysItemName a{font-size: 12px;}*/
/*商品名*/
#sysItemDetail .sysItemName h1{
  font-size:22px;
  padding-bottom:5px;
  margin-bottom:20px;
}
#sysItemDetail .sysForm select{
  height:40px;
}
#sysItemDetail .sysSelectionDescription{margin: 5px 0 10px;}

/*数量増減*/
#sysItemDetail .sysNumArea button {
  width: 35%;
}
/*PRアイコン(商品カテゴリーページ)*/
#sysItemCategory #sysMain{padding: 5px 15px;}
.sysItemPrArea span{
        width: 48%;
        padding: 3px 0px;
        font-size: 10px;
}
#sysItemCategory input[type=submit]{margin-top: 0px;}
.sysAddSelection{font-size: 12px;}
.sysSelectionDescription{font-size: 10px;}
/*PRアイコン(商品詳細ページ)*/
.sysPr{margin-top: 10px;}
.sysPr span{
        width: 49%;
        font-size: 16px;
}
#sysItemDetail .sysForm select {
  min-width: 300px;
  display: inline-block;
  float: right;
}
#sysItemDetail .sysNumber select {
        min-width: 100px;
}

#sysItemDetail{
  padding-bottom:40px;
}

/*商品ページ用おすすめ商品*/
.itempage_recommend .sysItemBlock .sysHorizontal li{
  width:50%;
  padding:0 5px;
  margin-bottom:20px;
}
.itempage_recommend .sysItemName{
  font-size:12px;
}
.itempage_recommend .sysItemPrice{
  font-size:11px;
}

/*for demo 2017/01/12*/
.sysExplanation{
  float: none;
  width: 100%;
}

span.sp_newline{display: block}

/***********************************
  ヘッダー
***********************************/
.header_wrap{
  position: fixed;
  height: 120px;
  top: 0px; left: 0; right: 0;
  margin: auto;
  background: #fff;
  z-index: 120;
}
#sysHeader{
  width: 100%;
  margin: 0px auto;
}
.h_inner{margin: 0px 0 0;}
.header_h1_under, .header_h1{
  width: 100%;
  height: 20px;
  float: none;
  text-align: center;
  background: #ededed;
}
.header_h1_under a, .header_h1 a{
  display: none;
}
.head_title{
  font-size: 10px;
  font-weight: bold;
  height: 20px;
  line-height: 20px;
  letter-spacing: 1px;
}
.header_sp{
  width: 95%;
  margin: 0 2.5%;
  position: relative;
  text-align: center;
}
.header_sp #navBtn{
  position: absolute;
  top: 10px; left: 0;
}
.header_sp .spCart{
  position: absolute;
  top: 10px; right: 0;
}
.header_sp #navBtn img, .header_sp .spCart img{
  width: 40px;
  height: 40px;
}
.header_sp .spLogo img{
  width: 180px;
  margin-top: 15px;
}

/***********************************
  カート情報
***********************************/
#cartInfo{display: none;}

/* 確認画面の注意文 */
.check-notice .red { font-size: 1.1em;}


/***********************************
  ナビゲーション
***********************************/
#headNavigation .pcnone{display: block;}
#headNavigation .spnone{display: none;}
#headNavigation li.active{background: #fff;}
.h_navi{
  width: 100%;
  height: 40px;
}
#headNavigation li.tab1{
        width: 25%;
    margin-top:10px;
}
#headNavigation li.tab1 a{
        font-size: 12px;
        line-height: 15px;
        position: relative;
}
#headNavigation li.tab1:nth-of-type(5){
        display:none;
}

/*ナビゲーショントグル*/
.toggleNav{
  display: none;
  width: 100%;
  position: absolute;
  height: 0px; /*heightはjs制御*/
  top: 39px; left:0;
  z-index: 110;
         background: rgba(0,0,0,0);
  box-shadow:0px 0px 0px 0px #ccc;
  -moz-box-shadow:0px 0px 0px 0px #ccc;
  -webkit-box-shadow:0px 0px 0px 0px #ccc;
}
.toggleNav:hover{overflow: visible !important;}
#headNavigation ul.tab{
        position: relative;
}
.tabmenu .border:after{
  content:none;
}
.tabmenu li.tab1{
  position: static;
  border-right:1px solid #000;
}
.tabmenu li.tab1:nth-child(4){
  border-right:none;
}
.tabmenu li.tab1 a{font-size:14px;}
.tabmenu ul:after{
    display: block;
    content: "";
    clear: both;
}
.tabmenu li.tab2{
  width: 100%;
  height:auto;
  text-align: left;
  line-height:1;
  font-size: 18px;
  border-bottom: 1px dotted #ddd;
  position: relative;
  background: rgba(255,255,255,1);
}
.tabmenu li.tab2 a{
  display: block;
  position: relative;
  padding: 5px 15px;
  font-size: 14px !important;
  line-height: 40px !important;
    font-weight: bold;
}
#headNavigation li.tab2 a:after{display: none;}
.tabmenu li.tab2 a i{
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top:-7px;
}

.h_spnavi{
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0px; left: 0;
  background: rgba(220,220,220,0.9);
  z-index: 150;
  color: #444;
  display: none;
        overflow: auto;
}
#spNaviWrap{
  position: absolute;
  width: 100%;
  height: 1550px;
  top: 0px; left: -100%;
  background: rgba(225,225,225,1);
  z-index:  200;
  padding: 30px 10px 0;
        overflow: scroll;
}

/***********************************
  ログイン情報
***********************************/
.h_login .sysHeadline,.h_search .sysHeadline{
  text-align: center;
  font-size: 18px;
    margin-botom: 10px;
}
.h_login .sysContent{text-align: center;}
.h_login .sysFormItem{margin-bottom: 10px;}
.h_login .sysFormLabel{
  display: block;
  font-size: 12px;
  height: 20px;
  text-align: left;
  margin-bottom: 3px;
}
.h_login .sysLoginButton{
  width: 100%;
  margin: 10px 0%;
  border-radius:5px;
  background:#000;
  font-size: 15px;
  height: 35px;
  line-height: 10px;
}
.h_login li{
  border:1px solid #444;
  margin-bottom: 10px;
  font-size: 15px;
  height: 35px;
  line-height: 32px;
  text-align: center;
  border-radius:5px;
}
.h_login li a{
  font-size: 12px;
  padding: 0px 5px 5px 0px;
}

/***********************************
  ナビゲーションメニュー
***********************************/
#closeMenu{
  position: absolute;
  top: 15px; left: 15px;
  font-size: 15px;
}
#closeMenu span{
        font-size: 12px;
        margin: 0 10px;
        display: inline-block;
    cursor:pointer;
}
#closeMenu2{
        text-align: center;
        margin: 20px 0;
        border: 1px solid #444;
        height: 40px;
        line-height: 40px;
        font-size: 15px;
    border-radius:5px;
    cursor:pointer;
}
#closeMenu2 span{
        display: inline-block;
        margin: 0 10px;
}
#spNavMenu .navTitle{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
#spNavMenu{margin: 30px 0 0;}
#spNavMenu .spMenuList{
  height: auto;
  line-height: 40px;
  font-size: 15px;
  position: relative;
  border-bottom: 1px solid #aaa;
}
#spNavMenu .spMenuList a{
        display: block;
  padding-left: 15px;
}
#spNavMenu .spToggleNav{
  height: 270px;
  overflow: hidden;
}
#spNavMenu .spToggleNav li{
  height: 45px;
  line-height: 45px;
  font-size: 12px;
  border-bottom: 1px dotted #aaa;
}
#spNavMenu .spToggleNav li{padding-left: 20px;}
#spNavMenu .spToggleNav li:first-child{border-top: 1px solid #aaa}
#spNavMenu .spToggleNav li:last-child{border-bottom: 0;}

/***********************************
  フッター
***********************************/
.footer{
  margin: 30px 0 0;
  background: #fff;
  letter-spacing: 2px;
}
.footer .f_navi_all{
  width: 95%;
  margin: 0 auto;
  padding: 10px 2.5% 0;
}
.footer .f_navi h3{
  width: 100%;
  height: 25px;
  background: #424242;
  color: #fff;
  margin: 10px 0;
  font-size: 12px;
  line-height: 25px;
  border-radius: 10px;
}
.footer .f_navi ul{
  width: 100%;
  text-align: left;
  margin: 0 auto;
}
.footer .f_navi li{
  display: inline-block;
  height: 25px;
  padding: 0 3px;
  margin: 10px 0px 0;
  font-size: 15px;
  position: relative;
  border-right: 1px solid #aaa;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.footer .f_navi li i{
  position: absolute;
  font-size: 20px;
  line-height: 23px;
  right: 10px; top: 0;
}
.footer .f_navi li.sp_title{
  width: 100%;
  text-align: center;
  margin: 10px 0;
}

.footer .f_navi li.sp_title h5{
  position: relative;
  text-align: center;
  background: #fff;
}
.footer .f_navi li.sp_title h5 span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1em;
  background-color: #fff;
  text-align: left;
}
.footer .f_navi li.sp_title h5::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #222222;
}
.footer .f_navi li.sp_3column{
  width: 32%;
  margin-bottom: 5px;
}
.footer .f_navi li.sp_2column{
  width: 49%;
  margin-bottom: 5px;
}
.footer .f_navi li:after{width: 0;}
.footer .f_navi .b_none, .footer .f_navi .spb_none{border-right: 0px;}

.footer .f_gnav_all{
  background: #c3c3c3;
  padding: 0px 0 0px;
  letter-spacing: 2px;
  text-align: left;
}
.footer .f_gnav ul:after{
  display: block;
  content: "";
  clear: both;
}
.footer .f_gnav{
  width:100%;
  border-top: 1px solid #444;
  margin-bottom: 0;
  overflow: hidden;
}
.footer .f_gnav li{
  width: 50%;
  float: left;
  display: block;
  height: 45px;
  line-height: 45px;
  padding: 0px 0px 0 15px;
  font-size: 12px;
  position: relative;
  border-bottom: 1px solid #444;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.footer .f_gnav li i{
  position: absolute;
  font-size: 20px;
  line-height: 30px;
  right: 10px;
  top: 6px;
}
.footer .f_gnav li:nth-child(even){
  border-left: 1px solid #444;
}
.footer .f_gnav li:last-child{
  width:100%;
}
.footer .f_gnav li a{display: block;}
.footer .f_gnav .sp_wide{
  width: 100%;
  height: 38px;
  border-bottom: 0px;
}
.footer .f_gnav li:after{width: 0px;}
.footer .f_gnav{margin-bottom: 5px;}

.footer .f_copy{
  padding: 10px 5px;
  font-size: 10px;
}

@media screen and (max-width:320px) {
  .footer .telephone .telephone02 a {
      font-size: 27px;
  }
  .footer .f_gnav:nth-of-type(2) li:nth-child(3) a{
    font-size: 10px;
  }
}

/***********************************
  サイド
***********************************/
.side_search{
  width:95%;
  margin:0 auto 30px;
}
.side_navi_item,
.side_navi{
  width:95%;
  margin:0 auto;
}
.side_navi ul li.sysText a{
  padding:10px 5px !important;
}
.side_navi_item .sysHeadline,
.side_navi_item .sysContent{
  width:100% !important;
  margin:0 auto !important;
}
.side_navi_1{
  border-top:1px solid #000;
}

/***********************************
  共通パーツ
***********************************/
.sysTitle{
  width: 100%;
  margin: 30px auto!important;
  position: relative;
  text-align: center;
  font-size: 13px;
  letter-spacing: auto;
}
.sysTitle b{
  display: block;
  font-size: 12px;
  text-align: center;
  margin-top: 5px;
}
.sysTitle span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 10px 0 20px;
  background-color: #fff;
  text-align: center;
  font-weight: bold;
}
.sysTitle::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #222222;
}
.sysHeadline{
  width: 95%;
  margin: 30px auto!important;
  position: static;
  font-size: 20px;/*
  letter-spacing: 3px;*/
}
.sysHeadline b{
  width: 100%;
  display: block;
  font-size: 10px;
  text-align: center;
  border-top: 1px solid #222222;
  padding: 0 80px;
  margin-top: 3px;
  padding-top: 5px;
}
.sysTitle span, .sysHeadline span{
  position: relative;
  z-index: 0;
  display: inline-block;
  margin: 0;
  padding: 0;
  background-color: #fff;
  text-align: center;
}
.sysTitle::before, .sysHeadline::before {height: 0px;}
.contentsWrap{
  width: 90%;
  margin: 0 auto;
}

/***********************************
  特商法テーブルレイアウト
***********************************/
.p-law .sysTitle{width: 90%;}
#main_tradelaw, .main_tradelaw { border:none; }
#main_tradelaw dl , .main_tradelaw dl{ display:block; border-bottom:none; }

.shipFee{
  max-width: 1100px;
  margin: 20px auto
}
.shipFee .tableTitle{
  text-align: center;
  font-size: 12px;
}
table.shipFeeTable {
  width: 100%;
  margin: 0%;
    border-collapse: collapse;
  margin-bottom: 30px;
    text-align: left;
    line-height: 1.5;
}
.spThead{display: block;}
.pcThead{display: none;}
table.shipFeeTable thead th {
  font-size: 12px;
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    color: #fff;
  text-align: left;
}
table.shipFeeTable tbody th {
  font-size: 12px;
  display: block;
  width: 100%;
  border: 0px solid #ddd;
}
table.shipFeeTable tbody .sum{
  position: relative;
  padding: 25px 10px;
  text-align: center;
}
table.shipFeeTable tbody .sum i{
  position: absolute;
  color: #888;
  font-size: 35px;
  left: 0;
  right: 0px;
  margin: auto;
  bottom: -20px;
  z-index: 20;
}
table.shipFeeTable td {
  display: block;
    width: 100%;
    vertical-align: top;
  border: 0px;
}
table.shipFeeTable b{
  color: #D42E30;
  display: inline-block;
  padding: 0 3px;
  font-size: 1.2em;
}

/***********************************
  2カラムレイアウト
***********************************/
.col2Style h2.pattern03{
  height: 35px;
  line-height: 35px;
  font-size: 18px;
  padding: 0 0px 3px 10px;
  margin: 0 0 15px;
  border-bottom: 1px solid #6843ac;
}
.col2Style .txtBlock li{margin: 10px 0;}
.col2Style .imgWrap img{
  width: 80%;
  margin: 0px 10%;
}
.col2Style .floatWrap img{
  width: 80%;
        margin: 0px 10%;
  float: none;
}
.col2Style .floatWrap .txt{
  padding-top: 5px;
  margin-left: 0px
}
.col2Style .floatImg .imgWrap{
  width: 100%;
  float: none;
}
.col2Style .floatImg .imgWrap img{
  width: 80%;
  margin: 20px 10%;
}

/***********************************
  お買物ガイド
***********************************/
.indexList li{
  padding: 3px 5px;
  font-size: 12px;
}
.guideBlock{
        padding-top: 0;
        maergin-top: 30px;
}

/***********************************
  ご利用ガイド
***********************************/
.f_guide{margin-top: 30px;}
.f_guide .sysContent{
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.f_guide .Title{
  font-size: 20px;
  text-align: center;
  padding: 20px 0 0px;
}
.f_guide .guideBlock{
  width: 95%;
  margin: 50px 2.5%;
  display: block;
  padding: 30px 0px 5px;
  border: 1px solid #424242;
  border-radius: 10px;
  position: relative;
}
.f_guide .guide01{padding-right: 0px;}
.f_guide .guide02{padding-left: 0px;}
.f_guide .guideTitle{
  width: 200px;
  margin: auto;
  text-align: center;
  margin-bottom: 10px;
  position: absolute;
  top: -15px; left:0; right: 0;
  background: #fff;
  font-size: 15px;
}
.f_guide p{
  font-size: 15px;
  line-height: 20px;
  margin: 5px 0  !important;
  text-align: left;
        padding: 0 10px 0 15px;
}
.f_guide img{width: 100%;}
.f_guide .mt{margin-top: 10px;}
.f_guide .smaller{font-size: 12px;}
.f_guide a.f_guide_btn{
  margin: 20px auto;
  float: none;
}
.f_guide .freedial{
  font-size:30px;
}
.list_step li .bg-wht { padding: .7em;}


/* カート内商品数表示*/
button.itemCount2{
        display: none;
  position: absolute;
  bottom: 0px;
  right: 0px;
  background: rgba(207,15,42,0.9);
  border:none;
  width: 18px;
  height: 18px;
  border-radius: 10px;
  text-align: center;
  line-height: 15px;
  font-size: 10px;
  color: #fff;
  font-weight: bold;
}
/*商品購入ステップ*/
.steps ul{width: 350px;}
.steps li{
  float: left;
  padding: 0 6px;
  height: 150px;
}
.steps li a{height: 150px !important;}
.steps li img{height: 150px;}
@media screen and (max-width: 350px){
/*商品購入ステップ*/
.steps ul{width: 275px;}
.steps li{
  float: left;
  padding: 0 2px;
  height: 100px;
}
.steps li a{height: 100px !important;}
.steps li img{height: 100px;}
}
/* 決済ページ*/
#sysPayment #sysWrap,
#sysConfirm #sysWrap,
#sysThanks #sysWrap,
#sysCartError #sysMain{
         width: 95% !important;
        margin-left: 2.5%;
}
#sysBillingAddress form{
        width: 95%;
        padding: 30px 20px;
        margin: 0 auto;
}
#sysPayment #sysMain .sysFormLabel{line-height: 10px;}
#sysDestination #sysMain{
           width: 95%;
            border: 1px solid #aaa;
            padding: 20px 20px !important;
            margin: 30px auto;
}

/***********************************
  マイページ
***********************************/
.sysMypage .sysMypageNav form{width: 100% !important;}

/***********************************
  新規会員登録
***********************************/
#sysMemberRegisterIndex .sysNextSubmit{
        width: 100%;
         float: none;
         margin-right: 0%;
         border-radius: 5px;
         height: 50px;
         font-size: 15px;
}
#sysMemberRegisterIndex .sysButton[type="submit"]{
         width: 100%;
         float: none;
        margin-right: 0%;
        border-radius: 5px;
        height: 50px;
        font-size: 15px;
        margin-top: 0px;
}
#sysMypageLogin .sysLoginButton{
        width: 100%;
        float:none;
        margin-right: 0%;
}
#sysMypageLogin .sysButton{
        width: 100%;
        margin-left: 0%;
        margin-top: 0px;
}

/***********************************
  カートページ
***********************************/
/*ドメイン*/
.sysAcceptDomainArea .sysAcceptDomain a{
  padding:0;
  font-size:10px;
}

/***********************************
  ボタンデザイン
***********************************/
.common_btn{
  margin: 20px auto 30px;
}

/***********************************
  TOPページ
***********************************/
/*.トップスライダー*/
#slideShow{height: 130px;}
.top_slider{}
.owl-dots .owl-dot {
  top:0;
}
.owl-dots .owl-dot span{ width:7px; height:7px; margin:10px 5px;}

.owl-nav [class*=owl-] {
  margin-top: -25px;
  width: 15px !important;
  height: 28px !important;
}
.owl-nav .owl-prev{
  left:20%;
  background: url(/img/common/controls.png) no-repeat 0 0;
  background-size:30px !important;
}
.owl-nav .owl-next{
  right:20%;
  background: url(/img/common/controls.png) no-repeat -15px 0;
  background-size:30px !important;
}
.owl-nav .owl-prev:hover {
  background-position: 0 0;
}
.owl-nav .owl-next:hover {
  background-position: -15px 0;
}

/*リード*/
.top_lead { padding-inline: 15px;}

/*特集一覧*/
.top_features{
  overflow:hidden;
}
.top_recommend_item ul{
  font-size:0;
  text-align:left;
}
.top_features li{
  width: 46%;
  margin: 2%;
}
.top_features li:nth-child(1),
.top_features li:nth-child(2){
  position:relative;
  z-index:10;
  width:96%;
}
.top_features li:nth-child(1) p,
.top_features li:nth-child(2) p{
  position:absolute;
  left:0;
  bottom:0;
  z-index:15;
  margin:0;
  padding:10px;
  background: rgba(255, 255, 255, 0.8) none repeat scroll 0 0;
}

.sysItemName>a { font-size: 1.08em;}
.sysItemPrice { font-size: 18px !important; letter-spacing: .05em;}

/*おすすめ商品、ランキング*/
.top_ranking_item li{
  width: 30% !important;
  margin: 0 1.5% 30px !important;
  padding:0 !important;
}
.top_recommend_item li .sysItemName,
.top_ranking_item li .sysItemName{
  padding-top:0;
}
.top_recommend_item li .sysItemPrice,
.top_ranking_item li .sysItemPrice{
  font-size:12px;
}
.top_recommend_item li .sysCartButton,
.top_ranking_item li .sysCartButton{
  width:100%;
  font-size:10px;
  letter-spacing:-1px;
}

.top_recommend_item_seijin .sysHorizontal, .top_recommend_item_sotugyou .sysHorizontal {
  grid-template-columns: repeat(2, 1fr); gap: 2em 4%;
}
.top_recommend_item_seijin .sysHorizontal li, .top_recommend_item_sotugyou .sysHorizontal li {
  padding: 0 !important;
}

/*おすすめ商品*/
.top_recommend_item li{
  padding:5px !important;
}

/***********************************
  ワンページカート
***********************************/
/*情報入力ページ調整*/
.sysOpcBody .header_wrap {
  border-bottom: none;
}
.sysOpcBody img {
  max-width: 100%;
}
.sysOpcBody div#sysWrap {
  margin: 20px auto 0;
}
.sysCart #sysMain,
.sysOpcBody #sysMain{
  border: none;
}
.sysOpcBody div#sysMain {
  padding: 0 3%;
  margin-bottom: 0;
}
.opcCommonInputSelect,
.opcCommonButton {
  /*width: 49% !important;*/
}
.opcConfirm_inputStatus,
.opcConfirm_inputStatus_disable,
.opcConfirm_order,
.opcConfirm_order_disable {
  width: 94% !important;
}
.opcConfirm_inputStatus {
  margin-bottom: .5em;
}
.opcItem_increaseNumButton_edit,
.opcItem_decreaseNumButton_edit {
  width: 40px !important;
}
.opcCommonButtonGroup {
  margin-top: 1em;
}
.opcBillingAddress_genderMaleAndLabelGroup_edit,
.opcBillingAddress_genderFemaleAndLabelGroup_edit {
  width: 30% !important;
}
.opcBillingAddress_prefState_edit {
  margin: 5px 0;
  width: 100% !important;
}
.opcBillingAddress .opcCommonReferenceLabel {
  width: 70px;
  display: inline-block;
  position: relative;
}
.opcBillingAddress .opcCommonReferenceLabel::after {
  position: absolute;
  right: 0;
}
.opcDeliveryMethod .opcCommonReferenceLabel {
  width: 123px;
  display: inline-block;
  position: relative;
}
.opcDeliveryMethod .opcCommonReferenceLabel::after {
  position: absolute;
  right: 0;
}
.opcBillingAddress_addressGroup {
  width: calc(100% - 80px) !important;
}
.opcRemarks_remark_edit {
  width: 100% !important;
}
.opcDeliveryAddressEditDialog_directChangeButtonAndLabelGroup .opcCommonButton {
  margin: 0 0 .5em !important;
  width: 100% !important;
}
.opcOrderSummary_totalPriceLabel {
  font-size: 14px !important;
}
/*完了ページ調整*/
#sysThanks #sysMain {
  width: 100% !important;
  padding: 0 !important;
}

/***********************************
  商品詳細
***********************************/
#sysItemDetail #sysCartInForm { display: initial;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalSchedulesCalendars { width: auto;}
#sysItemDetail #sysCartInForm .sysRentalSchedules .sysRentalSchedulesCalendarArea { padding-inline: 1em;}
#sysItemDetail .sysItemImages { padding-right: 0;}

/*レンタルアイテム一覧*/
.rental_items .inner { width: 90%; margin: auto;}
.rental_items .rental_wrap { flex-direction: column-reverse; gap: 1em; padding-top: 0;}
.rental_items .img_box { width: 50%; margin-inline: auto -15px; margin-top: -8em;}
.list_rental {grid-template-columns: repeat(3,1fr);}
.list_rental li { min-height: 0; padding: 2em 1em 1em;}
.list_rental li img { max-height: 80px; max-width: 90%;}
.list_rental li.mini img { max-width: 70%;}

.rental_items_guid .sec_txt { text-align: left;}

.day_flow li .sankaku { padding: 0.6em; font-size: 1em; line-height: 1.5;}
.day_flow li .sankaku::before { border-top: 40px solid transparent; border-bottom: 40px solid transparent; border-left: 2vw solid #e1e3ec; right: -1.8vw;}

.flow_list li { padding: 0;}
.flow_list li .txt { padding: 1em;}
.flow_list li .step_wrap { position: initial;}
.flow_list li .box_arrow { justify-content: center; padding: 1.4em 1em 1em 1em; margin-right: 0;}
.flow_list li .box_arrow::after { content: none;}


/***********************************
  ご利用ガイド
***********************************/
/*common*/
.box_con { padding: 1.3em 1.5em !important;}

/*btn*/
.list_btn { gap: 0;}
.list_btn li { width: 85%;}
.list_btn li:nth-child(n + 2) { margin-top: .95em;}
.list_btn li:last-child { margin-top: 1.85em;}
.list_btn li a { padding: 1em;}
.btn_contact a { width: 80%; margin: .8em auto; }
.list_btn li.bg_red { width: 85%;}

/*table*/
.table { margin-top: 1.7em; border: none;}
.table > div dt { width: 100% !important;}
.table > div + div { margin-top: .5em; border-top: none;}
.table > div dt { justify-content: left; padding: .6em 1.5em;}
.table > div dd { padding: 1em 0;}


/***********************************
  前撮りページ
***********************************/

/*common*/
.mv_ttl .en { margin-top: .2em;}

/*mv*/
.mv { min-height: 400px;}
#maedori_hakama .mv { background: url(/img/maedori/sotugyo/mv.jpg) no-repeat center left 26% / cover;}
#maedori_hakama .mv_ttl { right: auto; top: 57%;}

/*キャンペーンバナー*/
.cam_main { margin-block: .1em !important;}

/*メッセージ*/
.message .img_box { width: 100%;}
.message .inner { gap: 2em;}

/*ページ内リンク*/
.btn_list_wrap .list_btn li:nth-child(3) { margin-top: .95em;}

/*プラン*/
.plan .img_box img { width: 100%;}
.price_box { box-shadow: 6px 6px 0 rgba(143, 117, 80, .15);}
.price_box .price_info { letter-spacing: 0;}

/*プラン内容*/
.plan_detail_list { flex-wrap: wrap;}
.plan_detail_list > li { width: 100%;}
.plan_detail_list > li .deco > ul { display: flex; flex-wrap: wrap; gap: 0 1em; padding: 1em 1.3em;}
.plan_detail_list > li + li::before { left: 50%; top: 0; transform: translateX(-50%) translateY(-105%);}

/*ギャラリー*/
.slide_gallary li img { max-width: 320px !important;}

/*ロケーション*/
.location .lead_box .img_box { width: 100%;}
.location .lead_box { gap: 2em;}
.location .lead_box:nth-child(2) { flex-direction: column;}
.location .detail { margin-top: 0;}
.location .detail .price_info { font-size: 16px; letter-spacing: 3px;}
.price_box2 .disc2 { grid-template-columns: 1fr;}
#maedori_furisode .btn-blu>a { padding-inline: 1.5em;}
.price_box .btn-blu>a,.box_con .btn-blu>a { width: 100%;}

.box_con .btn-blu { margin-top: 1em;}
.list_step .ttl_arrow .box_arrow { min-width: 16%; margin-right: 1.2em;}
.list_step li .ttl_arrow { font-size: 1.09em;}
}
@media screen and (min-width:601px) and (max-width:1100px){
/*----------------------------------------------------------------------
 common(tb)
----------------------------------------------------------------------*/
.pc_only,.sp_only { display:none; }

/*----------------------------------------------------------------------
 base(tb)
----------------------------------------------------------------------*/
body { font-size:15px; }
.common_header #h-link img.ico-member { display:block; margin:0 auto 2px; }
.f-main { display: block; }

.f-nav { margin-top:min(6%,60px); width:100%; }

/*----------------------------------------------------------------------
 top(tb)
----------------------------------------------------------------------*/
#top .top_newarrival li:nth-child(n+7){ display:none; }
.flow-link { font-size: 1.3vw; }
#top .sysItemPrice { font-size: 20px; }

/*----------------------------------------------------------------------
 aishipRデフォルト(tb)
 *----------------------------------------------------------------------*/

.sysDisplayTabletNone{
  display:none !important;
}

/* 20-0 Only Tablet
 *----------------------------------------------------------------------*/
#sysWrap{margin-top:120px;}
div#sysMain,div#sysAside{
  width: 100% !important;
  float: none;
}
.sysMypage #sysWrap,
.sysMemberRegister #sysWrap{
  margin: 130px auto 0;
}
#sysFormIndex div#sysMain,
#sysFormConfirm div#sysMain,
#sysFormThanks div#sysMain,
.sysMypage div#sysMain,
.sysMemberRegister #sysMain,
#sysItemSearch div#sysMain{
        width: 95% !important;
        margin: 30px auto;
        padding: 20px !important;
}
.sysCart #sysMain{
   width: 92% !important;
    margin: 0 auto;
  padding: 0;
}
.sysFormField label{display: block;}

/* 決済ページ*/
#sysPayment #sysWrap,
#sysConfirm #sysWrap,
#sysThanks #sysWrap,
#sysCartError #sysMain{
         width: 95% !important;
        margin-left: 2.5%;
}
#sysPayment #sysMain .sysFormLabel{line-height: 10px;}
#sysBillingAddress form{
        width: 95%;
        padding: 30px 20px;
        margin: 0 auto;
}
#sysDestination #sysMain{
           width: 95%;
            border: 1px solid #aaa;
            padding: 20px 20px !important;
            margin: 30px auto;
}
/*header検索ボックス*/
.h_search{
  margin-top:100px;
}

/***********************************
  商品詳細ページ
***********************************/
#sysItemCategory #sysMain{padding:  30px 20px;}
#sysItemCategory input[type=submit]{margin-top: 0px;}
#sysItemDetail #sysMain article {
    width: 95% !important; margin: auto;
}
#sysItemDetail .sysCategoryPankuzu {
  margin-bottom: 20px;
}
#sysItemDetail .sysItemName h1 {
  font-size: 15px;
}
#sysItemDetail .sysItemId {
  margin: 0 0 10px 0 !important;
  text-align: left !important;
}
#sysItemDetail .sysMainImage {
  max-width: 700px;
  margin: 0 auto;
}
#sysItemDetail .sysImageList {
  max-width: 700px;
  margin: 0 auto 20px;
}
#sysItemDetail .sysImageList li {
  display: inline-block;
  max-width: 60px;
  line-height: 0;
}
#sysItemDetail .sysReview,
#sysItemDetail .description_left,
#sysItemDetail .sysDescription,
#sysItemDetail .sysForm,
#sysItemDetail .sysRetailPrice,
#sysItemDetail .sysImageDescription {
  max-width: 700px;
  margin: 0 auto 10px auto !important;
}
#sysItemDetail .sysForm select {
  min-width: 350px;
  display: inline-block;
  float: none!important;
}
#sysItemDetail #sysNumber{text-align:right;}
.sysItemPrArea span{
        width: 48%;
        font-size: 14px;
}
.sysPr span{font-size: 10px;}

/*レンタルアイテム一覧*/
.rental_items .inner { width: 95%; margin: auto;}
.rental_items .rental_wrap { gap: 1em; padding-top: .8em;}
.list_rental {grid-template-columns: repeat(3,1fr);}
.list_rental li { min-height: 130px;}

/***********************************
  ヘッダー
***********************************/
.header_wrap{
  position: fixed;
  height: 120px;
  top: 0px; left: 0; right: 0;
  margin: auto;
  background: #fff;
  z-index: 120;
}
#sysHeader{
  width: 100%;
  margin: 0px auto;
}
.h_inner{margin: 0px 0 0;}
.header_h1_under, .header_h1{
  width: 100%;
  height: 20px;
  float: none;
  text-align: center;
  background: #ededed;
}
.header_h1_under a, .header_h1 a{
  display: none;
}
.head_title{
  font-size: 10px;
  font-weight: bold;
  height: 20px;
  line-height: 20px;
  letter-spacing: 1px;
}
.header_sp{
  width: 95%;
  margin: 0 2.5%;
  position: relative;
  text-align: center;
}
.header_sp #navBtn{
  position: absolute;
  top: 10px; left: 0;
}
.header_sp .spCart{
  position: absolute;
  top: 10px; right: 0;
}
.header_sp #navBtn img, .header_sp .spCart img{
  width: 40px;
  height: 40px;
}
.header_sp .spLogo img{
  width: 180px;
  margin-top: 15px;
}

/***********************************
  カート情報
***********************************/
#cartInfo{display: none;}

/***********************************
  ナビゲーション
***********************************/
#headNavigation .pcnone{display: block;}
#headNavigation .spnone{display: none;}
#headNavigation li.active{background: #fff;}
.h_navi{
  width: 100%;
  height: 40px;
}
#headNavigation li.tab1{
        width: 25%;
    margin-top:10px;
}
#headNavigation li.tab1 a{
        font-size: 12px;
        line-height: 15px;
        position: relative;
}
#headNavigation li.tab1:nth-of-type(5){
        display:none;
}
/*ナビゲーショントグル*/
.toggleNav{
  display: none;
  width: 100%;
  position: absolute;
  height: 0px; /*heightはjs制御*/
  top: 39px; left:0;
  z-index: 110;
         background: rgba(0,0,0,0);
  box-shadow:0px 0px 0px 0px #ccc;
  -moz-box-shadow:0px 0px 0px 0px #ccc;
  -webkit-box-shadow:0px 0px 0px 0px #ccc;
}
.toggleNav:hover{overflow: visible !important;}
#headNavigation ul.tab{
        position: relative;
}
.tabmenu .border:after{
  content:none;
}
.tabmenu li.tab1{
  position: static;
  border-right:1px solid #000;
}
.tabmenu li.tab1:nth-child(4){
  border-right:none;
}
.tabmenu li.tab1{position: static;}
.tabmenu li.tab1 a{font-size:14px;}
.tabmenu ul:after{
    display: block;
    content: "";
    clear: both;
}
.tabmenu li.tab2{
  width: 100%;
  height:auto;
  text-align: left;
  line-height:1;
  font-size: 18px;
  border-bottom: 1px dotted #ddd;
  position: relative;
  background: rgba(255,255,255,1);
}
.tabmenu li.tab2 a{
  display: block;
  position: relative;
  padding: 5px 15px;
  font-size: 14px !important;
  line-height: 40px !important;
    font-weight: bold;
}
#headNavigation li.tab2 a:after{display: none;}
.tabmenu li.tab2 a i{
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top:-7px;
}

.h_spnavi{
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0px; left: 0;
  background: rgba(220,220,220,0.9);
  z-index: 150;
  color: #444;
  display:none;
    overflow: auto;
}
#spNaviWrap{
  position: absolute;
  width: 100%;
  height: 1400px;
  top: 0px; left: -100%;
  background: rgba(225,225,225,1);
  z-index:  200;
  padding: 80px 10px 50px;
       overflow: scroll;
}
/***********************************
  ログイン情報
***********************************/
.h_login{
        max-width: 700px;
        width: 90%;
        margin: 0 auto;
}
.h_login .sysHeadline{
  text-align: center;
  font-size: 25px;
    margin-botom: 10px;
}
.h_login .sysContent{text-align: center;}
.h_login .sysFormItem{margin-bottom: 10px;}
.h_login .sysFormLabel{
  display: block;
  font-size: 15px;
  height: 25px;
  text-align: left;
  margin-bottom: 0px;
}
.h_login .sysLoginButton{
  width: 100%;
  margin: 15px 0%;
  border-radius: 0;
  border:1px solid #444;
  font-size: 15px;
  height: 50px;
  line-height: 10px;
}
.h_login li{
  border:1px solid #444;
  margin-bottom: 15px;
  height: 50px;
  line-height: 45px;
  text-align: center;
}
.h_login li a{
  font-size: 15px;
  padding: 0px 5px 5px 0px;
}

/***********************************
  ナビゲーションメニュー
***********************************/
#closeMenu{
  position: absolute;
  top: 15px; left: 15px;
  font-size: 20px;
}
#closeMenu span{
        font-size: 15px;
        margin: 0 10px;
        display: inline-block;
}
#closeMenu2{
        text-align: center;
        margin: 20px 0;
        border: 1px solid #aaa;
        height: 40px;
        line-height: 40px;
        font-size: 15px;
}
#closeMenu2 span{
        display: inline-block;
        margin: 0 10px;
}
#spNavMenu .navTitle{
  text-align: center;
  font-size: 25px;
  font-weight: bold;
}
#spNavMenu{
        max-width: 800px;
        margin: 80px auto 0;
        width: 90%;
}
#spNavMenu .spMenuList{
  height: auto;
  line-height: 40px;
  font-size: 15px;
  position: relative;
  border-bottom: 1px solid #aaa;
}
#spNavMenu .spMenuList i{
  position: absolute;
  line-height: 40px;
  right: 10px;
  font-size: 18px;
}
#spNavMenu .spMenuList a{
        display: block;
  padding-left: 15px;
}
#spNavMenu .spToggleNav{
  height: 200px;
  overflow: hidden;
}
#spNavMenu .spToggleNav li{
  height: 30px;
  line-height: 30px;
  font-size: 12px;
  border-bottom: 1px dotted #aaa;
}
#spNavMenu .spToggleNav li:first-child{border-top: 1px solid #aaa}
#spNavMenu .spToggleNav li:last-child{border-bottom: 0;}

/***********************************
  フッター
***********************************/
.footer .f_gnav_all{
  background: #c3c3c3;
  padding: 0px 0 0px;
  letter-spacing: 2px;
  text-align: left;
}
.footer .f_gnav ul:after{
  display: block;
  content: "";
  clear: both;
}
.footer .f_gnav{
  width:100%;
  border-top: 1px solid #444;
  margin-bottom:0;
  overflow: hidden;
}
.footer .f_gnav li{
  width: 50%;
  float: left;
  display: block;
  height: 40px;
  line-height: 40px;
  padding: 0px 0px 0 15px;
  font-size: 12px;
  position: relative;
  border-bottom: 1px solid #444;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.footer .f_gnav li i{
  position: absolute;
  font-size: 20px;
  line-height: 30px;
  right: 10px; top: 5px;
}
.footer .f_gnav li:nth-child(even){
  border-left: 1px solid #444;
}
.footer .f_gnav li:last-child{
  width:100%;
}
.footer .f_gnav li a{display: block;}
.footer .f_gnav .sp_wide{
  width: 100%;
  height: 35px;
  border-bottom: 0px;
}
.footer .f_gnav li:after{width: 0px;}

/***********************************
  サイド
***********************************/
.side_search{
  width:95%;
  margin:0 auto 30px;
}
.side_navi_item,
.side_navi{
  width:95%;
  margin:0 auto;
}
.side_navi ul li.sysText a{
  padding:10px 5px !important;
}
.side_navi_item .sysHeadline,
.side_navi_item .sysContent{
  width:100% !important;
  margin:0 auto !important;
}
.side_navi_item .sysContent li,
.side_navi .sysContent li{
  float:left !important;
  width:50% !important;
}
.side_navi_1{
  border-top:1px solid #000;
}

/***********************************
  共通パーツ
***********************************/
.sysTitle{
  width: 600px;
  margin: 50px auto!important;
  position: relative;
  text-align: center;
  font-size: 20px;
  letter-spacing: auto;
}
.sysTitle b{
  display: block;
  font-size: 15px;
  text-align: center;
  margin-top: 5px;
}
.sysTitle span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 40px;
  background-color: #fff;
  text-align: center;
  font-weight: bold;
}
.sysTitle::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #222222;
}

.contentsWrap{
  width: 90%;
  margin: 0 auto;
}

/***********************************
  商法テーブルレイアウト
***********************************/
.p-law .sysTitle{max-width: 600px;}
.p-law .sysTitle span {
  font-size: 22px;
  padding: 0 40px;
}

#main_tradelaw{width: 90%;}
.shipFee{
  width: 90%;
  margin: 50px auto;
}
.shipFee h3{font-size: 16px;}
table.shipFeeTable .newLine{display: block;}
table.shipFeeTable tbody th {
  width: 500px;
  vertical-align: middle;
}
table.shipFeeTable td{
    width: 500px;
  font-size: 15px;
  vertical-align: middle;
}

/***********************************
   フッター部分のご利用ガイド
***********************************/
.f_guide{margin-top: 50px;}
.f_guide .sysContent{width: 100%;}
.f_guide .Title{
  font-size: 15px;
  padding: 20px 0 30px;
}
.f_guide .guideBlock{
  width: 50%;
  padding: 0 2%;
  padding-bottom:30px;
}
.f_guide .guide01{padding-right: 20px;}
.f_guide .guide02{padding-left: 20px;}
.f_guide .freedial{
  font-size:30px;
}
.f_guide a{
  display:block;
  width:200px;
}

/***********************************
  カート内商品数表示
***********************************/
button.itemCount2{
        display:none;
  position: absolute;
  bottom: 0px;
  right: 0px;
  background: rgba(207,15,42,0.9);
  border:none;
  width: 18px;
  height: 18px;
  border-radius: 10px;
  text-align: center;
  line-height: 15px;
  font-size: 10px;
  color: #fff;
  font-weight: bold;
}
/***********************************
  商品購入ステップ
***********************************/
.steps ul{width: 550px;}
.steps li{
  float: left;
  padding: 0 2px;
  height: 180px;
}
.steps li a{height: 180px !important;}
.steps li img{height: 180px;}

/***********************************
  TOPページ
***********************************/
/*.トップスライダー*/
#slideShow{height: 190px;}

.top_slider{}

/***********************************
  ワンページカート
***********************************/

/*情報入力ページ調整*/
.sysOpcBody .header_wrap {
  border-bottom: none;
}
.sysOpcBody div#sysWrap {
  margin: 20px auto 0;
}
.sysCart #sysMain,
.sysOpcBody #sysMain{
  border: none;
}
.sysOpcBody div#sysMain {
  margin-bottom: 0;
}
.sysOpcBody img {
  max-width: 100%;
}
.sysOpcBody div#sysMain {
  padding: 0 4%;
}
.opcConfirm_inputStatus,
.opcConfirm_inputStatus_disable,
.opcConfirm_order,
.opcConfirm_order_disable {
  width: 94% !important;
}

/*btn*/
.list_btn li { width: 38%;}
.list_btn li:nth-child(3) { margin-top: 1.6em;}
.btn_contact a { width: 60%; }

/***********************************
  カテゴリページ
***********************************/
.sysItemList ul.sysThumbnail li .sysItemName a { padding-bottom: 0;}
.sysItemList ul.sysThumbnail li .sysRetailPrice { font-size: 1.3em; letter-spacing: .05em;}

/***********************************
  前撮り
***********************************/
#maedori_furisode .mv { min-height: 460px;}
.plan_detail_list { flex-wrap: wrap;}
.plan_detail_list > li { width: 70%;}
.plan_detail_list > li { width: 70%;}
.plan_detail_list > li + li::before { left: 50%; top: 0; transform: translateX(-50%) translateY(-105%);}
}
@media screen and (min-width:1101px){
/*----------------------------------------------------------------------
 common(pc)
----------------------------------------------------------------------*/
body { letter-spacing: .18em; }
.pc_none,.sp_only { display:none; }

/* 電話番号リンク PCで無効 */
a[href^='tel:'] { cursor:default; pointer-events:none; }

/* hover scale */
a .scale { -webkit-transition:all .5s ease-out; transition:all .5s ease-out; }
a:hover .scale  { -webkit-transform: scale(1.05); transform: scale(1.05); }

/*----------------------------------------------------------------------
 base(pc)
----------------------------------------------------------------------*/
.h-link .cart { margin-left:1em; }
.f-main { padding:min(6%,60px) 0; }
.f-link { margin-top: 40px; }


/*----------------------------------------------------------------------
 top(pc)
----------------------------------------------------------------------*/
.sysItemBlock>ul { grid-template-columns:repeat(4, 1fr); column-gap: max(1%, (60px / 3)); }
/* .sysItemBlock>ul>li:nth-child(n+7){ display:flex; } */
#top .sysItemPrice { font-size: 22px; letter-spacing: .05em; }

/*----------------------------------------------------------------------
商品一覧
 *----------------------------------------------------------------------*/
 .sysItemList ul.sysThumbnail { grid-template-columns:repeat(4, 1fr); column-gap: max(2%, (100px / 3));}
 .sysRetailPrice { font-size: 22px; letter-spacing: .05em;}


/*----------------------------------------------------------------------
 aishipRデフォルト(pc)
 *----------------------------------------------------------------------*/
.sysDisplayPcNone{
  display:none !important;
}
}
/* #END_OF_RESOURCE_FILE */
