@charset "utf-8";

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

body {
  line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display:block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}

a {
  margin:0;
  padding:0;
  font-size:100%;
  color: inherit;
  vertical-align:baseline;
  background:transparent;
  text-decoration: none;
}

table {
  border-collapse:collapse;
  border-spacing:0;
}

input, select {
  vertical-align:middle;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
}
html, body {
	margin: 0;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
p {
  margin: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
ul {
  list-style: none;
}

@media screen and (min-width: 769px) {
  .sp {
    display: none!important;
  }
}
@media screen and (max-width: 768px) {
  body {
    overflow-x: hidden;
  }
  .pc {
    display: none!important;
  }
}

/*------------
  common
------------*/

.container {
  position: relative;
  width: 1200px;
  margin: 0 auto;
}

@media screen and (max-width: 1280px) {
  .container {
    width: 93%;
  }
}

@media screen and (max-width: 768px) {
  .container {
    width: 100%;
    padding: 0 5px;
  }
}


.sec-ttl {
  display: flex;
  align-items: center;
  margin-left: 80px;
  font-size: 38px;
  p {
    flex-shrink: 0;
    margin-right: 65px;
  }
  hr {
    width: 100%;
  }
}

@media screen and (max-width: 1280px) {
  .sec-ttl {
    margin-left: 5.0%;
    font-size: 32px;
    p {
      margin-right: 5.0%;
    }
  }
}

@media screen and (max-width: 768px) {
  .sec-ttl {
    margin-left: 10px;
    font-size: 22px;
    p {
      margin-right: 20px;
    }
  }
}

.caution-sp {
  display: none;
}

@media screen and (max-width: 980px) {
  .caution-sp {
    display: block;
    padding: 10px;
    text-align: center;
    font-size: 12px;
    line-height: 1;
    color: #FFFFFF;
    background: #AD3434;
    small {
      font-size: 12px;
    }
  }
}

/*------------
  breadcrumb
------------*/

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  a {
    position: relative;
    margin-top: 5px;
    margin-right: 20px;
    padding-right: 20px;
    &:before {
      content: '>';
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(50%, -50%);
    }
  }
  p {
    margin-top: 5px;
  }
}



/*------------
  header
------------*/

.header {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  padding: 15px 0 0;
  color: #FFFFFF;
  background: #000000;
  .header-sp {
    display: none;
  }
  .header-wrapper {
    display: flex;
    align-items: flex-end;
    padding-bottom: 15px;
  }
  .header-logo {
    width: 268px;
    margin-right: auto;
  }
  .header-caution {
    margin-right: 40px;
    font-size: 16px;
    line-height: 1.5;
    small {
      font-size: 14px;
    }
  }
  .header-nav {
    margin-right: 15px;
    .nav-menu {
      display: flex;
      justify-content: flex-end;
      list-style: none;
      li {
        & + li {
          margin-left: 40px;
        }
        a {
          display: flex;
          align-items: flex-end;
          font-size: 14px;
        }
        span {
          display: block;
          width: 33px;
        }
        p {
          margin: 0 0 5px 10px;
        }
      }
    }
    .nav-info {
      display: flex;
      justify-content: flex-end;
      align-items: flex-end;
      margin-top: 15px;
      span {
        display: block;
        width: 19px;
      }
      p {
        margin-left: 10px;
        font-size: 26px;
      }
      small {
        margin-left: 20px;
        font-size: 14px;
      }
    }
  }
}

@media screen and (max-width: 1280px) {
  .header {
    .header-logo {
      width: 240px;
    }
    .header-caution {
      margin-right: 3.1%;
      font-size: 13px;
      small {
        font-size: 11px;
      }
    }
    .header-nav {
      margin-right: 1.1%;
      .nav-menu {
        flex-wrap: nowrap;
        li {
          & + li {
            margin-left: 3.1%;
          }
          a {
            display: block;
            text-align: center;
            font-size: 12px;
          }
          span {
            display: block;
            width: 35%;
            margin: 0 auto;
          }
          p {
            margin: 10px auto 0;
          }
        }
      }
      .nav-info {
        margin-top: 10px;
        span {
          display: block;
          width: 3.5%;
        }
        p {
          margin-left: 2%;
          font-size: 18px;
        }
        small {
          margin-left: 4%;
          font-size: 11px;
        }
      }
    }
  }
}

@media screen and (max-width: 980px) {
  .header {
    position: relative;
    padding: 0;
    &._fixed {
      position: fixed;
    }
    .header-wrapper {
      align-items: center;
      padding: 10px 25px;
    }
    .header-logo {
      width: 50%;
      max-width: 217px;
    }
    .header-toggle {
      position: relative;
      width: 29px;
      height: 19px;
      margin-left: auto;
      cursor: pointer;
      span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 3px;
        background: #FFFFFF;
        &:nth-of-type(1) {
          top: 0;
        }
        &:nth-of-type(2) {
          top: 0;
          bottom: 0;
          margin: auto;
        }
        &:nth-of-type(3) {
          bottom: 0;
        }
      }
    }
    .header-caution {
      margin: 0;
      padding: 10px;
      text-align: center;
      font-size: 12px;
      line-height: 1;
      color: #FFFFFF;
      background: #AD3434;
      small {
        font-size: 12px;
      }
    }
    .header-nav {
      width: 100%;
      margin: 0 auto;
      .nav-menu {
        li {
          width: 20%;
          padding: 5px 0;
          color: #FFFFFF;
          background: #000000;
          & + li {
            margin: 0;
          }
          a {
            font-size: 10px;
          }
          span {
            width: auto;
            height: 21px;
            img {
              width: auto;
              height: 100%;
            }
          }
          p {
            margin: 5px auto 0;
          }
        }
      }
      .nav-info {
        display: block;
        margin: 10px auto;
        text-align: center;
        small {
          margin: 0;
          text-align: center;
          font-size: 14px;
        }
      }
    }
    .header-pc {
      display: none;
    }
    .header-sp {
      display: block;
    }
  }
}


/*------------
  nav
------------*/

.nav {
  position: relative;
  color: #000000;
  background: #FFFFFF;
  .nav-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .nav-item {
    margin: 0 25px;
    padding: 25px 0;
    p {
      font-size: 18px;
      cursor: pointer;
    }
    a {
      font-size: 18px;
    }
  }
  .nav-toggle {
    display: none;
    position: absolute;
    z-index: 99;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 5px 40px;
    background: #FFFFFFF2;
  }
  .nav-list {
    display: flex;
    flex-wrap: wrap;
    li {
      width: calc(100% / 3);
      a {
        display: flex;
        align-items: center;
        width: 100%;
        margin: 10px 0;
        font-size: 18px;
        &:before {
          content: '';
          display: block;
          width: 83px;
          height: 66px;
          margin-right: 20px;
          background-repeat: no-repeat;
          background-position: center;
          background-size: contain;
        }
      }
      &.cat-35500 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
          }
        }
      }
      &.cat-37020 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
          }
        }
      }
      &.cat-37026 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
          }
        }
      }
      &.cat-37028 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
          }
        }
      }
      &.cat-37030 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
          }
        }
      }
      &.cat-37039 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
          }
        }
      }
      &.cat-49828 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
          }
        }
      }
      &.cat-55312 {
        a {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
          }
        }
        p {
          &:before {
            background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
          }
        }
      }
      &.cat-all {
        display: flex;
        align-items: center;
        a {
          &:before {
            height: 33px;
            background-image: url('https://image.raku-uru.jp/01/14095/25/category_icon08_1602492373729.png');
          }
        }
      }
    }
  }
  .nav-search {
    position: relative;
    width: 275px;
    margin-left: 70px;
    input {
      width: 100%;
      padding: 10px 35px 10px 15px;
      font-size: 14px;
      border: 1px solid #707070;
      border-radius: 4px;
    }
    button {
      position: absolute;
      top: 50%;
      right: 15px;
      transform: translateY(-50%);
      width: 17px;
      padding: 0;
      border: none;
      background: transparent;
      cursor: pointer;
    }
  }
  .nav-sp {
    display: none;
  }
}

@media screen and (max-width: 1280px) {
  .nav {
    .nav-item {
      margin: 0 2%;
      padding: 25px 0;
      p {
        font-size: 15px;
      }
      a {
        font-size: 15px;
      }
    }
    .nav-toggle {
      width: 100%;
      padding: 5px 4%;
    }
    .nav-list {
      li {
        a {
          display: flex;
          align-items: center;
          width: 100%;
          margin: 10px 0;
          font-size: 12px;
        }
        span {
          display: block;
          width: 10%;
          margin-right: 5%;
        }
      }
    }
    .nav-search {
      position: relative;
      width: 25%;
      margin-left: 5%;
      input {
        width: 100%;
        padding: 10px 35px 10px 15px;
        font-size: 14px;
        border: 1px solid #707070;
        border-radius: 4px;
      }
      button {
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%);
        width: 17px;
        padding: 0;
        border: none;
        background: transparent;
        cursor: pointer;
      }
    }
  }
}

@media screen and (max-width: 980px) {
  .nav {
    position: fixed;
    top: 0;
    right: 0;
    transform: translateX(100%);
    width: 90%;
    max-width: 400px;
    height: 100%;
    transition: transform .5s;
    &._open {
      transform: translateX(0);
    }
    .container {
      width: 100%;
      padding: 0 5px;
    }
    .nav-close {
      display: flex;
      align-items: center;
      padding: 10px;
      font-size: 12px;
      background: #EEEEEE;
      cursor: pointer;
      &:before {
        content: '✕';
        margin-right: 10px;
        font-size: 28px;
      }
      &._bottom {
        margin-top: 45px;
        background: transparent;
      }
    }
    .nav-scroll {
      overflow-x: visible;
      overflow-y: scroll;
      width: calc(100% + 10px);
      height: calc(100vh - 48px);
      margin: 0 -5px;
    }
    .nav-wrapper {
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .nav-item {
      margin: 0 25px;
      padding: 25px 0;
      p {
        font-size: 18px;
        cursor: pointer;
      }
    }
    .nav-toggle {
      display: none;
      position: absolute;
      z-index: 99;
      top: 100%;
      left: 0;
      width: 100%;
      padding: 5px 40px;
      background: #FFFFFFF2;
    }
    .nav-list {
      display: flex;
      flex-wrap: wrap;
      li {
        width: calc(100% / 3);
        a {
          display: flex;
          align-items: center;
          width: 100%;
          margin: 10px 0;
          font-size: 18px;
        }
        span {
          display: block;
          width: 83px;
          margin-right: 20px;
          &._other {
            width: 46px;
          }
        }
      }
    }
    .nav-searchbox {
      position: relative;
      width: 80%;
      margin: 30px auto;
      p {
        margin-bottom: 15px;
        text-align: center;
      }
    }
    .nav-search {
      width: 100%;
      margin: 0 auto;
    }
    .nav-select {
      padding: 0 20px;
      .select-item {
        margin-top: 20px;
        .item-menu {
          display: flex;
          align-items: center;
        }
        .item-toggle {
          display: flex;
          margin-left: 35px;
          p {
            width: 17px;
            margin-right: 10px;
            cursor: pointer;
            &._close {
              display: none;
            }
          }
        }
        &._open {
          .item-toggle {
            p {
              &._open {
                display: none;
              }
              &._close {
                display: block;
              }
            }
          }
        }
      }
      p {
        font-size: 18px;
      }
      .select-toggle {
        display: none;
        margin-top: 20px;
        list-style: none;
        li {
          & + li {
            margin-top: 20px;
          }
          &:nth-pf-type(n + 3) {
            margin-top: 20px;
          }
          a {
            display: flex;
            align-items: center;
            font-size: 16px;
            span {
              flex-shrink: 0;
              width: 59px;
              margin-right: 30px;
              &._other {
                height: 39px;
                img {
                  width: 100%;
                  height: 100%;
                  object-fit: contain;
                }
              }
            }
          }
          &.cat-35500 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
              }
            }
          }
          &.cat-37020 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
              }
            }
          }
          &.cat-37026 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
              }
            }
          }
          &.cat-37028 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
              }
            }
          }
          &.cat-37030 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
              }
            }
          }
          &.cat-37039 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
              }
            }
          }
          &.cat-49828 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
              }
            }
          }
          &.cat-55312 {
            a {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
              }
            }
            p {
              &:before {
                background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
              }
            }
          }
          &.cat-all {
            display: flex;
            align-items: center;
            a {
              &:before {
                height: 33px;
                background-image: url('https://image.raku-uru.jp/01/14095/25/category_icon08_1602492373729.png');
              }
            }
          }
        }
      }
      .select-price {
        display: flex;
        flex-wrap: wrap;
        li {
          width: calc((100% - 20px) / 2);
          margin-right: 20px;
          &:nth-of-type(2n) {
            margin-right: 0;
          }
          &:nth-of-type(n + 3) {
            margin-top: 20px;
          }
          a {
            display: block;
            width: 100%;
            padding: 15px 0;
            text-align: center;
            font-size: 16px;
            color: #FFFFFF;
            background: #010752;
            border-radius: 8px;
            &._high {
              background: #830056;
            }
          }
        }
      }
      .select-sublist {
        display: none;
        padding: 20px 0 0;
      }
    }
    .nav-pc {
      display: none;
    }
    .nav-sp {
      display: block;
    }
  }
}


/*------------
  footer
------------*/

.footer {
  position: relative;
  padding: 20px 0;
  color: #FFFFFF;
  background: #424242;
  &:before {
    content: '';
    position: absolute;
    z-index: -1;
    bottom: calc(100% - 78px);
    left: 50%;
    transform: translateX(-50%);
    width: 1640px;
    height: 430px;
    background: url("https://image.raku-uru.jp/01/14095/464/icon_footer_1735141391598.png") no-repeat center/contain;
  }
  .footer-wrapper {
    display: flex;
    align-items: center;
  }
  .footer-info {
    .info-logo {
      width: 278px;
    }
    .info-sns {
      display: flex;
      margin-top: 5px;
      a {
        height: 22px;
        & + a {
          margin-left: 25px;
        }
        img {
          width: auto;
          height: 100%;
        }
      }
    }
    .info-cright {
      margin-top: 90px;
      font-size: 10px;
    }
  }
  .footer-calender {
    margin: 0 auto;
    .calender-ttl {
      text-align: center;
    }
    .calender-area {
      display: flex;
      justify-content: space-between;
      width: 376px;
      margin: 15px auto 10px;
    }
    .calender-box {
      width: 177px;
      padding: 10px 0;
      background: #FFFFFF;
      .box-ttl {
        margin-bottom: 10px;
        padding: 4px 6px;
        text-align: center;
        font-size: 13px;
        font-weight: bold;
        color: #666;
        border-bottom: #d0d0d0 solid 1px;
      }
    }
    .calender-table {
      margin: 0 auto 5px;
      color: #333333;
      th {
        font-size: 11px;
        font-weight: bold;
        padding: 3px;
        text-align: center;
        &.sat {
          color: #2768A0;
        }
        &.sun {
          color: #9D400F;
        }
      }
      td {
        font-size: 11px;
        font-weight: normal;
        padding: 3px;
        text-align: center;
        &.sat {
          color: #2768A0;
        }
        &.sun {
          color: #9D400F;
        }
        &.event1 {
          .table-date {
            color: #FCFCFC;
            background-color: #C1AC4B;
          }
        }
        &.event2 {
          .table-date {
            color: #FCFCFC;
            background-color: #01BCBA;
          }
        }
        &.event3 {
          .table-date {
            color: #333333;
            background-color: #ECECEC;
          }
        }
      }
      .table-date {
        display: inline-block;
        width: 16px;
        height: 16px;
        text-align: center;
        line-height: 16px;
      }
    }
    .calender-caption {
      width: fit-content;
      margin: 10px auto 0;
      padding: 5px;
      color: #333333;
      background: #FFFFFF;
      p {
        display: flex;
        align-items: center;
        font-size: 12px;
        &:before {
          content: '';
          display: block;
          width: 18px;
          height: 18px;
          margin-right: 5px;
        }
      }
      .event1 {
        &:before {
          background-color: #C1AC4B;
        }
      }
    }
  }
  .footer-menu {
    margin-right: 100px;
    p {
      & + p {
        margin-top: 15px;
      }
    }
    a {
      display: flex;
      align-items: center;
      font-size: 15px;
      &:before {
        content: '';
        width: 16px;
        height: 16px;
        margin-right: 10px;
        background: url("https://image.raku-uru.jp/01/14095/468/icon_menu_1735141393678.png") no-repeat center/contain;
      }
    }
  }
}

@media screen and (max-width: 1280px) {
  .footer {
    &:before {
      bottom: 90%;
      width: 100%;
      background: url("https://image.raku-uru.jp/01/14095/464/icon_footer_1735141391598.png") no-repeat center bottom/contain;
    }
    .footer-wrapper {
      flex-wrap: wrap;
    }
    .footer-info {
      order: 3;
      width: 100%;
      .info-logo {
        width: 300px;
        margin: 0 auto;
      }
      .info-sns {
        justify-content: center;
        margin-top: 5px;
        a {
          margin: 0 15px;
        }
      }
      .info-cright {
        margin-top: 40px;
        text-align: center;
        font-size: 12px;
      }
    }
    .footer-calender {
      order: 1;
      width: 100%;
      .calender-ttl {
        text-align: center;
      }
      .calender-area {
        display: flex;
        justify-content: space-between;
        width: 376px;
        margin: 15px auto 10px;
      }
      .calender-box {
        width: 177px;
        padding: 10px 0;
        background: #FFFFFF;
        .box-ttl {
          margin-bottom: 10px;
          padding: 4px 6px;
          text-align: center;
          font-size: 13px;
          font-weight: bold;
          color: #666;
          border-bottom: #d0d0d0 solid 1px;
        }
      }
      .calender-table {
        margin: 0 auto 5px;
        color: #333333;
        th {
          font-size: 11px;
          font-weight: bold;
          padding: 3px;
          text-align: center;
          &.sat {
            color: #2768A0;
          }
          &.sun {
            color: #9D400F;
          }
        }
        td {
          font-size: 11px;
          font-weight: normal;
          padding: 3px;
          text-align: center;
          &.sat {
            color: #2768A0;
          }
          &.sun {
            color: #9D400F;
          }
        }
        .table-date {
          display: inline-block;
          width: 16px;
          height: 16px;
          text-align: center;
          line-height: 16px;
        }
      }
      .calender-caption {
        width: fit-content;
        margin: 10px auto 0;
        padding: 5px;
        color: #333333;
        background: #FFFFFF;
        p {
          display: flex;
          align-items: center;
          font-size: 12px;
          &:before {
            content: '';
            display: block;
            width: 18px;
            height: 18px;
            margin-right: 5px;
          }
        }
        .event1 {
          &:before {
            background-color: #C1AC4B;
          }
        }
      }
    }
    .footer-menu {
      order: 2;
      width: 500px;
      margin: 20px auto;
      p {
        & + p {
          margin-top: 0;
        }
        &:last-of-type {
          a {
            border-bottom: 1px solid #FFFFFF;
          }
        }
      }
      a {
        position: relative;
        padding: 15px 0;
        border-top: 1px solid #FFFFFF;
        &:before {
          position: absolute;
          top: 50%;
          right: 0;
          transform: translateY(-50%);
        }
      }
    }
  }
}

@media screen and (max-width: 768px) {
  .footer {
    &:before {
      bottom: 99%;
      width: 100%;
      background: url("https://image.raku-uru.jp/01/14095/464/icon_footer_1735141391598.png") no-repeat center bottom/contain;
    }
    .footer-info {
      .info-logo {
        width: 80%;
      }
      .info-sns {
        a {
          & + a {
            margin-left: 10px;
          }
        }
      }
      .info-cright {
        margin-top: 50px;
        font-size: 12px;
      }
    }
    .footer-calender {
      margin: 0 auto;
      .calender-ttl {
        text-align: center;
      }
      .calender-area {
        display: block;
        width: 100%;
      }
      .calender-box {
        width: fit-content;
        margin: 0 auto;
        padding: 10px;
        & + .calender-box {
          margin-top: 15px;
        }
        .box-ttl {
          margin-bottom: 10px;
          padding: 4px 6px;
          font-size: 18px;
        }
      }
      .calender-table {
        margin: 0 auto 5px;
        color: #333333;
        th {
          font-size: 20px;
        }
        td {
          font-size: 20px;
        }
        .table-date {
          width: 28px;
          height: 28px;
          line-height: 28px;
        }
      }
      .calender-caption {
        p {
          font-size: 16px;
        }
      }
    }
    .footer-menu {
      width: 100%;
      margin: 20px auto;
      p {
        & + p {
          margin-top: 0;
        }
      }
      a {
        padding: 25px 0;
        font-size: 18px;
        &:before {
          width: 20px;
          height: 20px;
        }
      }
    }
  }
}


/*------------
  side
------------*/

.side {
  width: 282px;
  margin-top: 55px;
  h3 {
    font-size: 24px;
    font-weight: 700;
  }
  .side-item {
    margin-top: 20px;
    a {
      display: flex;
      align-items: center;
      font-size: 16px;
      cursor: pointer;
      &:before {
        content: '';
        display: block;
        width: 63px;
        height: 46px;
        margin-right: 20px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
      }
    }
    p {
      display: flex;
      align-items: center;
      font-size: 16px;
      cursor: pointer;
      &:before {
        content: '';
        display: block;
        width: 63px;
        height: 46px;
        margin-right: 20px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
      }
    }
    &.cat-35500 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/30/category_icon03_1602492687099.png');
        }
      }
    }
    &.cat-37020 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/28/category_icon05_1602492686583.png');
        }
      }
    }
    &.cat-37026 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/490/category_icon09_1738050767767.jpg');
        }
      }
    }
    &.cat-37028 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/27/category_icon06_1602492686379.png');
        }
      }
    }
    &.cat-37030 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/39/category_icon06_1603774246348.png');
        }
      }
    }
    &.cat-37039 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/26/category_icon07_1602492686097.png');
        }
      }
    }
    &.cat-49828 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/489/category_icon10_1738050767395.jpg');
        }
      }
    }
    &.cat-55312 {
      & > a {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
        }
      }
      & > p {
        &:before {
          background-image: url('https://image.raku-uru.jp/01/14095/482/category_icon08_1736439657915.jpg');
        }
      }
    }
    &.cat-all {
      & > a {
        &:before {
          height: 33px;
          background-image: url('https://image.raku-uru.jp/01/14095/25/category_icon08_1602492373729.png');
        }
      }
      & > p {
        &:before {
          height: 33px;
          background-image: url('https://image.raku-uru.jp/01/14095/25/category_icon08_1602492373729.png');
        }
      }
    }
    .item-sublist {
      display: none;
      a {
        padding: 15px 0;
        &:before {
          display: none;
        }
      }
      p {
        padding: 15px 0;
        &:before {
          display: none;
        }
      }
    }
  }
  .side-calender {
    margin: 0 auto;
    .calender-ttl {
      text-align: center;
    }
    .calender-area {
      width: 177px;
      margin: 30px 0 10px;
    }
    .calender-box {
      width: 100%;
      padding: 10px 0;
      background: #FFFFFF;
      & + .calender-box {
        margin-top: 5px;
      }
      .box-ttl {
        margin-bottom: 10px;
        padding: 4px 6px;
        text-align: center;
        font-size: 13px;
        font-weight: bold;
        color: #666;
        border-bottom: #d0d0d0 solid 1px;
      }
    }
    .calender-table {
      margin: 0 auto 5px;
      color: #333333;
      th {
        font-size: 11px;
        font-weight: bold;
        padding: 3px;
        text-align: center;
        &.sat {
          color: #2768A0;
        }
        &.sun {
          color: #9D400F;
        }
      }
      td {
        font-size: 11px;
        font-weight: normal;
        padding: 3px;
        text-align: center;
        &.sat {
          color: #2768A0;
        }
        &.sun {
          color: #9D400F;
        }
        &.event1 {
          .table-date {
            color: #FCFCFC;
            background-color: #C1AC4B;
          }
        }
        &.event2 {
          .table-date {
            color: #FCFCFC;
            background-color: #01BCBA;
          }
        }
        &.event3 {
          .table-date {
            color: #333333;
            background-color: #ECECEC;
          }
        }
      }
      .table-date {
        display: inline-block;
        width: 16px;
        height: 16px;
        text-align: center;
        line-height: 16px;
      }
    }
    .calender-caption {
      width: fit-content;
      margin: 10px 0 0;
      padding: 5px;
      color: #333333;
      background: #FFFFFF;
      p {
        display: flex;
        align-items: center;
        font-size: 12px;
        &:before {
          content: '';
          display: block;
          width: 18px;
          height: 18px;
          margin-right: 5px;
        }
      }
      .event1 {
        &:before {
          background-color: #C1AC4B;
        }
      }
    }
  }
}

@media screen and (max-width: 1280px) {
  .side {
    width: 25%;
    margin-top: 40px;
    h3 {
      font-size: 22px;
    }
    .side-item {
      a {
        font-size: 14px;
        span {
          width: 30%;
          margin-right: 5%;
          &._other {
            height: 30px;
          }
        }
      }
    }
  }
}

@media screen and (max-width: 768px) {
  .side {
    display: none;
  }
}


/*------------
  modal
------------*/

.modal {
  display: none;
  position: absolute;
  z-index: 9999;
  top: 50%;
  left: 50%;
  margin-top: -200px;
  margin-left: -320px;
  background-color: #FFFFFF;
  .modal-inner {
    position: relative;
    width: 100%;
    height: auto;
  }
  .modal-img {
    max-width: 648px;
    max-height: 648px;
    img {
      display: block;
      width: auto;
      height: auto;
      max-width: 648px;
      max-height: 648px;
    }
  }
  .modal-close {
    position: absolute;
    top: -52px;
    right: -4px;
    a {
      display: block;
      width: 40px;
      height: 40px;
      background-image: url(https://image.raku-uru.jp/cms/yt00001/img/btn-modal-close.png);
      background-repeat: no-repeat;
      background-size: cover;
    }
  }
}
.modal-open {
  .modal {
    display: block;
  }
}


@media screen and (max-width: 768px) {
  .modal {
    width: 300px;
    margin-top: -110px;
    margin-left: -150px;
    .modal-img {
      width: 100%;
      img {
        width: 100%;
        height: auto;
      }
    }
    .modal-close {
      position: absolute;
      top: -30px;
      right: -4px;
      a {
        display: block;
        width: 24px;
        height: 24px;
        background-image: url(https://image.raku-uru.jp/cms/yt00001/img/btn-modal-close.png);
        background-repeat: no-repeat;
        background-size: cover;
      }
    }
  }
}


/*------------
  overlay
------------*/

.overlay {
  display: none;
  position: fixed;
  z-index: 9998;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .8);
}

.modal-open {
  .overlay {
    display: block;
  }
}



/*------------
  wysiwyg
------------*/

.wysiwyg-data html, .wysiwyg-data address,
.wysiwyg-data blockquote,
.wysiwyg-data body, .wysiwyg-data dd,.wysiwyg-data  div,
.wysiwyg-data dl, .wysiwyg-data dt, .wysiwyg-data fieldset, .wysiwyg-data form,
.wysiwyg-data frame, .wysiwyg-data frameset,
.wysiwyg-data h1, .wysiwyg-data h2, .wysiwyg-data h3, .wysiwyg-data h4,
.wysiwyg-data h5, .wysiwyg-data h6, .wysiwyg-data noframes,
.wysiwyg-data ol, .wysiwyg-data p, .wysiwyg-data ul, .wysiwyg-data center,
.wysiwyg-data dir, .wysiwyg-data hr, .wysiwyg-data menu, .wysiwyg-data pre   { display: block; unicode-bidi: embed;}
.wysiwyg-data li              { display: list-item;}
.wysiwyg-data head            { display: none;}
.wysiwyg-data table           { display: table; max-width: 100%; }
.wysiwyg-data tr              { display: table-row;}
.wysiwyg-data thead           { display: table-header-group;}
.wysiwyg-data tbody           { display: table-row-group;}
.wysiwyg-data tfoot           { display: table-footer-group;}
.wysiwyg-data col             { display: table-column;}
.wysiwyg-data colgroup        { display: table-column-group;}
.wysiwyg-data td, .wysiwyg-data th          { display: table-cell;}
.wysiwyg-data caption         { display: table-caption;}
.wysiwyg-data th              { font-weight: bolder; text-align: center;}
.wysiwyg-data caption         { text-align: center;}
.wysiwyg-data body            { margin: 8px;}
.wysiwyg-data h1              { font-size: 2em; margin: .67em 0;}
.wysiwyg-data h2              { font-size: 1.5em; margin: .75em 0;}
.wysiwyg-data h3              { font-size: 1.17em; margin: .83em 0;}
.wysiwyg-data h4, .wysiwyg-data p,
.wysiwyg-data blockquote, .wysiwyg-data ul,
.wysiwyg-data fieldset, .wysiwyg-data form,
.wysiwyg-data ol, .wysiwyg-data dl, .wysiwyg-data dir,
.wysiwyg-data menu            { margin: 1.12em 0; color: #333;}
.wysiwyg-data h5              { font-size: .83em; margin: 1.5em 0;}
.wysiwyg-data h6              { font-size: .75em; margin: 1.67em 0;}
.wysiwyg-data h1, .wysiwyg-data h2, .wysiwyg-data h3, .wysiwyg-data h4,
.wysiwyg-data h5, .wysiwyg-data h6, .wysiwyg-data b,
.wysiwyg-data strong          { font-weight: bolder; color: #333;}
.wysiwyg-data blockquote      { margin-left: 40px; margin-right: 40px;}
.wysiwyg-data i, .wysiwyg-data cite, .wysiwyg-data em,
.wysiwyg-data var, .wysiwyg-data address    { font-style: italic;}
.wysiwyg-data pre, .wysiwyg-data tt, .wysiwyg-data code,
.wysiwyg-data kbd, .wysiwyg-data samp       { font-family: monospace;}
.wysiwyg-data pre             { white-space: pre;}
.wysiwyg-data button, .wysiwyg-data textarea,
.wysiwyg-data input, .wysiwyg-data select   { display: inline-block;}
.wysiwyg-data big             { font-size: 1.17em;}
.wysiwyg-data small, .wysiwyg-data sub, .wysiwyg-data sup { font-size: .83em;}
.wysiwyg-data sub             { vertical-align: sub;}
.wysiwyg-data sup             { vertical-align: super;}
.wysiwyg-data table           { border-spacing: 2px;;}
.wysiwyg-data thead, .wysiwyg-data tbody,
.wysiwyg-data tfoot           { vertical-align: middle;}
.wysiwyg-data td, .wysiwyg-data th, .wysiwyg-data tr      { vertical-align: inherit;}
.wysiwyg-data s, .wysiwyg-data strike, .wysiwyg-data del  { text-decoration: line-through;}
.wysiwyg-data hr              { border: 1px inset;}
.wysiwyg-data ol, .wysiwyg-data ul, .wysiwyg-data dir,
.wysiwyg-data menu, .wysiwyg-data dd        { margin-left: 40px;}
.wysiwyg-data ol              { list-style-type: decimal;}
.wysiwyg-data ol ul, .wysiwyg-data ul ol,
.wysiwyg-data ul ul, .wysiwyg-data ol ol    { margin-top: 0; margin-bottom: 0;}
.wysiwyg-data u, .wysiwyg-data ins          { text-decoration: underline;}
.wysiwyg-data br:before       { content: "\A"; white-space: pre-line;}
.wysiwyg-data center          { text-align: center;}
.wysiwyg-data :link, .wysiwyg-data :visited { text-decoration: underline;}
.wysiwyg-data :focus          { outline: thin dotted invert;}

.wysiwig-data a{color: #000;}
.wysiwig-data a:hover{color: #c45c0a;}

.wysiwyg-data table{border:solid 1px;border-collapse:separate;border-color:#c0c0c0 #c0c0c0 #808080 #808080;border-spacing:2px; width:auto;}
.wysiwyg-data table tr td{border:solid 1px;border-color:#808080 #808080 #c0c0c0 #c0c0c0; padding:0;}
.item-comment .wysiwyg-data table tr td{background:#fff;}
.wysiwyg-data ul, .wysiwyg-data ul li{list-style-type: disc;}
.wysiwyg-data ol{list-style-type: decimal;}

/* Begin bidirectionality settings (do not change) */
.wysiwyg-data BDO[DIR="ltr"]  { direction: ltr; unicode-bidi: bidi-override;}
.wysiwyg-data BDO[DIR="rtl"]  { direction: rtl; unicode-bidi: bidi-override;}

.wysiwyg-data *[DIR="ltr"]    { direction: ltr; unicode-bidi: embed;}
.wysiwyg-data *[DIR="rtl"]    { direction: rtl; unicode-bidi: embed;}

@media print {
.wysiwyg-data h1            { page-break-before: always;}
.wysiwyg-data h1, .wysiwyg-data h2, .wysiwyg-data h3,
.wysiwyg-data h4, .wysiwyg-data h5, .wysiwyg-data h6    { page-break-after: avoid;}
.wysiwyg-data ul, .wysiwyg-data ol, .wysiwyg-data dl    { page-break-before: avoid;}
}


.shopping-guid{}
.shopping-guid h2{ background-color: #001139; color: #fff; padding: 4px 10px; }
.shopping-guid h3{ border-bottom: solid 1px #333; }
.shopping-guid .faq{ margin-left: 10px; }
.shopping-guid .faq dt{ font-weight: bold; }
.shopping-guid .faq dt:before{ content: 'Q:'; }
.shopping-guid .faq dd{ margin-left: 0; padding: 4px 10px 20px 20px; position: relative; }
.shopping-guid .faq dd:before{ content: 'A:'; position: absolute; top: 4px; left: 3px; }

.bg-white{ background-color: #fff; padding: 10px; }

.item_custom_field {
 width: 100% !important;
}


/*------------
  page
------------*/

.page {
  padding: 40px 0 230px;
  background: url("https://image.raku-uru.jp/01/14095/474/new_bg_1735141606940.png") repeat;
  .page-wrapper {
    display: flex;
    margin-top: 50px;
  }
}

@media screen and (max-width: 768px) {
  .page {
    padding: 20px 0 150px;
    .page-wrapper {
      margin-top: 20px;
    }
  }
}


/*
  page-main
------------*/

.page-main {
  width: 812px;
  margin-left: auto;
  font-size: 16px;
  line-height: 1.5;
  h2 {
    padding-bottom: 15px;
    text-align: center;
    font-size: 38px;
    font-weight: 700;
    border-bottom: 1px solid #707070;
  }
  .main-red {
    font-weight: 700;
    color: #FF0000;
  }
  .main-box {
    margin-top: 40px;
    h3 {
      font-size: 24px;
      font-weight: 700;
      small {
        font-size: 16px;
      }
    }
  }
  .main-item {
    margin: 30px 0 0 25px;
    font-size: 18px;
    line-height: 1.5;
    & > p {
      cursor: pointer;
    }
    .item-trigger {
      tetx-decoration: underline;
    }
    .item-toggle {
      display: none;
      margin-top: 20px;
      font-size: 16px;
      line-height: 1.31;
      a {
        font-weight: 700;
        text-decoration: underline;
      }
    }
  }
}

@media screen and (max-width: 1280px) {
  .page-main {
    width: 70%;
    h2 {
      font-size: 30px;
    }
    .main-box {
      h3 {
        font-size: 20px;
      }
    }
    .main-item {
      font-size: 16px;
      .item-toggle {
        font-size: 14px;
      }
    }
  }
}

@media screen and (max-width: 768px) {
  .page-main {
    width: 100%;
    h2 {
      font-size: 26px;
    }
    .main-box {
      h3 {
        font-size: 18px;
      }
    }
    .main-item {
      margin: 20px auto 0;
      font-size: 16px;
      .item-toggle {
        font-size: 14px;
      }
    }
  }
}


/*
  postage-table
------------*/

.postage-table {
  width: 100%;
  font-size: 15px;
  th {
    width: 200px;
    padding: 20px 0;
    text-align: left;
    font-weight: 700;
    vertical-align: middle;
  }
  td {
    padding: 20px 0;
    text-align: left;
    vertical-align: middle;
  }
  table {
    width: 100%;
    background: #FFFFFF;
    thead {
      th {
        color: #FFFFFF;
        background: #999999;
      }
      td {
        color: #FFFFFF;
        background: #999999;
      }
    }
    tbody {
      tr {
        &:nth-of-type(2n) {
          th {
            background: #EFEFEF;
          }
          td {
            background: #EFEFEF;
          }
        }
      }
    }
    th {
      min-width: 100px;
      padding: 3px 4px 2px;
      border: 0;
      line-height: 1.1;
    }
    td {
      padding: 3px 4px 2px;
      border: 0;
      text-align: center;
      line-height: 1.1;
    }
  }
}

@media screen and (max-width: 1280px) {
  .postage-table {
    th {
      width: 150px;
    }
  }
}

@media screen and (max-width: 768px) {
  .postage-table {
    th {
      display: block;
      width: 100%;
      padding: 20px 0 0;
    }
    td {
      display: block;
      width: 100%;
    }
    table {
      width: 100%;
      background: #FFFFFF;
      thead {
        th {
          display: table-cell;
        }
        td {
          display: table-cell;
        }
      }
      tbody {
        tr {
          &:nth-of-type(2n) {
            th {
              background: #EFEFEF;
            }
            td {
              background: #EFEFEF;
            }
          }
        }
      }
      th {
        display: table-cell;
        width: auto;
      }
      td {
        display: table-cell;
        width: auto;
      }
    }
  }
}

/*
  about-tbl
------------*/

.about-tbl {
  width: 100%;
  border-top: 1px solid #D0D0D0;
  th {
    width: 240px;
    padding: 20px 0;
    text-align: left;
    font-weight: bold;
    border-bottom: 1px solid #D0D0D0;
  }
  td {
    padding: 20px 0;
    text-align: left;
    border-bottom: 1px solid #D0D0D0;
  }
}

@media screen and (max-width: 768px) {
  .about-tbl {
    display: block;
    tbody {
      display: block;
      width: 100%;
      tr {
        display: block;
        width: 100%;
        th {
          display: block;
          width: 100%;
          padding: 20px 10px 5px;
          font-size: 14px;
          border-bottom: none;
        }
        td {
          display: block;
          width: 100%;
          padding: 0 10px 20px;
          font-size: 12px;
        }
      }
    }
  }
}


/*
  shipment-tbl
------------*/

.shipment-tbl {
  width: 100%;
  margin-top: 30px;
  border-top: 1px solid #D0D0D0;
  th {
    width: 200px;
    padding: 20px 0;
    text-align: left;
    font-weight: bold;
    border-bottom: 1px solid #D0D0D0;
  }
  td {
    padding: 20px 0;
    text-align: left;
    border-bottom: 1px solid #D0D0D0;
  }
  caption {
    padding: 4px 12px 3px;
    font-size: 16px;
    color: #FCFCFC;
    background-color: #D0D0D0;
  }
  table {
    th {
      min-width: 100px;
      padding: 3px 4px 2px;
      line-height: 1.1;
      border: 0;
    }
    td {
      padding: 3px 4px 2px;
      text-align: center;
      line-height: 1.1;
      border: 0;
    }
    thead {
      th {
        color: #FCFCFC;
        background-color: #999999;
        span {
          display: block;
        }
      }
      td {
        color: #FCFCFC;
        background-color: #999999;
        span {
          display: block;
        }
      }
    }
    tbody {
      tr {
        &:nth-child(2n) {
          th {
            background: #EFEFEF;
          }
          td {
            background: #EFEFEF;
          }
        }
      }
    }
  }
  .shipment-tbl-ptn1 {
    th {
      width: 250px;
      padding-right: 20px;
    }
  }
  .shipment-tbl-normal {
    table {
      th {
        width: auto;
        white-space: nowrap;
      }
    }
  }
  .shipment-tbl-rule-notice {
    font-size: 80%;
  }
  .shipment-tbl-normal-shippoint-point {
    span {
      display: inline-block;
      padding:5px 0;
      line-height: 1.1;
      &:nth-child(2) {
        padding: 0 10px;
      }
    }
  }
  .shipment-tbl-normal-rule {
    margin: 15px;
  }
  .shipment-tbl-normal-rule2 {
    margin: 15px;
    span {
      display: block;
    }
  }
  .shipment-tbl-tkbsize-defined-rule {
    margin: 15px;
  }
  .shipment-tbl-normal-orderprice-ttl {
    display: inline-block;
  }
  .shipment-tbl-normal-orderpric-price {
    display: inline-block;
  }
  .shipment-tbl-eidome {
    a {
      text-decoration: underline;
    }
  }
}


@media screen and (max-width: 768px) {
  .shipment-tbl {
    th {
      display: block;
      width: 100%;
      padding: 20px 10px 5px;
      font-size: 14px;
      border-bottom: none;
    }
    td {
      display: block;
      width: 100%;
      padding: 0 10px 20px;
      font-size: 12px;
    }
    caption {
      display: block;
    }
    table {
      width: 90%;
      margin: auto;
      th {
        width: 100%;
        text-align: center;
      }
      td {
        width: 100%;
      }
      thead {
        th {
          padding-bottom: 5px;
          span {
            display: inline;
            padding: 0 14px;
          }
        }
        td {
          padding-bottom: 5px;
          span {
            display: inline;
            padding: 0 14px;
          }
        }
      }
    }
  }
}
/*------------
  detail
------------*/

#detail {
  padding: 40px 0 230px;
  background: url("https://image.raku-uru.jp/01/14095/474/new_bg_1735141606940.png") repeat;
  .detail-wrapper {
    display: flex;
    margin-top: 50px;
  }
}

@media screen and (max-width: 768px) {
  #detail {
    padding: 20px 0 150px;
    .detail-wrapper {
      margin-top: 20px;
    }
  }
}


/*
  detail-main
------------*/

.detail-main {
  width: 812px;
  margin-left: auto;
}

@media screen and (max-width: 1280px) {

}

@media screen and (max-width: 768px) {
  .detail-main {
    width: 100%;
  }
}




/*
  item-detail
------------*/

#item-detail {
  .item-middle {
    display: flex;
    align-items: flex-start;
    .item-detail-left {
      width: 360px;
      margin-right: auto;
      .item-detail-photo {
        overflow: hidden;
        position: relative;
        width: 360px;
        height: 360px;
        margin-bottom: 10px;
        ul {
          width: 100%;
          height: 100%;
          li {
            display: none;
            width: 100%;
            height: 100%;
            background: #FFFFFF;
            &.active {
              display: block;
            }
            img {
              width: 100%;
              height: 100%;
              object-fit: contain;
            }
          }
        }
      }
      .item-detail-photo-backbtn {
        display: none;
      }
      .item-detail-photo-nextbtn {
        display: none;
      }
      .item-detail-zoom {
        margin-bottom: 20px;
        text-align: center;
        a {
          position: relative;
          padding-left: 30px;
          &:before {
            content: '';
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            transform: translateY(-50%);
            width: 20px;
            height: 20px;
            background-image: url(https://image.raku-uru.jp/cms/yt00001/img/icn-zoom.png);
            background-repeat: no-repeat;
            background-size: cover;
          }
        }
      }
      .item-detail-thumb {
        display: flex;
        .item-detail-thumb-photo {
          width: 65px;
          margin-right: 8px;
        }
      }
    }
    .item-detail-right {
      width: 406px;
      .item-detail-info {
        width: 100%;
        margin-bottom: 15px;
        border-bottom: 1px solid #D0D0D0;
        dl {
          display: table;
          width: 100%;
          dt {
            display: table-cell;
            width: 120px;
            padding: 3px;
            vertical-align: middle;
          }
          dd {
            display: table-cell;
            padding: 3px;
          }
        }
        .item-detail-category {
          margin-bottom: 16px;
          font-size: 14px;
        }
        .item-detail-name {
          margin-bottom: 15px;
          font-size: 25px;
          font-weight: normal;
          line-height: 1.2;
        }
        .item-detail-vari {
          margin-bottom: 20px;
        }
        .item-detail-vari-price {
          .item-detail-vari-price-num {
            margin-bottom: 15px;
            font-size: 25px;
            font-weight: 700;
          }
          dl {
            dt {
              display: none;
            }
            dd {
              text-align: right;
              font-size: 15px;
              color: #C45C0A;
            }
          }
        }
      }
      .item-detail-info2 {
        width: 100%;
        margin-bottom: 15px;
        .item-detail-spec {
          margin-bottom: 20px;
          dl {
            display: table;
            width: 100%;
            dt {
              display: table-cell;
              width: 120px;
              padding: 3px;
              vertical-align: middle;
            }
            dd {
              display: table-cell;
              padding: 3px;
            }
          }
        }
      }
      .item-detail-cart {
        width: 100%;
        margin-bottom: 25px;
        border-bottom: 1px solid #D0D0D0;
        p {
          margin-bottom: 10px;
          font-size: 14px;
        }
        .item-detail-select {
          position: relative;
          width: 100%;
          margin-bottom: 20px;
          &:before {
            content: '';
            position: absolute;
            z-index: 2;
            top: 50%;
            right: 20px;
            transform: translateY(-50%);
            width: 0;
            height: 0;
            border-width: 8px 5px 0 5px;
            border-style: solid;
            border-color: #000 transparent transparent transparent;
          }
          label {
            overflow: hidden;
            display: inline-block;
            position: relative;
            width: 100%;
            height: 56px;
            vertical-align: middle;
            background: #FFFFFF;
            border: 1px solid #A0A0A0;
          }
          select {
            display: block;
            position: relative;
            z-index: 2;
            width: 100%;
            height: 56px;
            margin: 0;
            padding: 0 45px 0 15px;
            font-size: 14px;
            line-height: 56px;
            border: 0;
            outline: none;
            background: transparent;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
          }
        }
        .item-detail-inputtext {
          input {
            overflow: hidden;
            display: inline-block;
            position: relative;
            width: 100%;
            height: 56px;
            margin-bottom: 18px;
            padding: 0 8px;
            font-size: 16px;
            font-weight: normal;
            line-height: 30px;
            vertical-align: middle;
            border: 1px solid #d0d0d0;
          }
        }
        .item-detail-num-count {
          display: flex;
          width: 100%;
          margin-bottom: 18px;
          font-size: 0;
          .item-detail-num-minus {
            display: inline-block;
            margin-right: 12px;
            vertical-align: middle;
            font-size: 14px;
            a {
              display: block;
              width: 55px;
              height: 55px;
              text-align: center;
              font-size: 18px;
              line-height: 55px;
              text-decoration: none;
              background: #EAEAEA;
              border: 1px solid #A0A0A0;
            }
          }
          .item-detail-num {
            height: 55px;
            margin-right: 12px;
            padding: 0;
            vertical-align: middle;
            input[type=number] {
              display: block;
              width: 55px;
              height: 55px;
              text-align: center;
              font-size: 14px;
              line-height: 55px;
              border: 1px solid #A0A0A0;
              -moz-appearance: textfield;
              &::-webkit-inner-spin-button {
                margin: 0;
                -webkit-appearance: none;
              }
              &::-webkit-outer-spin-button {
                margin: 0;
                -webkit-appearance: none;
              }
            }
          }
          .item-detail-num-plus {
            display: inline-block;
            vertical-align: middle;
            font-size: 14px;
            a {
              display: block;
              width: 55px;
              height: 55px;
              text-align: center;
              font-size: 18px;
              line-height: 55px;
              text-decoration: none;
              background: #EAEAEA;
              border: 1px solid #A0A0A0;
            }
          }
        }
        .item-detail-cart-btn {
          width: 100%;
          margin-bottom: 20px;
          a {
            display: block;
            width: 100%;
            height: 55px;
            text-align: center;
            font-size: 20px;
            line-height: 55px;
            color: #FFFFFF;
            background: #C45C0A;
            span {
              position: relative;
              &:before {
                content: '';
                display: inline-block;
                position: absolute;
                top: 50%;
                left: -46px;
                transform: translateY(-50%);
                width: 24px;
                height: 24px;
                vertical-align: middle;
                background-image: url(https://image.raku-uru.jp/cms/yt00001/img/icn-cart-btn.png);
                background-repeat: no-repeat;
                background-size: cover;
              }
            }
          }
        }
      }
      .item-detail-share {
        width: 100%;
        padding-bottom: 20px;
        dl {
          display: table;
          width: 100%;
          dt {
            display: table-cell;
            width: 90px;
            padding: 3px;
            vertical-align: middle;
          }
          dd {
            display: table-cell;
            padding: 3px;
            vertical-align: middle;
            ul {
              display: flex;
              list-style: none;
              li {
                width: 24px;
                margin-right: 20px;
                img {
                  width: 100%;
                  height: auto;
                }
              }
            }
          }
        }
      }
    }
  }
  .item-bottom {
    padding: 10px 20px;
    background: #FFFFFF;
    .item-detail-txt1 {
      line-height: 1.5;
      h4 {
        border-bottom: 1px solid #838383;
      }
    }
    .item-detail-cart-btn {
      width: 100%;
      margin-bottom: 20px;
      a {
        display: block;
        width: 100%;
        height: 55px;
        text-align: center;
        font-size: 20px;
        line-height: 55px;
        color: #FFFFFF;
        background: #C45C0A;
        span {
          position: relative;
          &:before {
            content: '';
            display: inline-block;
            position: absolute;
            top: 50%;
            left: -46px;
            transform: translateY(-50%);
            width: 24px;
            height: 24px;
            vertical-align: middle;
            background-image: url(https://image.raku-uru.jp/cms/yt00001/img/icn-cart-btn.png);
            background-repeat: no-repeat;
            background-size: cover;
          }
        }
      }
    }
  }
}

@media screen and (max-width: 768px) {
  #item-detail {
    .item-middle {
      display: block;
      .item-detail-left {
        width: 100%;
        .item-detail-photo-main {
          position: relative;
          width: 260px;
          margin: 0 auto;
        }
        .item-detail-photo {
          width: 260px;
          height: 260px;
          margin: 0 auto 10px;
          ul {
            height: 260px;
            margin: 0 auto;
            li {
              display: block;
              float: left;
              width: 260px;
              height: 260px;
              img {
                max-width: 100%;
                max-height: 100%;
              }
            }
          }
        }
        .item-detail-photo-backbtn {
          display: block;
          position: absolute;
          top: 50%;
          left: -20px;
          margin-top: -20px;
          a {
            display: block;
            width: 15px;
            height: 40px;
            background-image: url(https://image.raku-uru.jp/01/14095/112/left_arrow_1603973304473.png);
            background-repeat: no-repeat;
            background-size: cover;
          }
        }
        .item-detail-photo-nextbtn {
          display: block;
          position: absolute;
          top: 50%;
          right: -20px;
          margin-top: -20px;
          a {
            display: block;
            width: 15px;
            height: 40px;
            background-image: url(https://image.raku-uru.jp/01/14095/111/right_arrow_1603973304186.png);
            background-repeat: no-repeat;
            background-size: cover;
          }
        }
        .item-detail-zoom {
          a {
            &:before {
              width: 19px;
              height: 19px;
            }
          }
        }
        .item-detail-thumb {
          display: none;
        }
      }
      .item-detail-right {
        width: 100%;
        .item-detail-info {
          margin-bottom: 18px;
          padding: 0 5px;
          .item-detail-category {
            margin-bottom: 12px;
            font-size: 12px;
          }
          .item-detail-name {
            margin-bottom: 12px;
            font-size: 14px;
            line-height: 32px;
          }
        }
        .item-detail-info2 {
          margin-bottom: 18px;
          padding: 0 5px;
        }
        .item-detail-cart {
          margin-bottom: 18px;
          padding: 0 5px;
          .item-detail-select {
            select {
              font-size: 16px;
            }
          }
          .item-detail-num-count {
            justify-content: center;
            margin-bottom: 30px;
          }
          .item-detail-cart-btn {
            a {
              font-size: 18px;
              span {
                position: relative;
                &:before {
                  left: -40px;
                }
              }
            }
          }
        }
        .item-detail-share {
          padding-bottom: 30px;
          text-align: center;
          dl {
            display: table;
            width: 100%;
            dt {
              display: block;
              width: 100%;
              margin-bottom: 10px;
              padding: 0;
              font-size: 13px;
            }
            dd {
              display: block;
              padding: 0;
              font-size: 13px;
              ul {
                justify-content: center;
                li {
                  width: 33px;
                  margin: 0 10px;
                  img {
                    width: 100%;
                    height: auto;
                  }
                }
              }
            }
          }
        }
      }
    }
    .item-bottom {
      .item-detail-cart-btn {
        a {
          font-size: 18px;
          span {
            &:before {
              left: -40px;
            }
          }
        }
      }
    }
  }
}



/*
  recommend
------------*/

#recommend {
  padding-top: 36px;
  border-top: 1px solid #D0D0D0;
  .ttl {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    text-align: center;
    h2 {
      flex-shrink: 0;
      margin: 0 10px;
      font-size: 24px;
      color: #333;
    }
    h3 {
      font-size: 20px;
      font-weight: bold;
    }
  }
  .product-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
    .product-list-item {
      width: 240px;
      margin-right: 32px;
      padding-bottom: 40px;
      &:nth-child(3n) {
        margin-right: 0;
      }
      .product-list-photo {
        position: relative;
        width: 240px;
        height: 240px;
        margin-bottom: 15px;
        background-color: #fff;
        img {
          display: block;
          max-width: 240px;
          width: auto;
          height: 240px;
          margin: auto;
          object-fit: contain;
        }
      }
      .product-list-name {
        overflow: hidden;
        position: relative;
        height: 44px;
        margin-bottom: 4px;
        font-size: 15px;
        font-weight: bold;
        line-height: 22px;
      }
      .product-list-price {
        text-align: right;
        font-size: 17px;
        font-weight: bold;
        line-height: 1.2;
      }
      .product-list-nonstock {
        display: inline-block;
        margin-top: 2px;
        margin-right: 6px;
        padding: 0 3px;
        text-align: center;
        vertical-align: top;
        font-size: 11px;
        line-height: 18px;
        color: #FF3333;
        background: #FFFFFF;
      }
      .product-list-tax {
        display: inline-block;
        white-space: nowrap;
      }
    }
  }
}

@media screen and (max-width: 768px) {
  #recommend {
    padding-top: 30px;
  }
  .product-list {
    margin-bottom: 10px;
    padding: 0 5px;
    .product-list-item {
      float: left;
      width: 50%;
      margin-right: 0;
      padding: 0 5px 40px;
      &:nth-child(2n - 1) {
        clear: both;
      }
      .product-list-photo {
        position: relative;
        width: 100%;
        height: auto;
        margin-bottom: 9px;
        img {
          max-width: 100%;
          height: auto;
          min-height: 175px;
        }
      }
      .product-list-name {
        overflow: hidden;
        min-height: 40px;
        margin-bottom: 4px;
        font-size: 14px;
        line-height: 20px;
      }
      .product-list-price {
        font-size: 12px;
        line-height: 1.2;
      }
    }
  }
}


/*
  official-banner
------------*/

.official-banner {
  padding: 20px;
  text-align: center;
}
