@charset "utf-8";

body {
  font-size: 12px;
  position: relative;
  -webkit-appearance: none;
  -webkit-text-size-adjust: 100%;
}

.outer-block {
  min-width: 320px;
}

.inner-block {
  padding: 0 10px;
  width: auto;
}

#wrapper {
  min-width: 320px;
  position: relative;
  overflow: hidden;
}

input[type="submit"] {
  -webkit-text-size-adjust: 100%;
}

input, select, textarea {
  font-size: 16px;
}

.pc {
  display: none !important;
}
.pc-ib {
  display: none !important;
}

.sp {
  display: block !important;
}
.sp-ib {
  display: inline-block !important;
}

/*------------------------------------------------------------------------------
common
------------------------------------------------------------------------------*/

/* common-btn
----------------------------------------*/
.common-btn {
  width: 100%;
}

.common-btn a {
  padding: 0;
  line-height: 38px;
  font-size: 13px;
}

/* category-tag
----------------------------------------*/
.category-tag {
  font-size: 10px;
  min-width: 50px;
  margin-right: 5px;
}

/* num-badge
----------------------------------------*/
.num-badge {
  font-size: 10px;
  line-height: 15px;
  width: 15px;
  height: 15px;
  top: -4px;
  right: -4px;
}

/* border-bottom
----------------------------------------*/
.border-bottom:after {
  height: 2px;
  margin-top: 4px;
}

/* select-menu
----------------------------------------*/
.select-menu-wrap {
  width: 100%;
  margin: 5px 0;
}
.select-menu-wrap select,
.select-menu-wrap input {
  width: 100%;
  height: 33px;
  font-size: 16px !important;
}

/* メニュー内部 */
.select-items div,
.select-selected {
  cursor: pointer;
  padding: 6px 25px 6px 14px;
}

.select-items div {
  padding: 2px 25px 2px 14px;
}

/* paging-block
----------------------------------------*/
.paging-block {
  text-align: center;
}

.paging-block .page-numbers {
  line-height: 28px;
  min-width: 28px;
  height: 28px;
  padding: 0 3px;
}

/* info-txt-block
----------------------------------------*/
.info-txt-block p {
  margin-top: 15px;
}

.info-txt-block {
  margin-bottom: 20px;
}

/* cap-list
----------------------------------------*/
.cap-list li {
  margin-bottom: 15px;
}

/*------------------------------------------------------------------------------
header
------------------------------------------------------------------------------*/

.header-sub-block .desc {
  text-align: center;
  width: 100%;
  z-index: 100;
  font-size: 2.3vw;
}

#header {
  padding: 0 0 10px 0;

  -webkit-transition: background .5s cubic-bezier(0, .4, .2, 1);
  transition: background .5s cubic-bezier(0, .4, .2, 1);
}

/* header
----------------------------------------*/
header.is-open #header {
  background-color: #fff;
}

header .header-desc{
  margin-top: 0;
}

header .header-desc .inner-block{
  padding: 0;
}

#header .desc {
  background-color: #d12248;
  color: #fff;
  font-size: 10px;
  width: 100%;
  text-align: center;
  min-height:25px;
}

#header .desc span{
  padding: 0;
}

header .logo-wrap {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 40px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);

  opacity: 1.0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

header .logo-wrap .logo {
  height: 40px;
  width: 130px;
}


header .user-menu-list {
  opacity: 1.0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

header .user-menu-list .cart {
  padding: 0;
  width: 35px;
  height: 35px;
  background-size: 20px;
  border-radius: 3px;
  background-position: 6px 9px;
}

#header .inner-block {
  z-index: 102;
}

/* menu animation
----------------------------------------*/
#menu {
  -webkit-transform: translateY(-30px);
  transform: translateY(-30px);
}

header.is-open #header .user-menu-list,
header.is-open #header .logo-wrap {
  opacity: 0;
  pointer-events: none;
}

#menu.is-open {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  background-color: #fff;
  z-index: 99;
}

#menu.is-open, #menu-bg.is-open {
  opacity: 1;
  pointer-events: auto;
}

#menu, #menu-bg {
  opacity: 0;
  overflow: auto;
  position: absolute;
  left: 0;
  pointer-events: none;
  width: 100%;
  -webkit-transition: .5s cubic-bezier(0, .4, .2, 1);
  transition: .5s cubic-bezier(0, .4, .2, 1);
  z-index: 1;
}

#menu-bg {
  height: 100%;
}

#menu-bg.is-open {
  background-color: rgba(0,0,0, 0.5);
}

/* desc
----------------------------------------*/
header .desc span {
  padding-left: 30px;
}

header .desc span:before {
  width: 24px;
  height: 18px;
  top: 0;
  bottom: 0;
  left: 0;
}

/* delivery
----------------------------------------*/
#menu .delivery {
  background: #fff;
  border: solid 1px #e5e5e5;
  border-radius: 3px;
  width: 100%;
  display: block;
  margin: 0;
  height: 48px;
  line-height: 48px;
  text-align: center;
  margin-bottom: 10px;
}

#menu .delivery a {
  width: 100%;
  height: 100%;
  display: block;
}

#menu .delivery span {
  position: relative;
  padding-left: 35px;
}

#menu .delivery span:before {
  content: "";
  background: url(../img/common/truck.svg) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 24px;
  height: 18px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

/* search-box
----------------------------------------*/
#menu .search-box {
  clear: both;
}

.menu-block .search-box {
  padding: 0 0 10px;
}

.menu-block .search-box input {
  height: 38px;
  padding: 0 44px 0 14px;
  border-radius: 19px;
}

.menu-block .search-box .search-btn {
  border-radius: 0 19px 19px 0;
  font-size: 0;
  width: 44px;
  height: 38px;
  padding: 0;
}

/* category
----------------------------------------*/
.menu-block .category .category-ttl {
  padding: 16px 0;
  padding-left: 40px;
}

.menu-block .category .category-ttl img {
  width: 95px;
}

.menu-block .category .category-list li a {
  font-size: 13px;
  padding: 12px 0 12px 50px;
}

/* contact
----------------------------------------*/
.menu-block .contact .contact-ttl {
  margin: 0 0 10px;
  font-size: 18px;
}

.menu-block .contact .tel .tel-num {
  font-size: 31px;
}

.menu-block .contact .tel .tel-num span:after {
  width: 26px;
  height: 26px;
  left: -36px;
}
.menu-block .contact .tel small {
  font-size: 15px;
}

.menu-block .contact .contact-form {
  font-size: 0;
  height: 52px;
  line-height: 52px;
}

.menu-block .contact .contact-form span {
  padding-left: 31px;
  height: 52px;
}

.menu-block .contact .contact-form span:before {
  width: 22px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  font-size: 0;
}

.menu-block .contact .contact-form span img {
  width: 168px;
}

/* user-menu-list
----------------------------------------*/
#menu .user-menu-list {
  float: none;
  width: 100%;
  margin-bottom: 10px;
}

#menu .user-menu-list li {
  width:50%;
}

#menu .user-menu-list a {
  width: 100%;
  text-align: center;
}

#menu .user-menu-list .register {
  margin-left: 0;
  border-radius: 3px 0 0 3px;
}

#menu .user-menu-list .login {
  margin-left: 0;
  border-radius: 0 3px 3px 0;
}

#menu .close-btn {
  display: block;
  background-color: #f6ad31;
  text-align: center;
  width: 100%;
  height: 42px;
  line-height: 42px;
}

#menu .close-btn span {
  display: inline-block;
  width: 108px;
  padding-left: 20px;

  position: relative;
}

#menu .close-btn span:before {
  content: "";
  background: url(../img/common/close.svg) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: auto;

  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

/* menu-btn
----------------------------------------*/
.menu-btn,
.menu-btn span {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

  -webkit-transition: .5s cubic-bezier(0, .4, .2, 1);
  transition: .5s cubic-bezier(0, .4, .2, 1);
}

.menu-btn {
  background: #d12248;
  border-radius: 3px;
  -webkit-box-shadow: 0 1px 0px rgba(0,0,0,0.1);
  box-shadow: 0 1px 0px rgba(0,0,0,0.1);
  float: right;
  width: 35px;
  height: 35px;
  margin-left: 5px;

  position:relative;
}

.menu-btn span {
  background: #fff;
  position: absolute;
  left: 11px;
  width: 12px;
  height: 2px;
}

.menu-btn .line01 {
  top: 12px;
}
.menu-btn .line02 {
  top: 17px;
}
.menu-btn .line03 {
  top: 22px;
}

.menu-btn.is-open .line01 {
  -webkit-transform: translateY(5px) rotate(-45deg);
  transform: translateY(5px) rotate(-45deg);
}
.menu-btn.is-open .line02 {
  opacity: 0;
}
.menu-btn.is-open .line03 {
  -webkit-transform: translateY(-5px) rotate(45deg);
  transform: translateY(-5px) rotate(45deg);
}

/* .block-ttl
----------------------------------------*/
.block-ttl {
  margin-bottom: 15px;
}

.block-ttl img {
  padding-bottom: 6px;
  height: 30px;
}

/* .info-txt-ttl
----------------------------------------*/
.info-txt-ttl {
  padding: 10px;
  font-size: 14px;
}


/*------------------------------------------------------------------------------
header (after login)
------------------------------------------------------------------------------*/
/* header mypage-menu
----------------------------------------*/
header .user-menu-list .mypage-btn {
  width: 100%;
  height: 48px;
  line-height: 48px;
}

header .mypage-menu {
  opacity: 1.0;
  margin-bottom: 0;

  position: relative;
}

header .user-name {
  float: left;
  margin: 0 20px 0 0;
  padding: 5px 20px;

  display: none;
  filter: alpha(opacity=0);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

header .user-name.is-open {
  opacity: 1.0;
  filter: alpha(opacity=100);
}

#menu .mypage-menu li {
  width: 100%;
}

#menu .mypage-menu .mypage-btn {
  border-radius: 3px;

  position: relative;
}

#menu .mypage-menu .mypage-btn:after {
  content: "";
  background: url(../img/common/plus.svg) no-repeat;
  background-size: 12px;
  width: 12px;
  height: 12px;
  margin: auto;

  position: absolute;
  top: 0;
  bottom: 0;
  right: 12px;
}

#menu .mypage-menu .mypage-btn {
  padding: 0 30px 0 42px;
}

#menu #sp-header-mypage-menu {
  display: none;
  margin-bottom: 15px;
}

#menu #sp-header-mypage-menu .category {
  margin-bottom: 15px;
}

#menu #sp-header-mypage-menu .category .category-list li a {
  padding: 12px 10px;
}

#menu #sp-header-mypage-menu .category .category-list li a:after {
  right: 10px;
}

/*------------------------------------------------------------------------------
mv-block
------------------------------------------------------------------------------*/

/* slider
----------------------------------------*/
.mv-block {
  top: -80px;
  margin-bottom: -80px;
}

.mv-block .slider-box .bx-pager {
  bottom: 15px;
}

.mv-block .slider-box .bx-pager .bx-pager-item {
  margin: 0 7px;
  width: 8px;
  height: 8px;
}

/*------------------------------------------------------------------------------
breadcrumb
------------------------------------------------------------------------------*/

#breadcrumb {
  font-size: 10px;
}

#breadcrumb ul {
  padding: 12px 0;
}

#breadcrumb li + li:before {
  margin: 0 12px;
}

/*------------------------------------------------------------------------------
main-block
------------------------------------------------------------------------------*/

main {
  padding-bottom: 406px;
}

.contents-block {
  padding: 26px 0 20px;
}

.top-page .contents-block {
  padding-top: 15px;
}

/* news
----------------------------------------*/
.news-block {
  margin-bottom: 20px;
  border-radius: 3px;
}

.news-block .news-ttl {
  display: block;
  background: #febd30;
  border-radius: 3px 3px 0 0;
  width: 100%;
  line-height: 30px;
  height: 30px;
  margin-right: 10px;
}

.news-block .news-ttl img {
  vertical-align: middle;
}

.news-block .news-desc {
  display: block;
  font-size: 12px;
  padding: 10px;
}

/* recommend
----------------------------------------*/
.recommend-block .item-list .thumbnail {
  margin-bottom: 5px;
}

.recommend-block .recommend-ttl {
  padding: 5px 0 10px;
}

.recommend-block .recommend-ttl img {
  width: 160px;
}

.recommend-block .item-list li {
  width: calc((100% - 20px) / 2);
  margin: 0 20px 18px 0;
}

.recommend-block .item-list li:nth-child(2n) {
  margin-right: 0;
}

.recommend-block .item-list .price {
  padding-top: 0px;
}

/*------------------------------------------------------------------------------
side-menu-block
------------------------------------------------------------------------------*/

.side-menu-block {
  padding-top: 20px;
  clear: both;
}

.side-menu-block .menu-list li {
  margin-bottom: 10px;
}

.side-menu-block .calender {
  margin-top: 10px;
}

/*------------------------------------------------------------------------------
footer
------------------------------------------------------------------------------*/

/* site-map
----------------------------------------*/
.site-map .inner-block {
  border: none;
  padding: 0;
}

.site-map .link-list li {
  display: block;
}

.site-map .link-list li a {
  display: block;
  border-bottom: solid 1px #c33f5b;
  font-size: 12px;
  line-height: 40px;
  text-align: left;
  vertical-align: middle;
  padding-left: 10px;

  position: relative;
}

.site-map .link-list li a:after {
  content: "";
  background: url(../img/common/arrow_right_white.svg) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 6px;
  height: 10px;
  margin: auto;

  position: absolute;
  top: 0;
  bottom: 0;
  right:10px;
}

/* footer-menu
----------------------------------------*/
.footer-menu {
  margin-bottom: 38px;
}

.footer-menu .inner-block {
  padding: 0;
}

.footer-menu .menu-list {
  width: 100%;
  padding: 15px 10px 38px;
}

.footer-menu .menu-list li {
  vertical-align: middle;
  width: calc(50% - 5px);
  margin-right: 0;
  float:left;
}

.footer-menu .menu-list li:not(:last-child) {
  margin-right: 10px;
}

.footer-menu .menu-list li:nth-child(2n) {
  margin-right: 0;
}

.footer-menu .menu-list li:nth-child(-n+2) {
  margin-bottom: 10px;
}

.footer-menu .menu-list li:not(.tel) a {
  display: block;
  font-size: 10px;
  width: 100%;
  line-height: 30px;
  text-align: center;
}

.footer-menu .menu-list li a span {
  position: relative;
}

.footer-menu .menu-list li a span:after {
  content: "";
  background: url(../img/common/site.svg) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: auto;

  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

.footer-menu .menu-list li.contact a span {
  padding-left: 25px;
}

.footer-menu .menu-list li.contact a span:after {
  width: 15px;
  height: 10px;
}

.footer-menu .menu-list li.tel .tel-num {
  font-size: 18px;
  margin: 0;
  line-height: 1.0;
  padding-left: 20px;

  left: -20px;
}

.footer-menu .menu-list li.tel .tel-num span:after {
  width: 15px;
  height: 15px;

  left: -20px;
}

.footer-menu li.tel small {
  font-size: 10px;
}

/* site-map
----------------------------------------*/
.copyright small {
  font-size: 10px;
  line-height: 30px;
}

/*------------------------------------------------------------------------------
login-page
------------------------------------------------------------------------------*/

/* login-block
----------------------------------------*/
#login .ttl {
  padding: 16px 22px;
}

#login .ttl:before {
  height: 15px;
  left: 11px;
}

#login .login-form-wrapper,
#login .register-link-wrapper {
  border-radius: 5px;
  width: 100%;
}

#login .login-form-wrapper {
  margin-bottom: 20px;
}

#login .login-form .login-table,
#login .login-form .login-table tbody,
#login .login-form .login-table tr,
#login .login-form .login-table th,
#login .login-form .login-table td,
#login .login-form .login-table td input {
  display: block;
  width: 100%;
}

#login .login-form .login-table td {
  padding: 6px 0 9px;
}

#login .login-form, .register-link {
  padding: 16px 20px 22px;
}

#login .desc {
  margin-bottom: 16px;
}

#login .login-form .desc {
  margin-bottom: 11px;
}

#login .login-form .login-table {
  margin-bottom: 11px;
}

#login .login-form .common-btn {
  margin-bottom: 11px;
}

#login .common-btn a,
#login .login-form .common-btn {
  min-width: 100px;
}

/*------------------------------------------------------------------------------
detail-page
------------------------------------------------------------------------------*/

/* detail-block
----------------------------------------*/
#detail .detail-block {
  margin-bottom: 25px;
}

#detail .item-description-txt {
  margin-bottom: 20px;
}


/* slider-box
----------------------------------------*/
#detail .slider-box {
  width: 100%;
}

#detail .slider-box .img-slider .slider {
  position: relative;
}

#detail .slider-box .img-slider .slider .bx-wrapper {
  position: relative;
  margin-bottom: 5px;
}

#detail .slider-box .img-slider .slider .bx-wrapper .bx-prev,
#detail .slider-box .img-slider .slider .bx-wrapper .bx-next {
  text-indent: -9999px;
  width: 16px;
  height: 32px;
  margin: auto;
  z-index: 2;

  position: absolute;
  top: 0;
  bottom: 0;
}

#detail .slider-box .img-slider .slider .bx-wrapper .bx-prev {
  background: url(../img/common/arrow_slider_prev.svg) no-repeat;
  background-size: 16px 32px;
  left: 10px;
}

#detail .slider-box .img-slider .slider .bx-wrapper .bx-next {
  background: url(../img/common/arrow_slider_next.svg) no-repeat;
  background-size: 16px 32px;
  right: 10px;
}

#detail .slider-box .bx-pager {
  margin-bottom: 25px;
  text-align: center;
}

#detail .slider-box .bx-pager a img {
  display: none;
}

#detail .slider-box .bx-pager a {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #f5f5f5;
  border-radius: 50%;
  text-indent: -9999px;
  margin: 0 7px;
  vertical-align: text-bottom;
}

#detail .slider-box .bx-pager a.active {
  background: #dc1943;
}

#detail .slider-box .bx-pager .bx-pager-item a {
  display: block;
  height: 100%;
}

/* detail-tabs-block
----------------------------------------*/
#detail .tabs li {
  width: calc(100%/4 - 1.5px);
  margin-right: 2px;
  font-size: 12px;
  line-height: 30px;
  height: 30px;
}

#detail .tabs li:last-of-type {
  margin-right: 0;
}

#detail .tabs {
  border-bottom: 2px solid #f6ad31;
  margin-bottom: 20px;
}

#detail .sub_tabs li {
  width: calc(100%/4 - 1.5px);
  margin-right: 2px;
  font-size: 12px;
  line-height: 30px;
  height: 30px;
}

#detail .sub_tabs li:last-of-type {
  margin-right: 0;
}

#detail .sub_tabs {
  border-top: 2px solid #f6ad31;
}

/* detail-description-item
----------------------------------------*/
#detail .detail-description-item-red-ttl {
  font-size: 15px;
}

#detail .detail-description-item-rigth-txt {
  float: none;
  width: auto;
}

#detail .detail-description-item-left-img {
  width: auto;
  margin-right: 8px;
}

#detail .detail-description-item-img-txt-block {
  margin-bottom: 15px;
}

#detail .detail-description-item-red-ttl-block:nth-of-type(n + 2) {
  margin-top: 20px;
}

#detail .detail-description-item-green-ttl {
  font-size: 15px;
}

#detail .detail-description-item-orange-ttl {
  font-size: 15px;
}

#detail .detail-description-item-emerald-ttl {
  font-size: 15px;
}

#detail .detail-description-item-banner-ttl {
  font-size: 14px;  
}

/* item-info-block
----------------------------------------*/
#detail .item-info-block {
  display: block;
  width: 100%;
}

#detail .item-info-block .category {
  margin-bottom: 13px;
}

#detail .item-info-block .item-ttl {
  font-size: 20px;
  margin-bottom: 12px;
}

#detail .item-info-block .price {
  font-size: 19px;
  font-weight: bold;
  margin-bottom: 6px;
}

#detail .item-info-block .price-down {
  font-size: 11px;
  margin-left: 10px;
}


#detail .item-info-block .price .tax {
  font-size: 11px;
}

#detail .item-info-block .desc {
  font-size: 12px;
  margin-bottom: 12px;
  line-height: 1.5;
}

#detail .item-info-block .sub-info-list li {
  padding: 8px 0;
}

#detail .item-info-block .sub-info-list {
  margin-bottom: 15px;
}

#detail .item-info-block .shopping-form {
  padding: 15px 20px 20px;
}

#detail .item-info-block .shopping-form-table {
  width: 100%;
}

#detail .select-menu-wrap.txt {
  width: 100%;
}

#list .search-block .search-config-table .display-num select {
  font-size: 16px;
}

#detail .select-menu-wrap select,
#detail .select-menu-wrap input {
  height: 33px;
}

#detail .item-info-block .shopping-form th {
  width: 55px;
}

#detail .item-info-block .shopping-form .add-to-cart {
  border-radius: 20px;
  height: 40px;
  margin: 10px auto auto;
}

#detail .item-info-block .shopping-form .add-to-cart:before {
  width: 20px;
  height: 19px;
  left: 28px;
}

#detail .item-info-block .shopping-form .add-to-cart img {
  width: 92px;
}

/* item-spec-block
----------------------------------------*/
#detail .item-spec-block {
  margin-bottom: 25px;
}

#detail .item-spec-block .item-spec-ttl {
  margin-bottom: 15px;
}

#detail .item-spec-block .item-spec-ttl img,
#detail .note-block .note-ttl img{
  height: 15px;
}

#detail .item-spec-block .item-spec-table th {
  width: 74px;
  padding: 6px 0;
}

#detail .item-spec-block .item-spec-table td {
  padding: 6px 0;
}

/* manual-block
----------------------------------------*/
#detail .manual-block {
  margin-top: 20px;
}

/* note-block
----------------------------------------*/
#detail .note-block .note-ttl {
  margin-bottom: 15px;
}

#detail .note-block .note-list li {
  margin-bottom: 4px;
  line-height: 1.5;
}

#detail .note-block:last-of-type {
  border: 0;
  padding-bottom: 0;
}

#detail-product-note-content {
  padding-top: 20px;
}

#detail .item-spec-table tr:last-child {
  border-bottom: 0;
}

/*------------------------------------------------------------------------------
list-page
------------------------------------------------------------------------------*/
#list .ttl {
  font-size: 20px;
  margin-bottom: 15px;
}

/* category-link-list
----------------------------------------*/
#list .category-link-list {
  margin-bottom: 10px;
}

#list .category-link-list li a {
  border-radius: 17px;
  min-width: 54px;
  padding: 4px 10px;
}

#list .search-block .search-result {
  float: left;
  font-size: 14px;
  margin: 0;
  padding: 0 0 14px;
}

#list .category-link-list li a img {
  height: 22px;
}

/* search-block
----------------------------------------*/
#list .search-block .search-config-table {
  width: 100%;
}

#list .search-block .search-config-table .display-num select {
  text-indent: 1.0em;
  width: 80px;
}

#list .search-block .search-config-table th {
  text-align: left;
  width: 96px;
  font-size: 12px;
}

#list .search-block .search-config-table tr:not(:last-child) th,
#list .search-block .search-config-table tr:not(:last-child) td {
  margin-bottom: 10px;
}

/* reccomend-block
----------------------------------------*/
#list .recommend-block .item-list {
  margin: 15px auto 0;
}

/*------------------------------------------------------------------------------
mypage
------------------------------------------------------------------------------*/
#mypage .block-ttl {
  margin-bottom: 15px;
}

#mypage dl, #mypage dt, #mypage dd {
  display: inline-block;
}

/* order-list
----------------------------------------*/
#mypage .order-count {
  font-size: 13px;
  padding: 12px 0;
}

#mypage .order-list {
  display: inline-block;
  width: 100%;
  margin-bottom: 15px;
}

#mypage .order-list > li {
  padding: 11px 11px 9px;
}

#mypage .order-list > li:not(:last-child) {
  margin-bottom: 15px;
}

/* order-info
----------------------------------------*/
#mypage .order-info .status {
  margin-bottom: 13px;
}

#mypage .order-info {
  border-bottom: solid 1px #f5f5f5;
  width: 100%;
  padding-right: 0;
}

#mypage .order-info .order-info-list {
  margin-bottom: 13px;
}

#mypage .order-info .order-info-list dt {
  width: 62px;
}

#mypage .order-info .common-btn {
  margin-bottom: 15px;
}

#mypage .order-info .common-btn a {
  height: 34px;
  line-height: 34px;
}

/* item-list
----------------------------------------*/
#mypage .item-list {
  width: 100%;
  padding-top: 15px;
}

#mypage .item-list li a {
  display: block;
  min-height: 160px;
  padding: 15px 0;
}

#mypage .item-list .thumbnail {
  float: left;
  display: inline-block;
  width: 128px;
  height: auto;
  margin-right: 16px;
  margin-bottom: 15px;
}

#mypage .item-list .item-info {
  display: inline-block;
  width: calc(100% - 144px);
  line-height: 1.5;
}

#mypage .item-list .item-info .item-ttl {
  font-size: 12px;
}

#mypage .item-list .item-info .price {
  font-size: 13px;
  line-height: 1.3;
  margin-top: 4px;
}

#mypage .item-list .item-info .price .tax,
#mypage .item-list .item-info .price .quantity {
  font-size: 10px;
}

/* payment
----------------------------------------*/
#mypage .payment {
  font-size: 13px;
  padding-top: 13px;
}

#mypage .payment dt {
  clear: left;
  max-width: 94px;
}

#mypage .payment dl {
  width: 100%;
}

#mypage .payment dd {
  max-width: calc(100% - 94px);
}

#mypage .payment dd:not(:last-child) {
  margin-bottom: 8px;
}

/*------------------------------------------------------------------------------
mypage-history
------------------------------------------------------------------------------*/
#mypage.mypage-history .main-block {
  text-align: center;
}

#mypage.mypage-history .block-ttl,
#mypage.mypage-history .info-detail,
#mypage.mypage-history .order-info,
#mypage.mypage-history .payment dl {
  text-align: left;
}

/* info-detail
----------------------------------------*/
#mypage.mypage-history .info-detail > li,
#mypage.mypage-history .info-detail .info-detail-ttl,
#mypage.mypage-history .info-detail .info-detail-list {
  display: block;
}

#mypage.mypage-history .info-detail .info-detail-ttl {
  font-size: 13px;
  padding: 12px 0 0 0;
}

#mypage.mypage-history .info-detail .info-detail-list {
  padding: 7px 0 10px;
}

#mypage.mypage-history .info-detail .info-detail-list.item-list {
  padding: 10px 0 0;
}

/* order-info
----------------------------------------*/
#mypage.mypage-history .order-info {
  padding: 15px 15px 12px;
  margin-bottom: 15px;
}

#mypage.mypage-history .order-info .status {
  font-size: 12px;
  line-height: 24px;
  min-width: 78px;
  height: 24px;
}

#mypage.mypage-history .order-info .order-info-list dt {
  width: 110px;
}

/* item-list
----------------------------------------*/
#mypage.mypage-history .item-list .thumbnail {
  width: 126px;
}

#mypage.mypage-history .item-list .item-info {
  width: calc(100% - 142px);
}

/* payment
----------------------------------------*/
#mypage.mypage-history .payment {
  border-bottom: solid 1px #f5f5f5;
  padding: 15px 0;
  margin-bottom: 0;
}

#mypage.mypage-history .payment dd:not(:last-child) {
  margin-bottom: 0;
}

#mypage.mypage-history .payment dd.amount {
  font-size: 16px;
  line-height: 1.2;
}

#mypage.mypage-history .payment .common-btn,
#mypage.mypage-history .back.common-btn {
  width: 258px;
  padding: 15px 0 0;
}

#mypage.mypage-history .payment .common-btn a {
  min-width: 258px;
  padding: 0 35px;
  line-height: 35px;
}

#mypage.mypage-history .back.common-btn a {
  min-width: 258px;
  line-height: 33px;
}

#mypage.mypage-history .payment .common-btn a img {
  height: 13px;
}

/*------------------------------------------------------------------------------
withdraw
------------------------------------------------------------------------------*/

.withdraw .contents-block {
  padding-top: 25px;
}

#mypage.withdraw .block-ttl {
  margin-bottom: 15px;
}

.withdraw-main-block {
  padding: 15px 0;
  margin-bottom: 20px;
}

.withdraw-caution {
  margin-bottom: 15px;
}

.withdraw-txt01 {
  font-size: 14px;
  margin-bottom: 10px;
}

p.withdraw-txt02 {
  margin-bottom: 15px;
  text-align: left;
}

.withdraw .common-btn a {
  min-width: auto;
  width: 67%;
  margin: auto;
  line-height: 35px;
}

.withdraw .contents-block {
  padding-bottom: 0;
}

/* confirm
----------------------------------------*/
.withdraw-confirm .common-btn:last-of-type a {
  margin: 0 auto;
  line-height: 33px;
  margin-top: 15px;
}

.withdraw-confirm .common-btn:last-of-type {
  margin: auto;
}

/*------------------------------------------------------------------------------
mypage-delivery
------------------------------------------------------------------------------*/

#mypage.mypage-delivery .order-count {
  padding: 15px 0;
}

#mypage.mypage-delivery .delivery-more-btn-outer {
  padding: 15px 0;
}

#mypage.mypage-delivery .delivery-more-btn {
  line-height: 35px;
  font-size: 13px;
  width: 86%;
}

#mypage.mypage-delivery .delivery-btn-area {
  position: static;
  -webkit-transform: none;
  transform: none;
  float: none;
  width: auto;
  padding-left: 0;
  text-align: center;
}

#mypage.mypage-delivery .delivery-txt-area {
  float: none;
  width: auto;
}

#mypage.mypage-delivery .delivery .main-block {
  float: none;
}

#mypage.mypage-delivery .delivery-parts-block {
  padding: 15px 0;
}

#mypage.mypage-delivery p.delivery-txt-area-txt {
  line-height: 18px;
  margin-bottom: 15px;
}

#mypage.mypage-delivery .delivery-change,
#mypage.mypage-delivery .delivery-delete {
  font-size: 12px;
  line-height: 28px;
}

#mypage.mypage-delivery .delivery-change {
  width: 36%;
  margin-right: 15px;
}

#mypage.mypage-delivery .delivery-delete {
  width: 22%;
}

#mypage.mypage-delivery .main-block {
  float: none;
}

#mypage.mypage-delivery .contents-block {
  padding-top: 25px;
}

/*------------------------------------------------------------------------------
mypage-change
------------------------------------------------------------------------------*/

#mypage-change .block-ttl {
  margin-bottom: 15px;
  padding-bottom: 6px;
}

#mypage-change .mypage-change-table th {
  width: auto;
  display: block;
  font-size: 13px;
  margin-bottom: 10px;
}

#mypage-change .mypage-change-table th .required {
  margin-right: 0;
  line-height: 19px;
  width: 50px;
}

#mypage-change .mypage-change-table tr {
  padding: 15px 0;
}

#mypage-change .mypage-change-table th .required img {
  width: 21px;
  margin-top: 5px;
}

#mypage-change .name-text span {
  display: inline-block;
  width: 43.5px;
  font-size: 13px;
}

#mypage-change .name-text input {
  width: 67%;
}

#mypage-change input,
#mypage-change select {
  height: 33px;
  padding-left: 10px;
  font-size: 16px;
}

#mypage-change .name-text .name-block:first-of-type {
  margin-bottom: 10px;
}

#mypage-change .name-text .name-block {
  float: none;
}

#mypage-change .name-text .name-block:last-of-type {
  float: none;
}

#mypage-change .post-mark {
  padding-right: 8px;
}

#mypage-change .post-block input {
  width: 18%;
}

#mypage-change .post-block input:last-of-type {
  width: 20%;
}

#mypage-change .hyphen {
  padding: 0 9px;
}

#mypage-change .post-search {
  margin-left: 0;
  display: block;
  padding: 15px 0;
}

#mypage-change .post-block {
  margin-bottom: 0;
}

#mypage-change .post-btn {
  font-size: 13px;
  width: 67%;
  line-height: 31px;
  margin: 0 auto 15px;
}

#mypage-change .pref {
  width: 100%;
  font-size: 12px;
}

#mypage-change .select-pref-block {
  height: 33px;
  width: 40%;
  margin-bottom: 10px;
}

#mypage-change .post-text p {
  font-size: 11px;
  margin: 5px 0 7px;
}

#mypage-change .tel input {
  width: 20%;
}

#mypage-change .gender-input + label {
  margin-right: 35px;
}

#mypage-change .birth-select-block {
  height: 33px;
  width: 25%;
}

#mypage-change .birth-select-block-second {
  display: block;
  margin-top: 10px;
} 

#mypage-change .birth span {
  font-size: 12px;
}

#mypage-change .birth select {
  width: 100%;
}

#mypage-change .pas p {
  font-size: 11px;
}

#mypage-change .common-btn.mypage-chang-btn button {
  min-width: auto;
  width: 100%;
  font-size: 13px;
  line-height: 38px;
}

#mypage-change .common-btn-outer {
  margin-top: 20px;
  padding: 0px 23px;
}

#mypage-change .gender-input + label {
  font-size: 12px;
}

#mypage-change .gender-input:checked + label:after {
  top: 3px;
  left: 5px;
}

#mypage-change .gender-input + label:before {
  top: -2px;
}

#mypage-change .select-items div, #mypage-change .select-selected {
  line-height: 31px;
  padding-left: 13px;
  height: auto;
}

#mypage-change .birth input {
  width: 43%;
}

#mypage-change .contents-block {
  padding-top: 25px;
}

/*------------------------------------------------------------------------------
help-delivery
------------------------------------------------------------------------------*/

#help-delivery {
  padding-top: 5px;
}

#help-delivery .info-txt-block img {
  margin: 15px 0;
}

/*------------------------------------------------------------------------------
help-cancel
------------------------------------------------------------------------------*/

#help-cancel ul.cap-list {
  margin-top: 15px;
}

/*------------------------------------------------------------------------------
help-privacy
------------------------------------------------------------------------------*/

#help-privacy  .lead-txt  {
  margin-bottom: 15px;
}

#help-privacy ul.cap-list {
  margin-top: 15px;
}

/*------------------------------------------------------------------------------
help-about
------------------------------------------------------------------------------*/
/* comment
----------------------------------------*/

/*------------------------------------------------------------------------------
help-tradelaw
------------------------------------------------------------------------------*/

#help-tradelaw .box-ttl {
  margin-bottom: 10px;
}

#help-tradelaw .txt-link-red {
  color: #d12248;
}

#help-tradelaw .price-table {
  width: 100%;
  margin-top: 5px;
}

#help-tradelaw .price-table {
  width: 100%;
}

/*------------------------------------------------------------------------------
forgot
------------------------------------------------------------------------------*/
.forgot-txt {
  text-align: left;
  margin-bottom: 10px;
}

.forgot-email-block-outer-block {
  width: 100%;
}

.forgot-email-input {
  padding: 5px;
  float: none;
  width: 100%;
}

.forgot-email-txt {
  margin: 0 0 0.5em;
  width: auto;
  float: none;
}

#login.forgot .common-btn {
  margin-top: 20px;
}

.forgot-form-block {
  padding: 16px 20px 22px;
}

#login.forgot .login-form-wrapper {
  margin-bottom: 0;
}

.forgot .forget-block {
  padding: 25px 0 20px;
}

/*------------------------------------------------------------------------------
voice
--------------------------- ---------------------------------------------------*/
#voice .balloon-block {
  font-size: 12px;
}

#voice .balloon-txt {
  margin: 0;
  padding: 10px;
  font-size: 14px;
}

#voice .voice-interview-left {
  float: none;
  width: auto;
  margin-bottom: 15px;
  padding-bottom: 20px;
  position: relative;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

#voice .voice-interview-name {
  font-size: 15px;
  margin-bottom: 15px;
}

#voice .voice-interview-right {
  float: none;
  width: 90%;
  margin: 0 auto;
  margin-bottom: 15px;
}

#voice .voice-item-detail-block {
  border-radius: 3px;
  padding: 15px;
}

#voice .voice-item-detail-left {
  float: none;
  width: 70%;
  margin: 0 auto;
  margin-bottom: 15px;
}

#voice .voice-item-detail-right {
  width: auto;
  float: none;
}

#voice .voice-item-detail-bottom {
  position: static;
}

#voice .voice-item-detail-bottom-txt {
  float: none;
  margin-bottom: 15px;
  line-height: 1.5;
}

#voice .voice-item-detail-bottom-btn {
  float: none;
  width: 100%;
  margin: 0 auto;
  height: 32px;
  line-height: 32px;
  border-radius: 36px;
}

#voice .voice-item-detail-ttl {
  font-size: 14px;
  margin-bottom: 15px;
}

#voice .voice-item-detail-red-price {
  font-size: 17px;
}

#voice .voice-item-detail-tax-price {
  font-size: 10px;
  margin-right: 15px;
}

#voice .voice-item-detail-before-price {
  font-size: 12px;
}

#voice .voice-item-detail-txt {
  margin-bottom: 15px;  
}

#voice .voice-interview-txt-more-btn {
  background-color: #d12248;
  text-align: center;
  height: 20px;
  line-height: 17px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  width: 65px;
  border-radius: 18px;
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
}

#voice .voice-interview-txt-more-block {
  display: none;
}

#voice .voice-interview-txt-child {
  display: none;
}

#voice .voice-interview-left.is-active {
  padding-bottom: 0;
}

#voice .voice-item-detail-bottom-btn img {
  width: 124px;
  margin-top: 10px;
}
#voice .voice-item-detail-bottom-btn.kuchikomi-btn img {
  width: 105px;
}
#voice .kuchikomi-explain {
  font-size: 11px;
}

#voice .voice-item-detail-bottom-btn-block {
  float: none;
}

#voice .voice-item-detail-right .voice-item-detail-txt-block {
  float: none;
}

/*------------------------------------------------------------------------------
complete
------------------------------------------------------------------------------*/
.complete .forgot-txt .txt01 {
  font-size: 14px;
  margin-bottom: 15px;
}

.complete .forgot-form-wrapper {
  padding: 34px 40px;
}

.complete .forgot-txt {
  text-align: left;
}

#login.forgot .common-btn button {
  font-size: 13px;
}

/*------------------------------------------------------------------------------
pagetop
------------------------------------------------------------------------------*/

#pagetop {
  width: 40px;
  height: 40px;
}

#pagetop a {
  width: 40px;
  height: 40px;
}

#pagetop img {
  width: 10px;
  height: 40px;
}

/*------------------------------------------------------------------------------
clearfix
------------------------------------------------------------------------------*/
/*:after {
clear: both;
content: "";
display: block;
height: 0;
font-size: 0;
visibility: hidden;
}
*/