@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/*============================

・common
・PC-only
・SP-only
・PC-header
・PC-nav
・PC-slider
・PC-common-news
・PC-main-container
・PC-side
・PC-main
・PC-footer

============================*/

/*--------------------------------------------------
　common
--------------------------------------------------*/

.clearfix:after {
  content: '';
  clear: both;
  display: block;
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

img {
  vertical-align: bottom;
}

input[type="submit"] {
  cursor: pointer;
}

.myroyalcanin {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 14px;
  color: #333;
  font-weight: 400;
}

.bg--gray {
  /* bg・薄いグレー */
  background-color: #f6f6f6;
}

.rc-txt-color--red {
  color: #e40000;
}

.rc-txt--bold {
  font-weight: bold;
}

.mt--10 {
  margin-top: 10px;
}

.mt--20 {
  margin-top: 20px;
}

.mr--10 {
  margin-right: 10px;
}

.mr--60 {
  margin-right: 60px;
}

.mb--10 {
  margin-bottom: 10px;
}

.mb--20 {
  margin-bottom: 20px;
}

.pb--50 {
  padding-bottom: 50px;
}

.border--c {
  border: 1px solid #ccc;
}

.border--e {
  border: 1px solid #eee;
}

.fw--bold {
  font-weight: bold;
}

.h_mt {
  /* h2 */
  padding-top: 15px;
}

.rc__a {
  /* link */
  text-decoration: none;
  color: #333 !important;
}

.rc__a:hover {
  opacity: 0.7 !important;
}

.flex {
  /* flex */
  display: flex !important;
}

.button_area {
  text-align: center;
  margin-top: 15px;
}

.btn-submit-red {
  align-items: center;
  background: #e2001a;
  border: #e2001a;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 14px;
  height: 50px;
  justify-content: center;
  min-width: 200px;
  margin: 0 auto;
  padding: 0 30px;
  appearance: none;
  -webkit-appearance: none;
}

.btn-submit-red:hover {
  color: #fff;
  opacity: .7;
}

.button_area li {
  display: inline-block;
  padding: 0 0px;
  margin-left: 40px;
}

.button_area li:first-of-type {
  margin-left: 0;
}

.attention {
  color: #ff0000;
}

.delete-link {
  color: #333;
  border-bottom: 1px solid #666;
}

/*--------------------------------------------------
　PC-only
--------------------------------------------------*/

@media print, screen and (min-width: 768px) {
  .for-sp {
    display: none !important;
  }
  .for-pc {
    display: block;
  }
}

/*--------------------------------------------------
　SP-only
--------------------------------------------------*/

@media screen and (max-width: 767px) {
  .for-sp {
    display: block;
  }
  .for-pc {
    display: none !important;
  }
}

/*--------------------------------------------------
　PC-header
--------------------------------------------------*/

.header-pc {
  width: 100%;
  min-width: 1150px;
  padding: 0;
}

.header-pc__main {
  display: flex;
  max-width: 1310px;
  margin: 0 auto;
  padding: 20px 0px;
  justify-content: space-between;
  align-items: center;
}

.header-pc__logo {
  width: 45%;
}

.header-pc__logo .logo__wrap {
  width: 100%;
  height: 40px;
  line-height: 30px;
  font-size: 14px;
  font-weight: bold;
  color: #333;
  float: none;
}

.header-pc__logo .logo__wrap .logo__img {
  display: inline;
  max-width: 100%;
  max-height: 100%;
  vertical-align: bottom;
}

.search {
  /* search */
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  width: 30%;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

.search__btn {
  padding: 8px 22px;
  border: none;
  border-radius: 999px;
  background: #808285;
  font-size: 14px;
  color: #fff;
  cursor: pointer;
  outline: none;
  appearance: none;
  opacity: 1;
  transition: .2s;
}

.search__btn:hover {
  opacity: 0.7;
  transition: .6s !important;
}

.search__input {
  width: 69%;
  padding: 8px 0 8px 20px;
  background: url(../images/ico_search.png) no-repeat left center;
  border: none;
  border-bottom: 1px solid #ccc;
}

.login-menu {
  width: 25%;
  text-align: right;
}

.login-menu__user-name {
  font-size: 16px;
}

.menulists {
  margin-top: 4px;
  justify-content: flex-end;
}

.menulist {
  display: flex;
  align-items: center;
  height: 30px;
  margin-left: 20px;
  font-size: 12px;
  white-space: nowrap;
}

.menulist:first-child {
  margin-left: 0;
}

.menulist:before {
  margin-right: 4px;
}

.menulist.login:before {
  /* login */
  content: url(../images/ico_user.png);
}

.menulist.logout:before {
  /* logout */
  content: url(../images/ico_logout.png);
}

.menulist.mypage:before {
  /* mypage */
  content: url(../images/ico_user.png);
}

.menulist.cart:before {
  /* cart */
  content: url(../images/ico_cart.png);
}

/*--------------------------------------------------
　PC-nav
--------------------------------------------------*/

.header-gnav {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ccc;
  text-decoration: none;
}

.gnav__lists {
  display: flex;
  max-width: 1310px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}

.hover-menu-tab {
  position: relative;
  cursor: default;
}

.gnav__list_a {
  display: flex;
  height: 100%;
  align-items: center;
  color: #333;
  font-size: 13px;
}

.hover-menu-contents {
  position: absolute;
  border: 1px solid #ccc;
  width: 126%;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  padding: 0;
  background: #fff;
  line-height: 0;
  border-top: none;
  opacity: 0;
  visibility: hidden;
  z-index: 999;
}

.hover-menu-tab:hover .hover-menu-contents {
  line-height: 3;
  opacity: 1;
  visibility: visible;
  transition: .25s;
}

.hover-menu-contents__list {
  padding: 10px;
  text-align: center;
  border-top: 1px solid #ccc;
}

.hover-menu-contents__list .gnav__list_a {
  display: block;
  width: 100%;
  height: 100%;
}

.gnav__list {
  height: 60px;
  margin: 0 20px;
  padding: 14px 0;
  line-height: 60px;
  white-space: nowrap;
  font-weight: bold;
}

.rcj-breadcrumb {
  background: #eaeaea;
  margin-bottom: 20px;
}

.rcj-breadcrumb__list {
  font-weight: bold;
  max-width: 1310px;
  margin: 0 auto;
  padding: 15px 0;
}

.rcj-breadcrumb__list-item {
  display: inline-block;
}

.rcj-breadcrumb__list-item:not(:last-of-type):after {
  content: ">";
  display: inline-block;
  margin: 0 8px;
}

.rcj-breadcrumb__link {
  color: #333;
  text-decoration: none;
}

/*--------------------------------------------------
　PC-slider
--------------------------------------------------*/

.top-page__img {
  margin: 0 auto;
}

.main-slider {
  min-width: 1150px;
  margin: 0 auto;
  margin-bottom: 30px;
  border-bottom: 1px solid #ccc;
}

.top-page .main-slider .main-slider-content {
  position: relative;
}

.slide-diagnosis-description {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 60%;
}

.slide-diagnosis-description__p {
  margin-bottom: 62px;
  font-size: 22px;
  line-height: 1.4;
  font-weight: bold;
}

.slide-diagnosis-description__h2 {
  margin-bottom: 59px;
  font-size: 40px;
  font-weight: 600 !important;
  color: #e40000;
}

.prev.slick-arrow {
  left: 2%;
}

.prev.slick-arrow:after {
  border-bottom: 1px solid #767676;
  border-left: 1px solid #767676;
  transform: translate(-20%, -50%) rotate(45deg);
}

.next.slick-arrow {
  right: 2%;
}

.next.slick-arrow:after {
  border-top: 1px solid #767676;
  border-right: 1px solid #767676;
  transform: translate(-70%, -50%) rotate(45deg);
}

.slick-arrow {
  position: absolute;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  top: 50%;
  background: #f5f4ef;
  border-radius: 999px;
  z-index: 10;
  cursor: pointer;
}

.slick-arrow:after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  display: block;
  width: 10px;
  height: 10px;
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

input[type="submit"].btn-normal, input[type="button"].btn-normal, .btn-normal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  line-height: 50px;
  padding: 0 30px;
  border: 2px solid #e40000;
  border-radius: 999px;
  background: transparent;
  color: #e40000;
  font-size: 14px;
  text-decoration: none;
  white-space: nowrap;
  transition: .2s;
}

input[type="submit"].btn-normal:hover, input[type="button"].btn-normal:hover, .btn-normal:hover {
  background: #e40000;
  color: #fff;
  text-decoration: none;
  cursor: pointer;
  transition: .6s !important;
}

.btn-normal input {
  visibility: hidden;
  width: 1px;
  height: 1px;
}

.slick-dots {
  /* ul */
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots__li {
  /*li */
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots__btn {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots__btn:before {
  font-family: 'slick';
  font-size: 25px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  opacity: .25;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-active .slick-dots__btn:before, .slick-dots__btn:hover:before, .slick-dots__btn:focus:before, .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #e40000;
}

/*--------------------------------------------------
　PC-common-news
--------------------------------------------------*/

.common-news {
  margin-bottom: 30px;
  text-align: center;
  font-size: 14px;
}

.common-news__list {
  height: 26px;
}

.common-news__list a {
  color: #333;
}

.common-news__list--text {
  margin-left: 20px;
  padding-bottom: 4px;
  border-bottom: 1px solid #7a7a7a;
}

/*--------------------------------------------------
　PC-main-container
--------------------------------------------------*/

.container {
  width: 1150px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.one_column {
  width: 100%;
}

.container-shopping {
  display: block;
}

/*--------------------------------------------------
　PC-side
--------------------------------------------------*/

.side {
  width: 300px;
  order: 1;
}

.side__bg {
  position: relative;
  background: url("../images/bg_shopping_210625.png") no-repeat;
  height: 430px;
}

.side__btn {
  position: absolute;
  top: 310px;
  left: 50%;
  transform: translateX(-50%);
}

.side__btn--a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  line-height: 50px;
  padding: 0 50px;
  border: 2px solid #e40000;
  border-radius: 999px;
  background: transparent;
  color: #e40000;
  font-size: 14px;
  text-decoration: none;
  white-space: nowrap;
  transition: .6s;
}

.side__btn--a:hover {
  background: #e40000;
  color: #fff;
  text-decoration: none;
  cursor: pointer;
  transition: .6s !important;
}

.icon-bnr {
  /* point・subscription */
  display: flex;
  align-items: center;
}

.icon-bnr__img {
  width: 24%;
  text-align: center;
}

.icon-bnr__img--cn {
  display: initial !important;
}

.icon-bnr__txt {
  padding: 12px 0;
  width: 60%;
}

.icon-bnr__ttl {
  line-height: 2;
  font-size: 18px;
  font-weight: bold;
  color: #e40000;
}

.icon-bnr__description, .sns__ttl {
  line-height: 1.6;
  font-size: 14px;
  font-weight: bold;
}

.icon-bnr__arrow {
  width: 16%;
}

.icon-bnr__arrow:after {
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: translateX(100%) rotate(45deg);
}

.sns {
  /* sns */
  display: flex;
  justify-content: space-around;
  text-align: center;
}

.sns__lists {
  text-align: center;
}

.sns__text {
  font-size: 12px;
  line-height: 2;
}

.sns__icon {
  margin: 20px 0;
  text-align: center;
  display: initial !important;
}

.signup-forms {
  /* newsletter・大枠 */
  padding: 15px 0;
  border: 1px solid #ccc;
  background: #f6f6f6;
  text-align: center;
}

#newsletter-signup {
  /* jsで使用ID */
  overflow: hidden;
  text-align: center;
}

.sigunup-letter {
  /* letter部分 */
  padding: 60px 0 20px 0;
  margin: 0;
  background: url(../images/ico_mail.png) no-repeat center 15px;
  font-size: 14px;
  font-weight: normal;
  line-height: 2;
}

.sigunup-letter--s {
  display: block;
  margin-bottom: 12px;
  font-weight: bold;
}

.signup-forms .pet, .signup-forms .mail {
  /* STEP1ペット選択、STEP2Eメール枠 */
  float: none;
  padding: 20px 0;
  font-size: 16px;
  border-top: 1px solid #ccc;
}

.heading {
  /* STEP1ペット選択、STEP2Eメール枠 */
  width: 100%;
  margin-bottom: 30px;
  padding: 0 20px;
  text-align: left;
}

.num {
  /* STEP1ペット選択,STEP2Eメール文字サイズ */
  font-size: 20px;
  font-weight: bold;
  margin-right: 5px;
}

.signup-forms input[type="radio"] {
  /* ラジオボタン非表示 */
  display: none;
}

.form-text {
  /* STEP2Eメールテキストエリア */
  line-height: 2em;
  border: 1px solid #d5d2bd;
  padding: 2px 10px;
  width: 160px;
  margin-right: 10px;
}

.signup-forms a.button, .signup-forms input.form-submit, .signup-forms input.button[type='submit'] {
  padding: 7px 16px !important;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  background: #999;
  border: none;
  border-radius: 3px;
}

.extra {
  /* 同意エリア */
  /*display: none;*/
  display: block;
}

.field {
  /* 同意エリア・文字サイズ */
  font-size: 12px !important;
}

.signup-forms .error-pet, .signup-forms .error-mail, .signup-forms .error-check {
  color: #de0000;
  font-size: 12px;
}

.signup-forms .newsletter-signup {
  width: 100%;
}

.signup-forms .wrap {
  background: none;
}

.signup-forms .pet .buttons {
  /* 犬猫ボタン */
  display: flex;
  justify-content: space-between;
  padding: 0 20px;
}

/* ラジオボタン------------------------------------------------------------- */

.signup-forms input[type="radio"]+label {
  /* ボタンの装飾 */
  display: inline-block;
  width: 30%;
  padding: 0;
  line-height: 36px;
  border: 2px solid #8a8c8e;
  border-radius: 999px;
  cursor: pointer;
  transition: .2s !important;
}

.signup-forms input[type="radio"]+label:before {
  /* ラジオボタン非表示 */
  content: none;
}

.signup-forms input[type="radio"]:checked+label:after {
  /* ラジオボタンチェックしても非表示 */
  content: none;
}

.signup-forms input[type="radio"]+label:hover {
  /* hoverした時枠と文字を赤にする */
  border-color: #e40000;
  color: #e40000;
  transition: .6s;
}

.signup-forms input[type="radio"]:checked+label {
  /* チェックした時背景を赤、文字を白にする */
  border-color: #e40000;
  background: #e40000;
  color: #fff;
}

/* チェックボックス------------------------------------------------------------- */

.signup-forms input[type="checkbox"] {
  /* チェックボックス非表示 */
  display: none;
}

.signup-forms input[type="checkbox"]+label {
  /* ラベル */
  display: block;
  position: relative;
  padding-left: 30px;
  margin-top: 20px;
  cursor: pointer;
}

.signup-forms input[type="checkbox"]+label:before {
  /* ラベルデザイン */
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  background: #fff;
}

.signup-forms input[type="checkbox"]:checked+label:after {
  /* ラベルチェック後 */
  content: '';
  display: block;
  position: absolute;
  left: 3px;
  top: 50%;
  transform: translateY(-70%) rotate(-45deg);
  width: 12px;
  height: 8px;
  border-left: 3px solid #e40000;
  border-bottom: 3px solid #e40000;
}

.signup-forms form .mail input[type="button"] {
  /* ボタンの装飾 */
  border-radius: 999px;
  width: 70px;
}

.field {
  padding: 0 10px;
  line-height: 1.6em;
}

.link_on_style {
  color: #666;
  border-bottom: 1px solid #D7D7D7;
}

.link_on_style:visited {
  border-bottom-color: #767676;
  color: #666;
  text-decoration: none;
}

/*--------------------------------------------------
　PC-main
--------------------------------------------------*/

.main {
  width: 810px;
  order: 2;
}

.main__title {
  padding-bottom: 40px;
  font-size: 20px;
  color: #333;
  font-weight: 700 !important;
  line-height: 1.4;
}

.main__frame {
  display: flex;
  justify-content: space-between;
  flex-grow: 2;
}

.frame__box {
  /* 2 columns */
  width: 394px !important;
}

.box__bdr {
  border-bottom: 1px solid #ccc;
}

.box__item {
  /* list */
  margin: 0 14px;
  padding: 10px 6px !important;
  border-bottom: 1px solid #ccc;
}

.box__item:last-child {
  margin-bottom: 20px;
  border-bottom: none;
}

.box__item--title {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  display: block;
  width: 100%;
  height: 100%;
}

.box__item--text {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.4;
  color: #666;
}

.flex-column {
  display: flex;
}

.news__title {
  /* news */
  margin: 40px 0 0 0;
  border-bottom: 1px solid #000;
  justify-content: space-between;
}

.news__list {
  display: flex;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.news__list:hover {
  opacity: 0.8 !important;
}

.news__date {
  margin: 0;
  width: 160px;
  padding: 15px 0;
  text-align: center;
  border-bottom: 1px solid #000;
}

.news__text {
  border-bottom: 1px solid #ccc;
  padding: 15px 0;
  width: 100%;
  line-height: 1.6;
}

/*--------------------------------------------------
　PC-footer
--------------------------------------------------*/

.footer-pc {
  min-width: 1150px;
  background: none;
  margin-top: 50px;
  margin-bottom: 0;
}

.footer-pc__link {
  background: #f6f6f6;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.footer-pc__link>.wrapper {
  display: flex;
  padding: 60px 0 100px 0;
  justify-content: space-between;
}

.wrapper {
  width: 1150px;
  max-height: 100%;
  margin: 0 auto;
}

.wrapper.modal-wrapper {
  max-width: 100%;
}

.site-map {
  display: flex;
}

.site-map .site-map__list.ttl {
  margin: 14px 0;
  font-weight: bold;
}

.site-map .site-map__list {
  margin: 10px 0;
  font-size: 14px;
}

.sns-area .sns-area__lists .sns-area__list {
  display: flex;
  margin: 10px 0;
  align-items: center;
  font-size: 14px;
}

.sns-area .sns-area__lists .sns-area__list.facebook:before {
  content: url(../images/ico_facebook.png);
}

.sns-area .sns-area__lists .sns-area__list.instagram:before {
  content: url(../images/ico_insta.png);
}

.special {
  padding: 80px;
  text-align: center;
}

.special .special__img {
  display: inline-flex;
  max-width: 100%;
  height: auto;
  z-index: 2;
}

.special__ttl {
  font-size: 28px;
  padding: 20px 0;
  line-height: 2;
}

.special .special__p {
  font-size: 16px;
  line-height: 2;
}

.copyright {
  padding: 80px 0 100px 0;
  background: #e2001a;
}

.copyright__p, .copyright__span {
  color: #fff;
  font-size: 12px;
}

.copyright__flex-container {
  display: flex;
  margin: 20px 0;
  justify-content: space-between;
}

.sns-area .sns-area__lists .sns-area__list:before {
  margin-right: 6px;
}

.search-result {
  background-color: #ddd;
  padding: 7px 15px;
}

.search-result .search-result__notice {
  font-weight: bold;
}

.list-pager {
  margin: 15px 0;
  text-align: center;
}

.list-pager__item, .list-pager__item--current, .list-pager__item--prev, .list-pager__item--prev--inactive, .list-pager__item--next, .list-pager__item--next--inactive {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  height: 24px;
  line-height: 22px;
  margin: 0 3px;
  color: #000;
}

.list-pager__item {
  font-weight: bold;
}

.list-pager__item--current {
  color: #fff;
  font-weight: bold;
  padding: 0 5px;
  border: 1px solid #000000;
  background: #000000;
}

.list-pager__item--prev, .list-pager__item--prev--inactive, .list-pager__item--next, .list-pager__item--next--inactive {
  border: 1px solid #eee;
  font-size: 14px;
  line-height: 22px;
}

.list-pager__item--prev, .list-pager__item--next {
  padding: 0 5px;
}

.list-pager__item--prev--inactive, .list-pager__item--next--inactive {
  color: #999;
  padding: 0 10px;
}

.list-pager__item--link {
  color: #000;
  text-decoration: none;
  padding: 0 5px;
}

/* 商品リスト */

.product-list {
  margin-bottom: 30px;
}

.product-list__content {
  min-height: 180px;
  border-bottom: 1px solid #ccc;
}

.product-list__content-item {
  display: flex;
  align-items: center;
  padding: 10px 0;
  width: 100%;
  height: 100%;
}

.product-list__content-image {
  min-width: 200px;
  max-width: 200px;
  min-height: 200px;
  max-height: 200px;
}

.product-detail {
  width: 100%;
  margin-left: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product-detail__ttl {
  margin-bottom: 18px;
  font-size: 20px;
  color: #333;
  font-weight: bold;
}

.product-detail__price {
  margin-bottom: 20px;
  font-size: 16px;
}

.product-detail__info {
  position: relative;
}

.product-detail__info-type-item {
  display: inline-block;
  border-radius: 999px;
  background: #eee;
  margin-right: 10px;
  margin-bottom: 6px;
  padding: 0 10px;
  line-height: 30px;
  font-size: 14px;
  font-weight: bold;
  color: #333;
}

.product-detail__info-image {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  padding: 0;
  border: 2px solid #e5e5e5;
  border-radius: 50%;
  background: #fff;
  overflow: hidden;
  position: absolute;
  left: -65px;
  top: -10px;
}

.login-panel .login-panel__img-wrap {
  float: left;
  border: none;
  width: 457px;
}

.login-panel .login-panel__column {
  width: 693px;
  text-align: left;
  float: right;
  padding: 20px;
  border: 1px solid #eee;
  border-radius: 5px;
  margin: 0 auto 20px;
}

.login-panel .login-panel__input input[type="text"], .login-panel .login-panel__input input[type="password"] {
  line-height: 20px;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 5px;
  box-sizing: border-box;
  width: 100%;
  height: 34px;
  background-color: rgb(250, 255, 189);
}

.login-panel .login-panel__input .maill-check {
  margin: 0 0 20px;
}

.login-panel .login-panel__input input[type="checkbox"]+label {
  display: block;
  position: relative;
  padding-left: 30px;
  cursor: pointer;
}

.login-panel .login-panel__input input[type="checkbox"] {
  display: none;
}

.login-panel .login-panel__input input[type="checkbox"]+label:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  background: #fff;
}

.login-panel .login-panel__input input[type="checkbox"]:checked+label:after {
  content: '';
  display: block;
  position: absolute;
  left: 3px;
  top: 50%;
  transform: translateY(-70%) rotate(-45deg);
  width: 12px;
  height: 8px;
  border-left: 3px solid #E2001A;
  border-bottom: 3px solid #E2001A;
}

.login-panel .login-panel__input-box {
  width: 470px;
  padding: 15px 15px 0;
  margin: 10px auto;
  background: #E6E6E6;
  border-radius: 5px;
}

.login-panel .login-panel__input {
  padding-bottom: 7px;
  text-align: left;
  margin-top: 0;
}

.login-panel .login-panel__input:last-child {
  padding-bottom: 15px;
}

.login-panel .login-panel__input span {
  display: block;
  font-weight: bold;
}

.login-panel .login-panel__column h3.login-panel__column--heading {
  font-size: 26px;
  font-weight: bold;
  line-height: 36px;
  margin-bottom: 15px;
}

.login-panel .login-panel__column p {
  margin-top: 6px;
  font-size: 16px;
  line-height: 1.4;
}

.login-panel .login-panel__column .ico--quest {
  background: url("../images/ico_quest.jpg") no-repeat left center;
  height: 20px;
  line-height: 20px;
  padding: 0 0 0 25px;
}

.login-panel .ico--quest a {
  color: #333333;
}

.login-panel .ico--quest a:hover {
  opacity: .8;
}

.terms-of-service .terms-of-service--heading {
  background: url("../images/entry/bg_terms_pet.jpg") no-repeat right top;
  min-height: 244px;
  margin-bottom: 80px;
}

.terms-of-service .terms-of-service--heading .entry-title__h1 {
  font-size: 26px;
  font-weight: bold;
  line-height: 2;
  padding: 60px 0 20px;
  color: #e40000;
}

.terms-of-service .terms-of-service--content {
  padding: 20px 10px;
  border: 1px solid #ccc;
  margin: 20px 0 60px;
  background: #efefef;
  border-radius: 5px;
}

.terms-of-service .terms-of-service--content__heading {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  padding: 0 0 15px;
}

.terms-of-service .terms-of-service--content p {
  font-size: 16px;
  line-height: 1.4;
}

.terms-of-service .terms-of-service--content .terms-of-service--content__txt-area textarea {
  width: 100%;
  margin: 30px auto 15px;
  padding: 5px;
  font-size: 13px;
  background: #fff;
  border: 1px solid #ddd;
}

.input-panel--entry .input-panel--entry-heading .entry-heading__h1 {
  color: #e40000;
  font-size: 22px;
  font-weight: bold;
  line-height: 2;
  padding: 30px 0px 20px 0;
}

.input-panel--entry .input-panel--entry-heading .entry-heading__span {
  color: #ff0000;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__table {
  border-collapse: separate;
  border-spacing: 1px;
  background: #999999;
  font-size: 13px;
  margin-bottom: 20px;
  width: 100%;
}

.input-panel--entry .input-panel--entry-content__tr:last-of-type .input-panel--entry-content__th {
  vertical-align: top;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__th {
  background: #efefef;
  text-align: left;
  padding: 10px;
  vertical-align: middle;
  width: 250px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td {
  background: #ffffff;
  text-align: left;
  line-height: 1.5em;
  padding: 10px;
  vertical-align: middle;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td a {
  color: #333333;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td p {
  font-size: 16px;
  line-height: 1.4;
  padding: 5px 0 0;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input {
  vertical-align: top;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="text"], .input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="password"] {
  border: 1px solid #ddd;
  height: 30px;
  line-height: 30px;
  margin: 3px 0;
  padding: 4px;
  vertical-align: baseline;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="radio"] {
  display: none;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="radio"]+label {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  flex-wrap: wrap;
  padding-left: 30px;
  position: relative;
  min-height: 30px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="radio"]+label:before {
  content: "";
  border: 1px solid #999;
  border-radius: 50%;
  background: #fff;
  display: block;
  height: 26px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input[type="radio"]:checked+label:after {
  content: "";
  background: #e40000;
  border-radius: 50%;
  display: block;
  height: 20px;
  left: 3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td .select-wrap {
  display: inline-block;
  position: relative;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td .select-wrap:before {
  content: "";
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  height: 8px;
  position: absolute;
  pointer-events: none;
  right: 0;
  top: 50%;
  transform: translate(-10px, -70%) rotate(45deg);
  width: 8px;
  z-index: 1;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td select {
  background: #fff;
  border: 1px solid #ddd;
  color: inherit;
  font-size: 16px;
  height: 30px;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 4px 30px 4px 4px;
  text-indent: 0.01px;
  text-overflow: '';
  vertical-align: middle;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td span {
  font-size: 10px;
}

.input-panel--entry .customer-info--name {
  width: 120px;
}

.input-panel--entry .customer-info--zip {
  width: 60px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td .img--zip {
  display: inline;
  vertical-align: middle;
}

.input-panel--entry .customer-info--address {
  width: 300px;
}

.input-panel--entry .customer-info--tel {
  width: 60px;
}

.input-panel--entry .customer-info--mail {
  width: 300px;
}

.input-panel--entry .customer-info--pass {
  width: 120px;
}

.input-panel--entry .customer-info--forget {
  width: 260px;
}

.input-panel--entry .news-letter {
  margin-top: 10px;
  border: 1px solid #efefef;
  padding: 10px;
}

.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td .news-letter .news-letter__heading {
  border-left: 4px solid #cc0000;
  font-weight: bold;
  font-size: 18px;
  padding-left: 10px;
  margin-bottom: 10px;
}

.input-panel--entry .news-letter .news-letter__count {
  margin: 10px 0;
}

.input-panel--entry .news-letter .news-letter__count span {
  padding: 3px 8px;
  background-color: #000;
  border-radius: 4px;
  margin-right: 5px;
  color: #fff;
  font-weight: bold;
}

.input-panel--entry .news-letter .news-letter__gallery .news-letter__gallery--lists {
  width: 100%;
  font-size: 0;
}

.input-panel--entry .news-letter .news-letter__gallery .news-letter__gallery--item {
  display: inline-block;
  width: 33.33%;
  padding: 10px;
}

.input-panel--entry .news-letter .tip--image {
  text-align: right;
}

.input-panel--entry .attention {
  color: #ff0000;
}

.input-panel--entry .input-panel--entry-pet-info {
  margin-bottom: 20px;
}

.input-panel--entry p {
  font-size: 16px;
  line-height: 1.4;
}

.input-panel--entry .entry-sub-heading__p--pet-info {
  padding-bottom: 30px;
}

.input-panel--entry .pet-info__heading {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  padding: 10px;
  margin-top: 20px;
}

.input-panel--entry .pet-info--name {
  width: 300px;
}

.input-panel--entry .plus_minus a {
  width: 140px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  text-decoration: none;
}

.input-panel--entry .plus_minus a.minus {
  background: url("../images/entry/minus_button.jpg") no-repeat;
  color: #000000;
}

.input-panel--entry .plus_minus a.minus:hover {
  opacity: .7;
}

.entry--confirm.input-panel--entry .entry-heading__h2 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}

.entry--confirm .entry-sub-heading__p--confirm {
  padding-bottom: 30px;
}

.entry--confirm .entry--confirm__table-heading {
  padding: 10px;
  font-size: 18px;
  font-weight: bold;
  margin-top: 20px;
  line-height: 1.4;
}

.entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__table.table--pet-confirm {
  width: 870px;
  float: none;
}

.entry--confirm .pet_data {
  background-color: #FFF;
  margin: 10px 0 40px;
  padding: 20px 0 20px 0;
}

.entry--confirm .pet_data .pet_data__dl {
  position: relative;
}

.entry--confirm .pet_data .pet_data__dt {
  padding-bottom: 10px;
}

.entry--confirm .pet_data .pet_data__dd {
  position: absolute;
  right: 0;
}

.entry--complete .entry--complete__wrap {
  border-radius: 5px;
  text-align: center;
  margin: 0 auto 20px;
  padding: 20px;
  width: 100%;
}

.entry--complete .entry--complete__heading {
  font-size: 26px;
  font-weight: bold;
  line-height: 36px;
  margin-bottom: 15px;
}

.entry--complete .entry--complete__p {
  font-size: 13px;
  line-height: 1.4;
  padding-top: 19px;
}

.my-page {
  width: 810px;
  margin: 0 auto;
}

.my-page .btn-normal {
  min-width: 300px;
}

.my-page .my-page__heading {
  padding: 15px 0;
  font-size: 22px;
  font-weight: bold;
  line-height: 2;
  color: #e40000;
}

.my-page .my-page__p {
  font-size: 16px;
  line-height: 1.4;
}

.my-page .my-page__p--user-name {
  text-align: right;
  padding-right: 10px;
}

.my-page .my-page__content {
  padding-top: 30px;
  border-bottom: 1px solid #ccc;
}

.my-page .my-page__content:first-of-type {
  border-top: 1px solid #ccc;
}

.my-page .my-page__content .content__h2--heading {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  padding: 0 10px;
}

.my-page .my-page__content .content__dl {
  padding: 0 10px;
}

.my-page .my-page__content .content__dt {
  color: #E2001A;
  font-size: 14px;
  line-height: 1.8;
  min-height: 20px;
  padding-top: 8px;
}

.my-page .my-page__content .content__dl>.content__dd:first-of-type {
  border-bottom: none;
}

.my-page .my-page__content .content__dd {
  font-size: 16px;
  line-height: 1.8;
  min-height: 20px;
  padding-bottom: 8px;
  border-bottom: 1px solid #ccc;
}

.my-page .acc-btn {
  position: relative;
  width: 100%;
  height: 40px;
  cursor: pointer;
}

.acc-btn:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -80%) rotate(45deg);
  display: block;
  width: 12px;
  height: 12px;
  border-right: 2px solid #666;
  border-bottom: 2px solid #666;
}

.acc-btn.active:after {
  transform: translate(-50%, -20%) rotate(-135deg);
}

.acc-content.active {
  border-top: 1px solid #ccc;
}

.acc-content .content__dd, .acc-content .content__dt {
  opacity: 0;
  visibility: hidden;
  transition: line-height .25s, opacity .25s, visibility .25s, padding-top .25s, padding-bottom .25s, min-height .25s;
}

.my-page .my-page__content .acc-content:not(.active) .content__dt, .my-page .my-page__content .acc-content:not(.active) .content__dd {
  line-height: 0;
  padding: 0;
  min-height: 0;
}

.acc-content.active .content__dd, .acc-content.active .content__dt {
  opacity: 1;
  visibility: visible;
}

.content__dl .acc-content.active .content__dd:last-child {
  border: none;
}

.content__dl .acc-content .content__dd {
  border: none;
}

.content__dl .acc-content.active .content__dd {
  border-bottom: 1px solid #ccc;
}

.my-page .my-page__content .content__bnr {
  margin: 0 0 10px 0;
}

.my-page .my-page__content .content__bnr .bnr__a {
  font-size: 0;
  width: 100%;
}

.my-page .my-page__content .content__bnr .bnr-item {
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  color: #333;
}

.my-page .my-page__content .content__bnr .bnr-item--img {
  width: 20%;
}

.my-page .my-page__content .content__bnr .bnr-item--img img {
  margin: 0 auto;
}

.my-page .my-page__content .content__bnr .bnr-item--text {
  width: 60%;
}

.my-page .my-page__content .content__bnr .bnr-item--text__heading {
  color: #e40000;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
}

.my-page .my-page__content .content__bnr .bnr-item--text__description {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.6;
}

.my-page .my-page__content .content__bnr .bnr-item--arrow {
  width: 20%;
  position: relative;
}

.my-page .my-page__content .content__bnr .bnr-item--arrow:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 30px;
  display: block;
  width: 15px;
  height: 15px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: translateY(-50%) rotate(45deg);
}

.my-page .my-page__content .section-head-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  max-width: 100%;
}

.my-page .my-page__content.my-page__content--status {
  margin-top: 10px;
  padding-top: 0;
}

.my-page .my-page__content.my-page__content--status .content__dl .content__dd {
  border-bottom: 1px solid #ccc;
}

.my-page .my-page__content.my-page__content--status .content__box, .my-page .my-page__content.my-page__content--pets .content__box {
  border-top: 1px solid #ccc;
  padding-top: 20px;
}

.my-page .my-page__content.my-page__content--status .content__box:first-of-type, .my-page .my-page__content.my-page__content--pets .content__box:first-of-type {
  border: none;
}

.my-page .my-page__content.my-page__content--owner .content__dl, .my-page .my-page__content.my-page__content--pets .content__dl, .my-page .my-page__content.my-page__content--school .content__dl {
  background: #eaeaea;
}

.my-page .my-page__content.my-page__content--pets .content__p--count {
  padding-left: 10px;
}

.my-page .my-page__content.my-page__content--school .content__dd:last-of-type {
  border: none;
}

.my-page .my-page__content.my-page__content--school .content__h3--heading {
  text-align: center;
  background: #eaeaea;
  padding: 20px 0;
  border-bottom: 1px solid #ccc;
  color: #e2001a;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
}

.my-page .my-page__content .content__botton-wrap {
  margin: 20px auto;
}

.my-page .edit-link-lists {
  text-align: right;
  padding: 8px 10px;
}

.my-page .edit-link-lists .edit-link-list {
  display: inline-block;
  margin-left: 8px;
  padding-bottom: 2px;
  border-bottom: 1px solid #333;
  font-weight: bold;
}

.my-page .edit-link-lists .edit-link-list a {
  color: #333;
  font-size: 13px;
  line-height: 1.4em;
}

.my-page .edit-link-lists .edit-link-list a:hover {
  opacity: .8;
}

.section-name-area {
  padding: 10px 0;
}

.section-name-area a {
  font-size: 0;
  width: 100%;
}

.section-name-area a:hover {
  opacity: .8;
}

.section-name-area .name-area-icon, .section-name-area .name-area-name {
  display: inline-block;
  vertical-align: middle;
}

.section-name-area .name-area-name .content__dd {
  border: none;
  color: #333;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.4;
}

.section-name-area .name-area-icon {
  width: 70px;
  height: 70px;
  margin-right: 10px;
  overflow: hidden;
  border-radius: 50%;
  background: #fff;
}

.news .main__title {
  color: #e40000;
  line-height: 2;
  margin: 20px 0;
  border-bottom: 2px solid #efefef;
  padding-bottom: 33px;
}

.news .topics-list {
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.news .topics-list {
  font-size: 16px;
  line-height: 1.4;
}

.news .topics-list .topics-list__heading {
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 0px;
}

.news .topics-list .topics-list__date {
  color: #999;
  margin: 10px 0;
}

.news .topics-list .topics-list__flex {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.news .topics-list .topics-list__img-wrap {
  flex: 0 0 200px;
  margin-right: 15px
}

.news .topics-list .topics-list__text-wrap a {
  border-bottom: 1px solid #D7D7D7;
  color: #444;
  text-decoration: none;
  -webkit-transition: color .2s ease-in, border-color .2s ease-in;
  transition: color .2s ease-in, border-color .2s ease-in;
}

.news .topics_list .topics-list__text-wrap a:visited {
  border-bottom-color: #767676;
  color: #666;
  text-decoration: none;
}

.news .topics-list .topics-list__text-wrap a:hover {
  border-bottom: 1px solid #E2001A;
  color: #E2001A;
  text-decoration: none;
  opacity: 1;
}

.terms .terms--heading {
  padding: 0 0 23px 0;
  color: #e40000;
  line-height: 2;
}

.terms .terms__content--content-wrap {
  background: #eee;
  border-radius: 5px;
  padding: 0 20px 20px;
  margin: 20px 0;
}

.terms .terms__content--content-inner {
  background: #fff;
  box-shadow: 0 4px 7px #d5d5d5;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 5px;
  padding: 10px 20px 5px 20px;
}

.terms .terms-heading {
  font-weight: bold;
  line-height: 1.4;
}

.terms .terms-heading__h3 {
  font-size: 16px;
  padding: 15px 0 13px;
}

.terms .terms-heading__h4 {
  font-size: 14px;
  padding: 20px 0 10px;
}

.terms.terms--law .terms-heading__h5 {
  padding: 10px 0 0 2px;
  font-size: 14px;
}

.terms.terms--law .terms__ul {
  margin: 0 10px 10px 10px;
}

.terms.terms--law .terms__li {
  list-style-type: disc;
  margin: 0.5em 0 0 20px;
}

.terms.terms--law .terms__content--content-inner p {
  padding: 0 0 10px 10px;
}

.point-program .point-program--heading {
  padding-bottom: 23px;
}

.point-program .point-program--heading__img {
  width: 70%;
  margin: 0 auto;
}

.point-program .content-heading {
  font-weight: bold;
  line-height: 1.4;
}

.point-program .content-heading__h2 {
  font-size: 20px;
  margin: 30px 0 0;
  padding: 15px 0 5px;
}

.point-program .content__txt {
  font-size: 16px;
  line-height: 1.4;
  margin: 0 0 30px;
}

.point-program .content__txt--point-use {
  margin: 0 0 10px;
}

.point-program .content__txt--subscriptions {
  margin: 0.5em 0 0.5em;
  font-size: 14px;
}

.point-program .content__img-wrap--graph {
  padding-top: 20px;
}

.point-program .content__img-wrap--sns {
  width: 178px;
  height: 81px;
}

.point-program .content__img-wrap img {
  margin: 0 auto;
}

.point-program .content__img-wrap--graph img {
  width: 70%;
  border: 1px solid #ededed;
}

.point-program .content__link--point-program {
  color: #444;
  border-bottom: 1px solid #D7D7D7;
  text-decoration: none;
  -webkit-transition: color .2s ease-in, border-color .2s ease-in;
  transition: color .2s ease-in, border-color .2s ease-in;
  font-size: 16px;
}

.point-program .content__link--point-program:visited {
  border-bottom-color: #767676;
  color: #666;
  text-decoration: none;
}

.point-program .content__link--point-program:hover {
  border-bottom: 1px solid #E2001A;
  color: #E2001A;
  text-decoration: none;
  opacity: 1;
}

.point-program .content__btn-wrap--sns {
  width: 350px;
  margin: 70px auto 60px;
  background: #f0f0f0;
  justify-content: space-between;
}

.point-program .sns-area {
  padding-top: 10px;
}

.point-program .sns-area .sns__list {
  margin-right: 10px;
}

.about-royalcanin.container {
  flex-wrap: wrap;
}

.about-royalcanin .about-royalcanin--page__heading {
  border-bottom: 1px solid #ccc;
  display: flex;
  justify-content: flex-end;
  margin-bottom: 80px;
}

.about-royalcanin .about-royalcanin__heading {
  font-weight: bold;
  line-height: 1.4;
}

.about-royalcanin .about-royalcanin--page__heading .about-royalcanin__heading--alpha {
  color: #e40000;
  font-size: 30px;
  margin-top: 50px;
  margin-bottom: 10px;
  padding-left: 150px;
  line-height: 2;
}

.about-royalcanin .about-royalcanin__heading--beta {
  font-size: 20px;
  margin-top: 20px;
  padding: 0 0 20px 0;
}

.about-royalcanin .about-royalcanin__heading--delta {
  color: #e2001a;
  font-size: 24px;
}

.about-royalcanin .about-royalcanin--page__heading .flex-item:first-of-type {
  flex: 0 0 56%;
}

.about-royalcanin .about-royalcanin__p {
  font-size: 16px;
  line-height: 1.4;
}

.about-royalcanin .about-royalcanin__p--part {
  color: #e40000;
}

.about-royalcanin .about-royalcanin__column--part2 .link-lists__item:last-of-type {
  border-bottom: 1px solid #ccc;
}

.about-royalcanin .link-lists__item {
  width: 100%;
  overflow: hidden;
  border-top: 1px solid #ccc;
}

.about-royalcanin .link-lists__item--link {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 140px;
  padding: 0 40px 0 20px;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  z-index: 10;
}

.about-royalcanin .link-lists__item--link:hover {
  opacity: .7;
}

.about-royalcanin .link-lists__item--link:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: translateY(-50%) rotate(45deg);
}

.about-royalcanin .link-lists__item--img-wrap {
  padding-top: 10px;
  width: 20%;
}

.about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin--page__heading {
  flex-direction: column;
  border-bottom: none;
  margin-bottom: 0;
}

.about-royalcanin.about-royalcanin--myroyalcanin .flex-item {
  flex: 0 0 100%;
}

.about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__heading {
  padding: 0;
  margin: 0;
}

.about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__heading--beta {
  border-bottom: .3rem solid #8d8d8d;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 0 0 20px 0;
  margin: 3rem auto 1.8rem;
  color: #e40000;
}

.about-royalcanin .content__txt {
  font-size: 16px;
  line-height: 1.4;
}

.about-royalcanin.about-royalcanin--myroyalcanin .content__txt {
  margin: 1.2rem 0;
}

.about-royalcanin.about-royalcanin--myroyalcanin .content__txt .notice {
  margin: 0;
}

.about-royalcanin.about-royalcanin--myroyalcanin .content__img-wrap {
  margin: 2rem 0;
}

.about-royalcanin.about-royalcanin--myroyalcanin .content__img {
  margin: 0 auto;
}

.about-royalcanin.about-royalcanin--myroyalcanin .link-lists__item {
  border: none;
  font-size: 1.2rem;
  margin: 1.2rem 0;
  position: relative;
}

.about-royalcanin.about-royalcanin--myroyalcanin .link-lists__item:before {
  border-top: .2rem solid #de0000;
  border-right: .2rem solid #de0000;
  width: .60rem;
  height: .60rem;
  content: "";
  display: block;
  position: absolute;
  top: 0.2rem;
  left: 0;
  transform: rotate(45deg);
}

.about-royalcanin.about-royalcanin--myroyalcanin .link-lists__item--link {
  background: transparent;
  color: #000;
  display: inline-block;
  font-weight: bold;
  min-height: auto;
  position: unset;
  padding: 0 0 0 1.2rem;
  width: auto;
}

.about-royalcanin.about-royalcanin--myroyalcanin .link-lists__item--link:after {
  display: none;
}

.about-royalcanin .about-royalcanin--page__heading .category--heading {
  color: #e40000;
  font-size: 30px;
  margin-top: 50px;
  margin-bottom: 10px;
  padding-left: 0px;
  line-height: 2;
}

.about-royalcanin .about-royalcanin--page__heading .category--heading--sub {
  color: #e40000;
  font-size: 30px;
  margin-top: 50px;
  margin-bottom: 10px;
  padding-left: 0px;
  line-height: 1.4;
}

.about-royalcanin .about-royalcanin--page__heading .category--second {
  margin: 30px 0 20px 0;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
}

.about-royalcanin .about-royalcanin--page__heading .category--third {
  font-size: 16px;
  color: #333;
  line-height: 2;
  font-weight: normal;
}

.main-image {
  display: block;
  margin: 0 auto;
  max-width: 300px;
}

.main-features {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .for-sp {
    display: block;
  }
  .for-pc {
    display: none !important;
  }
}

.guide .guide--heading {
  color: #e40000;
  font-size: 24px;
  line-height: 2;
  padding: 10px 0 0;
}

.guide .guide--sub-heading {
  font-size: 16px;
  margin-top: 20px;
  padding: 0 0 20px 0;
  font-weight: bold;
}

.guide .guide--sub-heading:before {
  content: " ";
  top: -2px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 30px;
  width: 5px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  margin-right: 10px;
  background: #DE0000;
}

.guide .guide-heading {
  font-weight: bold;
  line-height: 1.4;
}

.guide .guide-heading__h3 {
  font-size: 16px;
  padding: 15px 0 13px;
}

.guide .guide-heading__h4 {
  font-size: 14px;
  padding: 20px 0 10px;
}

.guide .guide-heading__h4:nth-of-type(n+2) {
  border-top: 1px dotted #ccc;
  margin: 15px 0 10px;
}

.guide__content--content-wrap {
  background: #eee;
  border-radius: 5px;
  padding: 0 20px 20px;
  margin: 20px 0;
}

.guide .guide-heading__h5 {
  padding-top: 10px;
  padding-left: 20px;
  font-size: 14px;
}

.guide__content--content-inner {
  background: #fff;
  box-shadow: 0 4px 7px #d5d5d5;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 5px;
  padding: 10px 20px 5px 20px;
}

.guide .guide__content--content-wrap.faq-inquiry {
  margin-top: 40px;
}

.guide .guide__content--content-wrap.faq-inquiry .faq-inquiry__column {
  border-top: 1px solid #ccc;
  margin: 0 20px;
  padding: 20px 0 20px 55px;
  line-height: 1.6em;
}

.guide .guide__content--content-wrap .faq-inquiry__heading {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
}

.guide .guide__content--content-wrap.faq-inquiry .contact_wrap {
  padding: 10px 0 15px;
}

.guide .guide__content--content-wrap.faq-inquiry .contact_wrap+.contact_wrap {
  padding-top: 0;
  margin-top: -5px;
}

.guide .guide__content--content-wrap .faq-inquiry__note {
  font-size: 16px;
  line-height: 1.4;
}

.guide .guide__content--content-wrap .faq-inquiry__heading+.btn-normal {
  margin: 10px 0;
}

.guide .guide__content--content-wrap.faq-inquiry .faq-inquiry__column:first-of-type {
  border-top: none;
  padding-top: 0;
}

.guide .inquiry-list {
  margin: 10px 0 20px 0;
  padding-left: 20px;
}

.guide .inquiry-list__item {
  background: url("../images/ico_red-arrow.png") no-repeat left center;
  background-size: 16px;
  padding-left: 10px;
  line-height: 18px;
  margin-bottom: 10px;
}

.guide .inquiry-list__item--link {
  display: block;
  color: #333;
  padding-left: 13px;
}

.guide .inquiry-list__item--link:hover {
  opacity: .8;
}

.guide.guide-inquiry-detail .faq_question {
  background: url("../images/ico_guide_shopping_question.png") no-repeat left center;
  padding: 30px 0 30px 55px;
  margin-left: 20px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
}

.guide.guide-inquiry-detail .faq_answer {
  line-height: 1.6em;
  background: url("../images/ico_guide_shopping_answer.png") no-repeat left top;
  padding-left: 55px;
  padding-bottom: 20px;
  margin: 0 20px;
}

.guide.guide-inquiry-detail .guide__content--content-wrap.faq-inquiry {
  margin-top: 20px;
}

.guide-inquiry-detail .guide__content--content-inner {
  font-size: 13px;
  padding: 20px 0 0;
  margin: 0 0 5px;
}

.guide.guide-inquiry-detail .guide__btn-wrap {
  text-align: right;
}

.subscription .subscription--heading {
  padding-bottom: 23px;
  margin-bottom: 20px;
}

.subscription .subscription--heading__img {
  margin: 0 auto;
}

.subscription .content-heading {
  font-weight: bold;
  line-height: 1.4;
}

.subscription .content-heading__h2 {
  font-size: 20px;
  padding: 0.2em 0 0.2em 0;
  margin-top: 20px;
}

.subscription .content__txt {
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 15px;
}

.subscription .content__img-wrap--sns {
  width: 178px;
  height: 81px;
}

.subscription .content__img-wrap img {
  margin: 0 auto;
}

.subscription .content__btn-wrap--sns {
  width: 350px;
  margin: 70px auto 60px;
  background: #f0f0f0;
  justify-content: space-between;
}

.subscription .sns-area {
  padding-top: 10px;
}

.subscription .sns-area .sns__list {
  margin-right: 10px;
}

.subscription .point {
  padding-bottom: 15px;
}

.subscription .point__list-item .content__txt {
  padding: 10px 0;
  margin-bottom: 0;
}

.subscription .point__list-item .red_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  margin-right: 10px;
  padding: 0 20px;
  font-size: 16px;
  font-weight: bold;
  font-style: italic;
  color: #fff;
  background: #e40000;
  border-radius: 999px;
  white-space: nowrap;
}

.subscription .subscriptions_order_txt {
  margin: 0.5em 0 0.5em;
  font-size: 16px;
  padding-top: 15px;
}

.sitemap {
  padding: 0 25px;
}

.sitemap .sitemap__unit {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 40px;
  margin-top: 20px;
}

.sitemap .sitemap__flex {
  display: flex;
  justify-content: space-between;
}

.sitemap .sitemap__flex+.sitemap__flex {
  padding-top: 10px;
  margin-top: 20px;
  border-top: 1px dotted #666666;
}

.sitemap .sitemap__flex--item {
  flex: 0 0 50%;
}

.sitemap .sitemap__page-list.content__txt {
  font-size: 14px;
  line-height: 26px;
  padding-left: 1em;
}

.sitemap .sitemap--heading {
  color: #e40000;
  font-size: 24px;
  font-weight: bold;
  line-height: 2;
  padding: 20px 0 10px;
}

.sitemap .content-heading {
  font-weight: bold;
  line-height: 1.4;
}

.sitemap .content-heading__h2 {
  font-size: 20px;
  padding-bottom: 20px;
}

.sitemap .sitemap__page-list--heading {
  padding: 10px 0;
}

.sitemap .content__txt {
  font-size: 16px;
  line-height: 1.4;
}

.sitemap .content__txt--strong {
  font-weight: bold;
  color: #333;
}

.sitemap .sitemap__lead {
  margin-bottom: 20px;
}

.sitemap .sitemap__link {
  color: #333;
  line-height: 26px;
}

.sitemap .sitemap__link:hover {
  opacity: .8;
  text-decoration: none;
}

.container-shopping {
  line-height: 1.4;
}

.shopping-flow {
  padding: 20px 0;
}

.shopping-flow__img {
  margin: 0 auto;
}

.rc-baseline .shopping-heading {
  padding: 30px 0px;
  font-size: 22px;
  font-weight: bold;
}

.shopping-lead__txt {
  font-size: 16px;
  padding-bottom: 18px;
}

.shopping-area {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.shopping-area .main {
  order: 1;
}

.shopping-area .shopping-submit {
  order: 2;
}

.shopping-list {
  width: 100%;
}

.shopping-list__item {
  display: flex;
  border-bottom: 1px solid #ccc;
}

.shopping-list__ph {
  width: 150px;
  vertical-align: top;
}

.shopping-list__img {
  width: 130px;
  margin: 0 auto;
}

.shopping-list__detail {
  display: flex;
  justify-content: space-between;
  width: calc(100% - 150px);
  padding: 10px 10px 10px 10px;
  vertical-align: top;
}

.shopping-list__txt {
  padding-right: 0px;
  flex-basis: 60%;
}

.shopping-list__name, .shopping-list__grams {
  font-size: 16px;
  font-weight: bold;
}

.shopping-list__price {
  margin-top: 5px;
}

.shopping-list__quantity {
  font-size: 16px;
  flex-basis: 30%;
}

.shopping-list__deliv, .shopping-list__delete {
  font-size: 16px;
  line-height: 1.4;
}

.shopping-list__quantity-count {
  padding-top: 40px;
}

.shopping-list__quantity-count .select-wrap {
  position: relative;
}

.shopping-list__quantity-count .select-wrap:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: translate(-10px, -70%) rotate(45deg);
  pointer-events: none;
  z-index: 1;
}

.shopping-list__quantity-count .shopping-list__select {
  width: 100%;
  padding: 4px 30px 4px 4px;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #fff;
  vertical-align: middle;
  font-size: 14px;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ddd;
}

.shopping-list__quantity-count--cart {
  text-align: right;
}

.shopping-list__quantity-count--cart .shopping-list__price {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 18px;
}

.shopping-list__quantity-count--cart .shopping-list__quantity {
  font-size: 14px;
  line-height: 24px;
}

.quantity-spin {
  display: inline-block;
  margin-left: 10px;
  vertical-align: text-bottom;
}

.quantity-spin__item {
  display: inline-block;
}

.cart-content .shopping-list .shopping-list__item:first-child {
  border-top: 1px solid #ccc;
}

.shopping-area .shopping-submit .btn-box {
  width: 300px;
  text-align: center;
  padding: 15px 0;
  background: #F6F6F6;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.shopping-area .shopping-submit--confirm {
  order: 2;
  width: 300px;
  text-align: center;
  padding: 15px 0;
  background: #F6F6F6;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.shopping-area .shopping-submit--confirm .btn-box {
  background: none;
  border: 0 none;
}

.container-shopping .btn-submit__btn-red {
  display: inline-block;
  min-width: 200px;
  padding: 0 30px;
  height: 50px;
  line-height: 50px;
  background: #e2001a;
  background: linear-gradient( rgba(226, 0, 26), rgba(226, 0, 26)) !important;
  border: #e2001a;
  color: #fff;
  border-radius: 999px;
  margin: 20px auto;
  font-size: 14px;
  text-align: center;
}

.container-shopping .btn-submit__btn-white {
  display: inline-block;
  min-width: 200px;
  padding: 0 30px;
  height: 50px;
  line-height: 50px;
  background: #fff;
  border: 1px solid #ddd;
  color: #333;
  border-radius: 999px;
  margin: 20px auto;
  font-size: 14px;
  text-align: center;
}

.cart-submit {
  font-size: 14px;
  width: 300px;
  padding: 10px;
  background: #f6f6f6;
  border: 1px solid #ddd;
  border-radius: 5px;
  box-sizing: border-box;
}

.cart-payment-total {
  display: flex;
  justify-content: space-between;
}

.cart-payment-total_setting {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.cart-payment-total_select select {
  width: 150px;
}

.cart-payment-total__label {
  margin-bottom: 10px;
}

.cart-payment-total__amount {
  margin-bottom: 10px;
}

.cart-submit .btn-submit__btn-red, .cart-submit .btn-submit__btn-white {
  margin: 0 auto;
  display: block;
  width: 200px;
}

.cart-submit .btn-submit__btn-white {
  margin: 20px auto 0;
  display: block;
  width: 200px;
}

.container-shopping .one_column .btn-submit__btn-red {
  margin: 0;
}

.container-shopping .btn-submit__btn-red:hover, .container-shopping .btn-submit__btn-white:hover {
  opacity: .7;
}

.container-shopping .one_column .btn-submit__btn-red {
  margin-bottom: 20px;
}

.shopping-area .address-list {
  width: 100%;
}

.shopping-area .address-list .address-list__item {
  display: flex;
  border-bottom: 1px solid #ccc;
  padding: 20px 0;
  font-size: 16px;
}

.shopping-area .address-list__txt {
  width: 100%;
}

.shopping-area .address-list__radio {
  display: none;
}

.shopping-area .address-list__radio-label {
  display: inline-block;
  position: relative;
  padding-left: 30px;
  margin-bottom: 5px;
  cursor: pointer;
}

.shopping-area .address-list__radio-label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  border: 1px solid #999;
  border-radius: 50%;
  background: #fff;
}

.shopping-area .address-list__radio:checked+.address-list__radio-label:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 3px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: #e40000;
  border-radius: 50%;
}

.shopping-area .address-list__radio-label--bold {
  font-weight: bold;
}

.shopping-area .address-list__btn {
  text-align: right;
}

.shopping-area .address-list__btn--edit, .shopping-area .address-list__btn--delete {
  color: #333;
}

.shopping-area .address-list__btn--edit:hover, .shopping-area .address-list__btn--delete:hover {
  opacity: .8;
}

.shopping-complete__ph {
  padding-bottom: 20px;
}

.shopping-complete__img {
  margin: 0 auto;
}

.shopping-complete__contact-txt {
  font-size: 16px;
  padding-bottom: 20px;
}

.shopping-complete__btn {
  text-align: center;
}

.review {
  padding: 0 20px;
  width: 95%;
  margin: 0 auto;
}

.review__title {
  border-bottom: 1px solid #ccc;
  margin: 0 0 18px;
  padding: 0 0 10px;
  line-height: 33px;
  font-size: 20px;
  font-weight: bold !important;
}

.review__title--complete {
  margin: 0 0 18px;
  padding: 0 0 10px;
  line-height: 33px;
  font-size: 20px;
  font-weight: bold !important;
}

.review__lead {
  line-height: 1.8em;
  font-size: 16px;
}

.review__lead--complete {
  margin: 0 0 18px;
  padding: 0 0 10px;
  font-size: 14px;
  line-height: 1.8em;
}

.review_main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.review_main__product-image {
  width: 305px;
}

.review_main__product-image img {
  max-width: 100%;
  max-height: 100%;
  vertical-align: bottom;
}

.review_main__form {
  width: 630px;
}

.review_main__form__description-list {
  width: 100%;
  margin: 15px 0;
}

.review_main__form__description-list dt {
  padding: 10px 5px;
  text-align: left;
  vertical-align: top;
  font-size: 16px;
  font-weight: bold;
  clear: both;
  margin-top: 8px;
  margin-bottom: -1px;
}

.review_main__form__description-list dd {
  padding: 0 10px 0px 5px;
  text-align: left;
  vertical-align: top;
  font-size: 12px;
}

.review_main__form__description-list__star {
  color: #ff0000;
}

.review_main .attention {
  padding-left: 5px;
  font-size: 13px;
  color: #ff0000;
}

.review_main .limit {
  float: right;
  font-size: 13px;
}

.review .select-wrap {
  position: relative;
  width: 100%;
}

.review .select-wrap:before {
  content: "";
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  height: 8px;
  position: absolute;
  pointer-events: none;
  right: 0;
  top: 50%;
  -webkit-transform: translate(-10px, -70%) rotate(45deg);
  -ms-transform: translate(-10px, -70%) rotate(45deg);
  transform: translate(-10px, -70%) rotate(45deg);
  width: 8px;
  z-index: 1;
}

.review .select-wrap select {
  width: 100%;
  background: #fff;
  border: 1px solid #ddd;
  color: inherit;
  font-size: 14px;
  height: 30px;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 4px 30px 4px 4px;
  text-indent: 0.01px;
  text-overflow: "";
  vertical-align: middle;
}

.review input[type=text] {
  width: 100%;
  height: 30px;
  padding: 5px;
  border: 1px solid #ccc;
}

.review textarea {
  width: 100%;
  height: 150px;
  padding: 5px;
  border: 1px solid #ccc;
  font-size: 12px !important;
}

.main__title--product {
  font-size: 20px;
  color: #333;
  font-weight: 700 !important;
  line-height: 2;
  margin: 0;
  padding: 0 0 10px 0;
}

.product-detail-content {
  width: 100%;
  padding: 20px 0 0 15px;
}

.product-detail-content:after {
  content: "";
  display: block;
  clear: both;
}

.product-detail-content__image {
  width: 305px;
  float: left;
}

.product-key-visual__main-image {
  overflow: hidden;
  width: 305px;
  height: 305px;
}

.product-key-visual__thumbnail {
  margin-top: 25px;
}

.product-key-visual__thumbnail-item, .product-key-visual__thumbnail-item--active {
  display: inline-block;
  border: 1px solid;
  border-color: #ccc;
  width: 80px;
  height: 80px;
  overflow: hidden;
  margin: 0 10px 10px 0;
}

.product-key-visual__thumbnail-item--active {
  border-color: #e40000;
}

.product-key-visual__notice {
  font-size: 10px;
  padding-top: 5px;
}

.product-detail-content__head, .product-detail-content__description {
  width: 450px;
  float: right;
}

.product-review-handle {
  font-size: 12px;
  font-weight: bold;
  color: #e40000;
  margin-left: 10px;
  padding: 5px;
}

.product-review-handle .product-review-handle__icon {
  width: 20px;
  display: inline;
  margin-right: 5px;
  vertical-align: middle;
}

.product-sku-list {}

.product-sku-list__item {
  background: #eee;
  display: block;
  width: 100%;
  padding: 6px 10px;
  margin-bottom: 1px;
}

.product-sku .product-sku__radio {
  display: none;
}

.product-sku .product-sku__label {
  display: block;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.8;
  cursor: pointer;
  position: relative;
  width: 100%;
}

.product-sku .product-sku__label:after {
  content: '';
  display: inline-block;
  height: 18px;
  width: 18px;
  margin: 1px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #ccc;
  cursor: pointer;
  border-radius: 999px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}

.product-sku .product-sku__radio:checked+.product-sku__label:after {
  background: #e40000;
}

.product-sku .product-sku__txt {
  font-weight: normal;
  margin-left: 2em;
}

.product-sku.sold-out .product-sku__label {
  color: #808080;
}

.product-sku.sold-out .product-sku__txt {
  color: #e40000;
}

.product-quantity {
  padding: 0 10px;
}

.product-quantity__label {
  display: inline-block;
  font-size: 16px;
  line-height: 1.4;
  vertical-align: middle;
  padding: 10px 0;
  margin-right: 10px;
}

.product-quantity__select {
  display: inline-block;
  position: relative;
  width: 50px;
  vertical-align: middle;
}

.product-quantity__select:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: translate(-10px, -70%) rotate(45deg);
  pointer-events: none;
  z-index: 1;
}

.product-quantity__select select {
  width: 100%;
  padding: 4px 30px 4px 4px;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #fff;
  vertical-align: middle;
  font-size: 14px;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ddd;
}

.product-gift {
  padding: 10px 0 10px 20px;
  margin: 10px 10px 20px 12px;
  border-left: 3px solid #e40000;
  background: #ffe9e9;
}

.product-gift .product-gift__title {
  font-size: 15px;
  font-weight: bold;
  color: #e40000;
  margin-bottom: 5px;
  vertical-align: middle;
  line-height: 1.4;
}

.product-gift .product-gift__title-img {
  width: 20px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px;
}

.product-gift .product-gift__lead {
  color: #333;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 5px;
}

.product-gift .product-gift__lead-link {
  color: #333;
}

.product-gift-list .product-gift-list__item {
  line-height: 1.4;
  margin-bottom: 5px;
}

.product-gift-choice .product-gift-choice__radio {
  display: none;
}

.product-gift-choice .product-gift-choice__label {
  cursor: pointer;
  display: block;
  position: relative;
  width: 100%;
}

.product-gift-choice .product-gift-choice__label:before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  padding: 3px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #ccc;
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 6px;
}

.product-gift-choice .product-gift-choice__radio:checked+.product-gift-choice__label:before {
  background: #e40000;
}

.product-gift-choice .product-gift-choice__img {
  display: inline-block;
  width: 30px;
  margin-right: 5px;
  vertical-align: middle;
}

.product-gift-choice .product-gift-choice__txt {
  display: inline-block;
  vertical-align: middle;
  width: 250px;
}

.product-checkout {
  padding: 0 10px;
}

.product-checkout .product-checkout__button {
  display: block;
  background: #e40000;
  border-radius: 999px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
  padding: 12px 0;
}

.product-checkout .product-checkout__button:before {
  content: '';
  height: 26px;
  display: inline-block;
  vertical-align: middle;
}

.product-checkout .product-checkout__button-icon {
  display: inline-block;
  max-width: 26px;
  max-height: 26px;
  margin-right: 6px;
  vertical-align: middle;
}

.product-point-list {
  margin-top: 30px;
}

.product-point-list__item {
  border-bottom: 1px solid #ccc;
  min-height: 70px;
  padding: 6px 10px;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.product-point-list__item:first-of-type {
  border-top: 1px solid #ccc;
}

.product-point__text, .product-point__text--red {
  font-weight: bold;
  font-size: 14px;
  line-height: 1.4;
}

.product-point__text--red {
  color: #e40000;
}

.product-point .product-point-link {
  text-align: right;
  font-weight: bold;
}

.product-point-link .product-point-link__icon {
  display: inline-block;
  height: 12px;
  vertical-align: middle;
  margin-right: 3px;
}

.product-point-link .product-point-link__text {
  border-bottom: 1px solid #666;
  font-size: 12px;
  vertical-align: middle;
  color: #333;
}

.product-feature-block {
  margin-top: 20px;
}

.product-feature-block .product-features-block__title {
  font-size: 20px;
  font-weight: bold;
  padding: 0 0 20px 0;
}

.product-feature-list__item {
  border-bottom: 1px solid #ccc;
  min-height: 80px;
  padding: 10px;
}

.product-feature {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.product-feature .product-feature__img {
  width: 12%;
}

.product-feature .product-feature__description {
  width: 86%;
  font-size: 16px;
}

.product-data-list .product-data-list__title, .product-data-list .product-data-list__title--active {
  position: relative;
  margin-top: 1px;
  padding: 10px;
  background: #eaeaea;
  font-size: 17px;
  font-weight: bold;
}

.product-data-list .product-data-list__title:after, .product-data-list .product-data-list__title--active:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
}

.product-data-list .product-data-list__title:after {
  transform: translateY(-70%) rotate(135deg);
}

.product-data-list .product-data-list__title--active:after {
  transform: translateY(-30%) rotate(-45deg);
}

.product-data-list .product-data-list__detail {
  display: none;
}

.product-data-list .product-data-list__detail--active {
  background: rgba(0, 0, 0, .02);
  display: block;
  padding: 10px;
  font-size: 14px;
  line-height: 1.4;
}

.ingredient {
  background: rgba(0, 0, 0, .02);
  padding: 10px;
}

.ingredient table {
  font-size: 14px;
}

.ingredient table.left {
  float: left;
  width: 49%;
}

.ingredient table.right {
  float: right;
  width: 49%;
}

.ingredient table tr {
  display: block;
  padding: 10px 0;
  border-top: 1px solid #ddd;
}

.ingredient table tr:first-child {
  border-top: none;
}

.ingredient table tr table tr {
  border-top: 0;
}

.ingredient table th {
  font-weight: bold;
}

.ingredient table th, .ingredient table td {
  padding: 0 5px 0;
}

.ingredient p {
  font-size: 14px;
}

.grant {
  background: rgba(0, 0, 0, .02);
  padding: 10px;
}

.grant table {
  border-collapse: separate;
  border-spacing: 1px;
  background: #D0D0D0;
  width: 100%;
}

.grant .table_feeding_guide.feeding_guide_xls {
  margin: 14px 0;
}

.grant .table_feeding_guide.feeding_guide_xls:first-child {
  margin: 0 0 14px;
}

.grant table th, .grant table td {
  background: #fff;
  font-size: 14px!important;
  line-height: 1.8;
}

.grant p {
  font-size: 12px;
}

.review {
  background: #fff;
  margin-top: 20px;
  padding: 20px;
  line-height: 1.4;
}

.review__header-content {
  margin-bottom: 20px;
}

.review-header__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.review-header__title .review-header__title-txt {
  font-size: 20px;
  font-weight: bold;
}

.review-header__title .review-header__title-link {
  font-size: 13px;
  color: #333;
  font-weight: bold;
}

.review-header__title .review-header__title-link--icon {
  width: 16px;
  vertical-align: middle;
  display: inline-block;
}

.review-header__lead {
  font-size: 16px;
  margin-top: 20px;
}

.review-header__handle {
  margin-top: 20px;
}

.review-header__handle-txt {
  border-bottom: 1px solid #333;
  margin-right: 14px;
}

.review-header__handle-link--close, .review-header__handle-link--open {
  border-bottom: 1px solid #333;
  color: #333;
}

.review-header__handle-link--close .close-txt {
  display: none;
}

.review-header__handle-link--close .open-txt {
  display: inline-block;
}

.review-header__handle-link--open .close-txt {
  display: inline-block;
}

.review-header__handle-link--open .open-txt {
  display: none;
}

.review-main__no-review {
  padding: 10px;
}

.review-content__list {}

.review-content__item {
  padding: 30px 10px 10px 10px;
}

.review-content__item:nth-child(odd) {
  background: #eaeaea;
}

.review-detail__title {
  font-size: 18px;
  font-weight: bold;
}

.review-detail__rate {
  margin-top: 20px;
}

.rate-list {
  font-size: 22px;
}

.rate-list__item {
  color: #e40000;
}

.review-detail__comment {
  border-bottom: 1px solid #666;
  font-size: 16px;
  line-height: 1.8;
  margin: 20px 0 10px;
  padding-bottom: 20px;
}

.review-detail__reviewer {}

.reviewer-info {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #666;
}

.reviewer-info__name {
  text-align: left;
}

.reviewer-info__date {
  text-align: right;
}

.review-detail__product {
  margin-top: 10px;
}

.product-info {
  color: #666;
  line-height: 1.8;
}

.product-info__label {
  color: #333;
  font-size: 14px;
}

.product-info__item-name {
  font-size: 12px;
  text-indent: 1em;
}

.relational-item {}

.relational-item .relational-item__title {
  font-size: 15px;
  font-weight: bold;
  padding-top: 15px;
  padding-bottom: 20px;
}

.relational-item-list .relational-item-list__item {
  width: 250px;
  margin: 0 8px;
}

.relational-item-list .prev {
  left: -1%;
  top: 35%;
}

.relational-item-list .next {
  right: -1%;
  top: 35%;
}

.slider-item .slider-item__link {
  color: #333;
  display: block;
  text-decoration: none;
}

.slider-item .slider-item__img {
  width: 250px;
  border: 1px solid #ccc;
  margin-bottom: 20px;
}

.slider-item .slider-item__title {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.slider-item .slider-item__price {
  font-size: 14px;
}

.payment-lead__txt {
  font-size: 16px;
  padding-bottom: 18px;
}

.payment-method-list {}

.payment-method-list .payment-method-list__item {
  border-top: 1px solid #ddd;
}

.payment-method {}

.payment-method .payment-method__radio {
  display: none;
}

.payment-method .payment-method__label {
  min-height: 70px;
  font-weight: bold;
  font-size: 16px;
  color: #e40000;
  position: relative;
}

.payment-method .payment-method__radio+.payment-method__label {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  flex-direction: column;
  padding-left: 30px;
}

.payment-method .payment-method__label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  padding: 3px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #999;
}

.payment-method .payment-method__radio:checked+.payment-method__label:before {
  background: #e40000;
}

.payment-method .payment-method__label-image {
  display: inline;
  height: 20px;
}

.payment-detail {
  position: relative;
}

.payment-detail.credit {
  border: solid 2px #acacac;
  background: #eaeaea;
  padding: 15px 10px;
}

.payment-detail .payment-detail__title {
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 3px;
}

.payment-detail .payment-detail__lead {
  font-size: 16px;
  margin: 10px;
  padding: 0 0 18px;
}

.payment-detail .payment-detail__text {
  margin: 10px 10px 10px 20px;
  padding: 0;
  font-size: 15px;
}

.payment-detail .payment-detail__link {
  color: #333;
}

.card-list__item {
  padding: 5px 0;
}

.card-choice .card-choice__radio {
  display: none;
}

.card-choice .card-choice__label {
  font-size: 16px;
}

.card-choice .card-choice__label--exist {
  font-size: 13px;
}

.card-choice .card-choice__radio+.card-choice__label, .card-choice .card-choice__radio+.card-choice__label--exist {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  flex-direction: column;
  padding-left: 30px;
  position: relative;
}

.card-choice .card-choice__label:before, .card-choice .card-choice__label--exist:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  padding: 3px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #999;
}

.card-choice .card-choice__radio:checked+.card-choice__label:before, .card-choice .card-choice__radio:checked+.card-choice__label--exist:before {
  background: #e40000;
}

.card-data {
  padding-left: 30px;
}

.card-data__txt {
  font-size: 12px;
  padding: 0 17px 0 0;
}

.card-data__delete-btn {
  font-size: 85% !important;
  margin: 0;
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

.card-input-area {
  padding: 10px;
  font-size: 13px;
}

.card-input-area__title {
  font-weight: bold;
}

.card-input-area__detail {}

.card-input-area__txt--small {
  font-size: 12px;
  margin-top: 5px;
}

.card-input-area__input-txt {
  margin: 6px 0 14px;
  height: 30px;
  padding: 4px;
  background: #fff;
  border: 1px solid #ddd;
}

.card-input-area__select-wrap {
  margin: 6px 0 14px;
  width: 100px;
  position: relative;
  display: inline-block;
}

.card-input-area__select-wrap:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: translate(-10px, -70%) rotate(45deg);
  pointer-events: none;
  z-index: 1;
}

.card-input-area__select {
  width: 100%;
  padding: 4px 30px 4px 4px;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #fff;
  vertical-align: middle;
  font-size: 14px;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ddd;
}

.security-code {
  display: flex;
  position: relative;
  align-items: center;
}

.security-code .security-code__handle {
  font-size: 16px;
  margin: 10px 0;
  padding: 0 20px 0 0;
  position: relative;
  cursor: pointer;
  text-align: right;
  width: 100%;
}

.security-code .security-code__handle:after {
  content: '';
  position: absolute;
  display: inline-block;
  top: 50%;
  right: 5px;
  left: auto;
  width: 10px;
  height: 10px;
}

.security-code-detail {
  display: none;
  position: relative;
  height: 150px;
  background: #ffff;
  width: 806px;
  margin-left: -20px;
  padding: 10px;
}

.security-code-detail.acc-content.active {
  display: block;
}

.security-code-detail__content {
  display: table;
}

.security-code-detail__content--left, .security-code-detail__content--right {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
}

.security-code-detail__content--left {
  padding: 0 0 0 10px;
}

.security-code-detail__content--image {
  width: 350px;
}

.card-save-check {}

.card-save-check .card-save-check__checkbox {
  display: none;
}

.card-save-check .card-save-check__label {
  display: block;
  position: relative;
  padding-left: 30px;
  margin-top: 10px;
  cursor: pointer;
}

.card-save-check .card-save-check__label:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  background: #fff;
}

.card-save-check .card-save-check__checkbox:checked+.card-save-check__label:after {
  content: '';
  display: block;
  position: absolute;
  left: 3px;
  top: 50%;
  transform: translateY(-70%) rotate(-45deg);
  width: 12px;
  height: 8px;
  border-left: 3px solid #E2001A;
  border-bottom: 3px solid #E2001A;
}

.convenience-list .convenience-list__item {
  border-bottom: 1px solid #ddd;
  padding: 10px 0 10px;
}

.convenience-list .convenience-list__item:first-of-type {
  border-top: 1px solid #ddd;
}

.convenience-choice .convenience-choice__radio {
  display: none;
}

.convenience-choice .convenience-choice__label {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  flex-direction: column;
  padding-left: 30px;
  position: relative;
}

.convenience-choice .convenience-choice__label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  padding: 3px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #999;
}

.convenience-choice .convenience-choice__radio:checked+.convenience-choice__label:before {
  background: #e40000;
}

.payment-total {
  border-bottom: 1px solid #ccc;
}

.payment-total .payment-total__txt {
  padding-bottom: 4px;
  font-size: 16px;
  text-align: right;
}

.payment-total .payment-total__txt--amount {
  color: #e40000;
  font-weight: bold;
  font-size: 24px;
}

.payment-total .payment-total__note {
  padding-bottom: 10px;
  font-size: 12px;
  text-align: right;
}

.payment-option {
  margin-bottom: 40px;
  padding: 10px;
  line-height: 1.5;
  background: #eaeaea;
}

.payment-option__current-text {
  margin: 10px 10px 10px 5px;
  padding: 0;
  font-size: 15px;
}

.payment-option__current-point {
  font-weight: bold;
  font-size: 18px;
}

.payment-option__use-point {
  font-weight: bold;
  margin: 10px 10px 10px 5px;
  padding: 0;
  font-size: 15px;
}

.payment-option__input-text {
  width: 200px;
}

.payment-option__note {
  margin: 10px 10px 10px 5px;
  padding: 0;
  font-size: 12px;
}

.payment-option__btn-center {
  text-align: center;
  margin: 20px 0;
}

.delivery-option {
  padding-bottom: 15px;
}

.delivery-option__text {
  padding: 0 0 18px;
  font-size: 16px;
  line-height: 1.4;
}

.delivery-option__label {
  font-weight: bold;
}

.delivery-option__select-wrap {
  position: relative;
  margin: 10px auto;
  width: calc(100% - 20px);
}

.delivery-option__select-wrap:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: translate(-10px, -70%) rotate(45deg);
  pointer-events: none;
  z-index: 1;
}

.delivery-option__select {
  width: 100%;
  padding: 4px 30px 4px 4px;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #fff;
  vertical-align: middle;
  font-size: 14px;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ddd;
}

.coupon-list {
  margin-bottom: 20px;
}

.coupon-list__item {
  padding: 5px 0;
}

.coupon-choice .coupon-choice__radio {
  display: none;
}

.coupon-choice .coupon-choice__label {
  font-size: 13px;
}

.coupon-choice .coupon-choice__label-img {
  margin-top: 10px;
}

.coupon-choice .coupon-choice__radio+.coupon-choice__label {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  flex-direction: column;
  padding-left: 30px;
  position: relative;
  margin: 5px 0;
}

.coupon-choice .coupon-choice__label:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  padding: 3px;
  border: 3px solid #fff;
  background: #fff;
  box-shadow: 0 0 0 1px #999;
}

.coupon-choice .coupon-choice__radio:checked+.coupon-choice__label:before {
  background: #e40000;
}

.result-area {
  display: flex;
  justify-content: space-between;
  border: 1px solid #ccc;
  padding: 20px;
}

.result-area .result-area__content {
  width: 46%;
}

.result-content {
  line-height: 1.4;
}

.result-content .result-content__title {
  border-bottom: 1px solid #ccc;
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.result-content .result-content__text {
  padding: 0 8px;
  font-size: 14px;
}

.payment-result {
  font-size: 13px;
  width: 90%;
  margin: 0 auto;
}

.payment-result .payment-result__title {
  width: 66%;
  text-align: right;
  padding: 0;
}

.payment-result .payment-result__description {
  padding: 0;
  line-height: 1.5em;
  vertical-align: middle;
  text-align: right;
}

.payment-result-total {
  padding-top: 10px;
  border-top: 1px solid #666666;
  margin: 10px auto 0;
  width: 230px;
  font-size: 16px;
  font-weight: bold;
}

.payment-result-total .payment-result-total__table {
  width: 90%;
  margin: 0 auto;
}

.popup_body {
  width: 100%;
}

.popup-header {
  padding: 10px 15px;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 15px;
}

.popup-header__logo {
  height: 55px;
  text-align: left;
}

.popup-delivery-addr {
  width: 100%;
  padding: 0 10px;
  margin: 15px auto 0;
  background: #fff;
}

.popup-delivery-addr .popup-delivery-addr__title {
  font-weight: bold;
  margin: 0 0 15px 0;
  color: #333;
  font-size: 12px;
}

.popup-delivery-addr .popup-delivery-addr__text {
  margin: 15px 0 0 0;
  font-size: 14px;
  line-height: 1.4;
}

.popup-delivery-addr .btn-box {
  margin: 15px 0 30px 0;
  text-align: center;
}

.address-input-table {
  margin: 15px auto 0 auto;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-collapse: collapse;
  text-align: left;
  width: 100%;
  font-size: 12px;
}

.address-input-table .address-input-table__haad {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background-color: #f0f0f0;
  font-weight: normal;
  vertical-align: middle;
}

.address-input-table .address-input-table__detail {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.address-input-table .address-input-table__text--small {
  line-height: 1.4;
  font-size: 10px;
}

.address-input-table .address-input-table__zip-image-link {
  display: inline-block;
  vertical-align: middle;
}

.address-input-table .address-input-table__zip-image {
  display: inline-block;
  vertical-align: middle;
  width: 86px;
}

.address-input-table .address-input-table__input-text {
  padding: 2px;
  border: 1px solid #ccc;
  height: 30px;
  background: #fff;
  margin: 8px auto;
  vertical-align: middle;
  line-height: 1.5em;
  font-size: 14px;
  width: 75%;
}

.address-input-table .address-input-table__input-text--small {
  padding: 2px;
  border: 1px solid #ccc;
  height: 30px;
  background: #fff;
  margin: 8px auto;
  vertical-align: middle;
  line-height: 1.5em;
  font-size: 14px;
  width: 24%;
}

.address-input-table .address-input-table__input-text--large {
  padding: 2px;
  border: 1px solid #ccc;
  height: 30px;
  background: #fff;
  margin: 8px auto;
  vertical-align: middle;
  line-height: 1.5em;
  font-size: 14px;
  width: 95%;
}

.address-input-table .address-input-table__select-wrap {
  display: inline-block;
  position: relative;
  width: auto;
}

.address-input-table .address-input-table__select-wrap:before {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  transform: translate(-10px, -70%) rotate(45deg);
  pointer-events: none;
  z-index: 1;
}

.address-input-table .address-input-table__select {
  width: 100%;
  border: solid 1px #ccc;
  padding: 4px 30px 4px 4px;
  outline: none;
  background: #fff;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.cart-heading-announce {
  background: url(../images/myRC_BOX.png) no-repeat 20px center;
  border: 1px solid #ddd;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 132px;
  margin-bottom: 20px;
  padding: 10px;
  padding-left: 210px;
  width: 100%;
}

.cart-heading-announce__title {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 10px;
}

.cart-heading-announce__description {
  font-size: 14px;
  line-height: 24px;
}

.cart-area {
  background: #F6F6EE;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 10px;
}

.cart-area__inner {
  background: #fff;
  padding: 40px;
  box-shadow: 0 4px 7px #d5d5d5;
}

.cart-area-header .cart-area-header__title {
  font-size: 16px;
  line-height: 1.4;
  font-weight: bold;
}

.cart-area-header .cart-area-header__title:before {
  content: " ";
  top: -2px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: 30px;
  width: 5px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  margin-right: 10px;
  background: #DE0000;
}

.cart-area-header .cart-area-header__title-inner-txt {
  font-size: 22px;
}

.cart-area-header .cart-area-header__description {
  font-size: 14px;
  margin-bottom: 20px;
  line-height: 24px;
}

.cart-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.cart-content .main {
  order: 1;
  width: 700px;
}

.cart-content .cart-submit {
  order: 2;
}

/*============================

・SP-common
・SP-header
・SP-nav
・SP-slider
・SP-common-news
・SP-main-container
・SP-side
・SP-main
・SP-footer

============================*/

@media screen and (max-width: 767px) {
  /*--------------------------------------------------
  　SP-common
  --------------------------------------------------*/
  .mt--20 {
    margin-top: 2%;
  }
  .mb--20 {
    margin-bottom: 2%;
  }
  .h_mt {
    /* h2 */
    margin-top: 30px;
  }
  .button_area {
    padding-top: 20px;
  }
  ul.button_area {
    padding-top: 0;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  ul.button_area li {
    margin: 0;
    padding-top: 20px;
  }
  /*--------------------------------------------------
  　SP-header
  --------------------------------------------------*/
  html.notScroll {
    height: 100%;
    overflow: hidden;
  }
  body.notScroll {
    height: 100%;
    overflow: hidden;
  }
  .headerWrap {
    height: 70px;
    margin-bottom: 0;
  }
  .headerWrap.login {
    height: 110px;
  }
  .header_sp {
    display: flex;
    flex-direction: column;
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: 999;
    top: 0;
    pointer-events: none;
  }
  .header_sp>.flex-container {
    padding: 0 10px;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ddd;
    height: 70px;
    background: #fff;
    pointer-events: auto;
    z-index: 999;
  }
  .header-logo {
    width: 200px;
    text-align: center;
    pointer-events: auto;
    max-width: 40%;
  }
  .header-logo__img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: bottom;
    margin-bottom: 4px !important;
  }
  .header-logo__span {
    display: block;
    font-weight: bold;
    font-size: .6rem;
    line-height: 1;
    white-space: nowrap;
    color: #666;
  }
  .searchArea {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 0;
    padding: 0 10px;
    background: #f2f2f2;
    pointer-events: none;
    opacity: 0;
    transition: all .25s cubic-bezier(.15, .5, .5, 1);
    z-index: 998;
  }
  .searchArea.active {
    height: 50px;
    padding: 10px;
    border-bottom: 1px solid #ccc;
    pointer-events: auto;
    opacity: 1;
  }
  .top_search_input {
    width: 74%;
    padding: 10px 0 10px 20px;
    background: url(../images/ico_search.png) no-repeat left center;
    border: none;
    border-bottom: 1px solid #ccc;
  }
  .top_search_btn {
    padding: 8px 22px;
    border: none;
    border-radius: 999px;
    background: #808285;
    font-size: 14px;
    color: #fff;
  }
  .menu-area {
    width: 50%;
  }
  .header-menu-lists.flex {
    justify-content: flex-end;
    align-items: center;
  }
  .header-menu-list {
    width: 30px;
    margin-left: 16px;
    font-size: .6rem;
  }
  .header-menu-list.item-on {
    position: relative;
  }
  .header-menu-list.item-on .cart-number {
    width: 16px;
    height: 16px;
    line-height: 14px;
    border-radius: 8px;
    background-color: #ff0000;
    font-size: 10px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    position: absolute;
    top: -12px;
    left: 9px;
  }
  .header-menu-list>* {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    white-space: nowrap;
  }
  .header-menu-list__image {
    width: 20px;
    height: 20px;
    margin-bottom: 3px;
  }
  .header-menu-list__image#bgIcoMenu {
    display: block;
    background: url(../images/ico_menu.png) no-repeat center;
    background-size: contain;
  }
  .header-menu-list__image#bgIcoMenu.active {
    background: url(../images/ico_close.png) no-repeat center;
    background-size: contain;
  }
  .login-info {
    height: 40px;
    padding: 10px;
    text-align: right;
    border-bottom: 1px solid #ccc;
    background: #fff;
  }
  .menuArea {
    position: relative;
    width: 100vw;
    transform: translateX(100%);
    transition: transform .25s cubic-bezier(.15, .5, .5, 1);
    background: #fff;
    z-index: 999;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    flex-grow: 999;
    pointer-events: none;
  }
  .menuArea.active {
    transform: translateX(0);
    pointer-events: auto;
  }
  .tab-lists .tab-list {
    position: relative;
  }
  .tab-lists .tab-list.comingsoon:after {
    content: 'COMING SOON';
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .8);
    font-size: 16px;
    color: #666;
    font-weight: bold;
    z-index: 99;
  }
  /*--------------------------------------------------
  　SP-nav
  --------------------------------------------------*/
  .menu-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: transform .25s cubic-bezier(.15, .5, .5, 1);
  }
  .menu-content .menu-content__ttl {
    padding: 0 10px;
    font-weight: bold;
    font-size: 16px;
    line-height: 2;
    color: #e2001a;
  }
  .menu-content.after {
    transform: translateX(100%);
  }
  .menu-content.before {
    transform: translateX(-100%);
  }
  .menu-content .tab-lists {
    margin-bottom: 30px;
  }
  .menu-content .tab-list {
    padding-left: 10px;
    padding-right: 10px;
    border-bottom: 1px solid #ccc;
    font-size: 16px;
    font-weight: bold;
    line-height: 3;
  }
  .menu-content .tab-list-child1 {
    padding-left: 20px;
  }
  .menu-content .tab-list-child2 {
    padding-left: 30px;
    padding-right: 10px;
    background: #eaeaea;
  }
  .menu-content .tab-list.accordion-contents.active .tab-list-child2 {
    border-bottom: 1px solid #ccc;
  }
  .menu-content .tab-list.accordion-contents.active .tab-list-child2:last-child {
    border-bottom: none;
  }
  .menu-content .tab-list.accordion-tab {
    padding-right: 40px;
    position: relative;
  }
  .menu-content .tab-list.accordion-tab:after {
    position: absolute;
    top: 50%;
    right: 20px;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: translateY(-50%) rotate(135deg);
  }
  .menu-content .tab-list.accordion-tab.active:after {
    transform: translateY(-50%) rotate(-45deg);
  }
  .menu-content .tab-list.accordion-contents {
    padding: 0;
    line-height: 0;
    border-top: none;
    opacity: 0;
    visibility: hidden;
    transition: line-height .25s, opacity .25s, visibility .25s;
    font-weight: normal;
  }
  .menu-content .tab-list.accordion-contents.active {
    line-height: 2.4;
    opacity: 1;
    visibility: visible;
  }
  .menu-content .tab-list.tab-list.logout {
    padding: 10px;
    text-decoration: underline;
    text-align: right;
  }
  .menu-content .tab-list:first-child {
    border-top: 1px solid #ccc;
  }
  .menu-content .tab-lists:first-of-type .tab-list:first-of-type {
    border-top: none;
  }
  .menu-content .back {
    background: url(../images/ico_arrow_left.png) no-repeat center left 10px;
    background-size: 20px;
    margin-bottom: 50px;
    padding-left: 50px;
  }
  .menu-content .next {
    background: url(../images/ico_arrow_right.png) no-repeat center right 10px;
    background-size: 20px;
  }
  .menu-content .closeMenuBtn {
    width: 30px;
    height: 30px;
    margin: 0 auto;
    margin-bottom: 50px;
    background: url(../images/ico_close.png) no-repeat center center;
    background-size: 30px;
  }
  .select-wrap.inline {
    width: auto;
  }
  .select-wrap.inline select {
    width: 100%;
  }
  .rcj-breadcrumb {
    background: #eaeaea;
    border-bottom: 1px solid #ddd;
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: scroll;
    padding: 10px;
    height: 40px;
    margin-bottom: 0;
  }
  .rcj-breadcrumb__list {
    max-width: 100%;
    padding: 0;
    font-size: 13px;
    font-weight: normal;
    line-height: 1.3;
  }
  /*--------------------------------------------------
  　SP-slider
  --------------------------------------------------*/
  .main-slider {
    width: 100%;
    min-width: auto;
    margin: 0 auto;
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
  }
  .slick-dotted.slick-slider {
    margin-bottom: 30px;
  }
  .slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
  }
  .top-page {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
  }
  .prev.slick-arrow {
    left: 2%;
  }
  .slick-arrow {
    top: 50%;
    position: absolute;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    background: #f5f4ef;
    border-radius: 999px;
    z-index: 10;
    cursor: pointer;
  }
  .slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
  }
  .slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .main-slider-content {
    position: relative;
  }
  .slide-diagnosis-description {
    position: absolute;
    height: 100%;
    padding-left: 6vw;
    padding-top: 10vw;
    top: 0;
    left: 0;
    right: 0;
    transform: none;
  }
  .top-page__img {
    margin: 0 auto;
    width: 100%;
    display: block;
  }
  .slide-diagnosis-description__p {
    margin-bottom: 10%;
    font-size: 15px;
    font-weight: bold;
  }
  .slide-diagnosis-description__h2 {
    margin-bottom: 50px;
    font-size: 30px;
    font-weight: 600 !important;
    color: #e40000;
  }
  .slide-diagnosis-description .btn-normal {
    position: absolute;
    bottom: 4vw;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
  input[type="submit"].btn-normal, input[type="button"].btn-normal, .btn-normal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 50px !important;
    line-height: 50px;
    padding: 0 30px;
    border: 2px solid #e40000;
    border-radius: 999px;
    background: transparent;
    color: #e40000;
    font-size: 14px;
    text-decoration: none;
    white-space: nowrap;
    transition: .2s;
  }
  /*--------------------------------------------------
  　SP-common-news
  --------------------------------------------------*/
  .common-news {
    margin-bottom: 30px;
    padding-bottom: 30px;
    text-align: left;
    font-size: 10px;
    border-bottom: 1px solid #ccc;
  }
  .common-news__list {
    height: 26px;
  }
  .common-news__list a {
    color: #333;
  }
  .common-news__list--text {
    margin: 10px 0 0 0;
    padding-bottom: 0;
    border-bottom: 1px solid #7a7a7a;
    font-size: 14px;
    display: table;
  }
  /*--------------------------------------------------
  　SP-main-container
  --------------------------------------------------*/
  .container {
    width: 100%;
    margin: 0 auto;
    display: block;
  }
  .container__box {
    width: 96%;
    margin: 0 auto;
    display: block;
  }
  .one_column {
    width: 97%;
    margin: 0 auto;
  }
  /*--------------------------------------------------
  　SP-side
  --------------------------------------------------*/
  .side {
    width: 100%;
  }
  .side__bg {
    position: relative;
    background: url("../images/bg_shopping_sp_210625.png") no-repeat;
    background-size: contain;
    height: 98vw;
  }
  .side__btn {
    position: absolute;
    top: 72%;
    left: 50%;
    transform: translateX(-50%);
  }
  .side__btn--a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    line-height: 50px;
    padding: 0 30px;
    border: 2px solid #e40000;
    border-radius: 999px;
    background: transparent;
    color: #e40000;
    font-size: 14px;
    text-decoration: none;
    white-space: nowrap;
    transition: .2s;
  }
  .side__btn--a:hover {
    background: #e40000;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
    transition: .6s !important;
  }
  .icon-bnr {
    /* point・subscription */
    display: flex;
    align-items: center;
  }
  .icon-bnr__img {
    width: 24%;
    text-align: center;
  }
  .icon-bnr__img--cn {
    display: initial !important;
  }
  .icon-bnr__txt {
    padding: 12px 0;
    width: 60%;
  }
  .icon-bnr__ttl {
    line-height: 2;
    font-size: 18px;
    font-weight: bold;
    color: #e40000;
  }
  .icon-bnr__description, .sns__ttl {
    line-height: 1.6;
    font-size: 14px;
    font-weight: bold;
  }
  .icon-bnr__arrow {
    width: 16%;
  }
  .icon-bnr__arrow:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: translateX(100%) rotate(45deg);
  }
  .sns {
    /* sns */
    padding: 0 0 10px 0;
    border-top: 1px solid #ccc;
  }
  .signup-forms {
    /* newsletter・大枠 */
    padding: 15px 0;
    background: #fff;
    border-top: 1px solid #ccc;
    border-left: none;
    border-right: none;
    border-bottom: none;
    text-align: center;
  }
  .heading {
    /* STEP1ペット選択、STEP2Eメール枠 */
    width: 100%;
    margin-bottom: 30px;
    padding: 0 0 0 10px;
    text-align: left;
  }
  .form-text {
    /* STEP2Eメールテキストエリア */
    line-height: 2em;
    border: 1px solid #d5d2bd;
    padding: 2px 10px;
    width: 62%;
    font-size: 120%;
    margin-right: 0;
  }
  .extra {
    /* 同意エリア */
    /*display: none;*/
    display: block;
  }
  .signup-forms .mail input[type="button"] {
    /* ボタンの装飾 */
    border-radius: 999px;
    width: 70px;
    width: 27%;
    font-size: 100%;
  }
  /*--------------------------------------------------
  　SP-main
  --------------------------------------------------*/
  .main {
    width: 100%;
  }
  .main__title {
    padding-bottom: 20px;
    font-size: 20px;
    color: #333;
    font-weight: 700 !important;
    line-height: 1.4;
  }
  .main__box {
    width: 48.5% !important;
  }
  .box__bdr {
    border-bottom: none;
  }
  .main__img {
    width: 100%;
  }
  .box__item {
    /* list */
    margin: 0 14px;
    padding: 10px 6px !important;
    border-bottom: 1px solid #ccc;
  }
  .box__item:last-child {
    margin-bottom: 20px;
    border-bottom: none;
  }
  .box__item--title {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    display: block;
    width: 100%;
    height: 100%;
  }
  .box__item--text {
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.4;
    color: #666;
  }
  .flex-column {
    display: block;
  }
  .news__title {
    /* news */
    margin: 40px 0 0 0;
    border-bottom: 1px solid #000;
  }
  .news__list {
    display: block;
    font-size: 14px !important;
    color: #444;
    line-height: 1.5 !important;
  }
  .news__date {
    margin: 0;
    width: 160px;
    padding: 15px 0 0 0;
    text-align: left;
    font-size: 10px;
    border-bottom: none;
  }
  .news__text {
    border-bottom: 1px solid #ccc;
    padding: 0 0 15px 0;
    width: 100%;
    line-height: 1.6;
  }
  .btn--p {
    /* 一覧をみる */
    margin: 0 auto;
    text-align: center;
    padding: 25px 0 60px 0;
  }
  .btn-gray {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    line-height: 40px;
    padding: 0 30px;
    border: 2px solid #808285;
    border-radius: 999px;
    color: #808285;
    font-size: 14px;
    text-decoration: none;
  }
  /*--------------------------------------------------
  　SP-footer
  --------------------------------------------------*/
  .footer-sp {
    min-width: auto;
    width: 100%;
    margin-top: 0;
  }
  .link-area {
    background: #f6f6f6;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  .link-area>.wrapper {
    display: block;
    padding: 0;
  }
  .site-map {
    display: block;
  }
  .site-map__lists {
    margin-right: 0;
  }
  .site-map__list.accordion-tab {
    padding-right: 40px;
    position: relative;
  }
  .site-map__list {
    margin: 0 !important;
    padding: 20px 10px;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    font-size: 14px;
  }
  .site-map__list:last-child {
    border-bottom: none;
  }
  .site-map__list.accordion-contents {
    padding: 0;
    line-height: 0;
    border-top: none;
    opacity: 0;
    visibility: hidden;
    transition: line-height .25s, opacity .25s, visibility .25s;
  }
  .site-map__list.accordion-contents.active {
    line-height: 3;
    opacity: 1;
    visibility: visible;
  }
  .site-map__list.accordion-contents .accordion-contents__li {
    padding-left: 20px;
    font-weight: normal;
  }
  .site-map__list.accordion-contents.active .accordion-contents__li {
    border-bottom: 1px solid #ccc;
  }
  .site-map__list.accordion-contents.active .accordion-contents__li:last-child {
    border-bottom: none;
  }
  .site-map__list.accordion-tab:after {
    position: absolute;
    top: 50%;
    right: 20px;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: translateY(-50%) rotate(135deg);
  }
  .site-map__list.accordion-tab.active:after {
    transform: translateY(-50%) rotate(-45deg);
  }
  .special {
    padding: 50px 10px;
  }
  .special__img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: bottom;
  }
  .special__a {
    display: block;
    margin: 10px auto;
    max-width: 50%;
  }
  .special__ttl {
    font-size: 18px;
    padding: 10px 0;
    text-align: center;
  }
  .special__p {
    font-size: 12px !important;
    text-align: left;
    line-height: 2;
  }
  .wrapper {
    width: 100%;
  }
  .copyright {
    padding: 60px 0 80px 0;
    text-align: center;
  }
  .copyright__p, .copyright__span {
    color: #fff;
    font-size: 12px;
  }
  .copyright__flex-container {
    display: block;
    margin: 20px 0;
    justify-content: space-between;
  }
  .copyright__span:not(:last-child) {
    margin-bottom: 50px;
  }
  .copyright__span {
    display: block;
    line-height: 1.4;
  }
  .login-panel {
    margin-top: 5px;
  }
  .login-panel .login-panel__img-wrap.flexslider {
    float: none;
    width: 100%;
    background: #fff;
    border: 4px solid #fff;
    position: relative;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    zoom: 1;
  }
  .login-panel .login-panel__img-wrap.flexslider .flexslider_ul {
    display: flex;
  }
  .login-panel .login-panel__column {
    width: 100%;
    padding: 10px;
    float: none;
  }
  .login-panel .login-panel__column h3.login-panel__column--heading {
    font-size: 20px;
  }
  .login-panel p {
    font-size: 14px;
    line-height: 22px;
    padding: 5px 0;
    margin-bottom: 5px;
    margin-left: 10px;
  }
  .login-panel .login-panel__column--lead {
    margin-left: 0;
  }
  .login-panel .login-panel__input-box {
    width: auto;
    padding: 10px;
    margin: 0 auto;
    background: #F0F0F0;
  }
  .login-panel .login-panel__input {
    margin-top: 0;
    padding-bottom: 0;
    margin-left: 0;
  }
  .login-panel .login-panel__input .maill-check {
    margin: 0;
  }
  .login-panel__input label {
    font-size: small;
  }
  .login-panel .login-panel__input input[type="text"], .login-panel .login-panel__input input[type="password"] {
    width: 100%;
    margin: 8px auto;
    vertical-align: middle;
    line-height: 1.5em;
    font-size: 120%;
  }
  .login-panel .forgot-pass {
    margin-left: 0;
  }
  /* 検索結果表示 */
  .search-result {
    background-color: #ddd;
    padding: 7px 15px;
    font-size: 13px;
  }
  .search-result .search-result__notice {
    font-weight: bold;
  }
  /* ページャー */
  .list-pager {
    margin: 10px 0;
    text-align: center;
    font-size: 13px;
  }
  .list-pager__item, .list-pager__item--current, .list-pager__item--prev, .list-pager__item--prev--inactive, .list-pager__item--next, .list-pager__item--next--inactive {
    background-color: #eee;
    display: inline-block;
    vertical-align: middle;
    height: auto;
    line-height: 1;
    margin: 10px 2px 0;
    padding: 10px 0;
    color: #000;
  }
  .list-pager__item {
    font-weight: bold;
    width: 30px;
  }
  .list-pager__item--current {
    color: #fff;
    font-weight: bold;
    padding: 10px 5px;
    border: 1px solid #000000;
    background: #000000;
    width: 30px;
    line-height: 1;
  }
  .list-pager__item--prev, .list-pager__item--prev--inactive, .list-pager__item--next, .list-pager__item--next--inactive {
    border: 1px solid #eee;
    line-height: 1;
    width: 70px;
    padding: 10px 5px;
  }
  .list-pager__item--prev--inactive, .list-pager__item--next--inactive {
    color: #999;
  }
  .list-pager__item--link {
    color: #000;
    text-decoration: none;
    font-weight: bold;
    padding: 0;
  }
  /* 商品リスト */
  .product-list {
    margin-bottom: 10px;
  }
  .product-list__content {
    min-height: auto;
    border-bottom: 1px solid #ccc;
  }
  .product-list__content-item {
    display: flex;
    align-items: center;
    padding: 14px 10px;
    width: 100%;
    height: 100%;
  }
  .product-list__content-image {
    min-width: 100px;
    max-width: 100px;
    min-height: 100px;
    max-height: 100px;
  }
  .product-detail {
    margin-left: 0;
  }
  .product-detail h1 {
    margin-bottom: 12px;
    font-size: 14px;
    color: #333;
    line-height: 140%;
    padding: 0;
  }
  .product-detail__ttl {
    margin-bottom: 12px;
    font-size: 14px;
    color: #333;
    font-weight: bold;
  }
  .product-detail__price {
    margin-bottom: 0px;
    font-size: 14px;
    font-weight: bold;
    text-align: right;
  }
  .product-detail__info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*width: 300px;*/
    margin-top: 5px;
  }
  .product-detail__info-type-item {
    display: inline-block;
    border-radius: 999px;
    background: #eee;
    margin-right: 10px;
    margin-bottom: 6px;
    padding: 0 10px;
    line-height: 20px;
    font-size: 12px;
    font-weight: bold;
    color: #333;
  }
  .product-detail__info-image {
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
    position: relative;
    top: 0;
    left: 0;
  }
  .terms-of-service .terms-of-service--heading .entry-title__h1 {
    font-size: 25px;
    padding: 0;
  }
  .terms-of-service .terms-of-service--heading {
    background: transparent;
    margin: 0 0 58px;
    min-height: auto;
  }
  .terms-of-service .terms-of-service--content__heading {
    padding: 16px 0 12px;
    font-size: 110%;
    font-weight: bold;
    border-top: 1px solid #ccc;
  }
  .terms-of-service .terms-of-service--content {
    padding: 0;
    margin: 0;
    border: none;
    background: transparent;
  }
  .terms-of-service .terms-of-service--content p {
    font-size: 14px;
    line-height: 1.4;
    padding: 10px 0 10px;
  }
  .terms-of-service .terms-of-service--content .terms-of-service--content__txt-area textarea {
    margin: 10px 0 0;
  }
  .input-panel--entry .input-panel--entry-content.attention {
    color: #ff0000;
    margin-bottom: 10px;
  }
  .input-panel--entry .input-panel--entry-heading .entry-heading__h1 {
    font-size: 25px;
    padding: 0;
  }
  .input-panel--entry .input-panel--entry-content .input-panel--entry-content__th {
    width: auto;
    font-weight: bold;
  }
  .input-panel--entry .input-panel--entry-content .input-panel--entry-content__td p {
    font-size: 14px;
  }
  .input-panel--entry .input-panel--entry-content .input-panel--entry-content__td span {
    font-size: 14px;
  }
  .input-panel--entry .customer-info--name {
    width: 95%;
  }
  .input-panel--entry .customer-info--zip {
    width: 23%;
  }
  .input-panel--entry .customer-info--address {
    width: 75%;
  }
  .input-panel--entry .customer-info--tel {
    width: 24%;
  }
  .input-panel--entry .customer-info--mail {
    width: 75%;
  }
  .input-panel--entry .customer-info--pass {
    width: 95%;
  }
  .input-panel--entry .customer-info--forget {
    width: 75%;
  }
  .input-panel--entry .news-letter {
    margin: 20px 0 10px;
  }
  .input-panel--entry .news-letter .news-letter__gallery .news-letter__gallery--item {
    padding: 0;
  }
  .input-panel--entry .pet-info--name {
    width: 75%;
  }
  .input-panel--entry .plus_minus {
    width: 95%;
    margin: 15px auto 0;
    text-align: center;
  }
  .input-panel--entry .plus_minus a {
    display: block;
    line-height: 46px;
    text-align: center;
    text-decoration: none;
    border-radius: 7px;
    margin: 0.5em auto;
    width: 200px;
  }
  .input-panel--entry .plus_minus a.minus {
    height: 46px;
    padding: 0 5px;
    background: #666666;
    color: #ffffff;
  }
  .input-panel--entry .entry-sub-heading__p--pet-info {
    padding: 10px 0;
    font-size: 14px;
  }
  .input-panel--entry .pet-info__heading {
    border-top: 1px solid #ccc;
    font-size: 14px;
    padding: 19px 0 15px;
    margin: 0;
  }
  .input-panel--entry .input-panel--entry-content .input-panel--entry-content__td input.btn-submit-red {
    margin-top: 20px;
  }
  .entry--confirm.input-panel--entry .entry-heading__h2 {
    padding: 0.5em 0px 0.5em 0;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.2em;
  }
  .entry--confirm.input-panel--entry .entry-heading__h2:before {
    content: " ";
    top: -2px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 30px;
    width: 5px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    margin-right: 10px;
    background: #DE0000;
  }
  .entry--confirm .entry-sub-heading__p--confirm {
    font-size: 14px;
    line-height: 1.4;
    padding: 10px 0 10px;
  }
  .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__table {
    background: transparent;
    margin: 10px 0 20px;
  }
  .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__table.table--pet-confirm {
    width: 100%;
  }
  .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__th, .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td {
    display: block;
  }
  .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__th {
    background: #ddd;
    font-size: 15px;
  }
  .entry--confirm.input-panel--entry .input-panel--entry-content .input-panel--entry-content__td {
    background: #F6F6EE;
  }
  .entry--confirm .pet_data .pet_data__dt {
    font-size: 15px;
    font-weight: bold;
  }
  .entry--confirm .pet_data .pet_data__dd {
    position: static;
    text-align: center;
  }
  .entry--confirm .pet_data .pet_data__dd img {
    margin: 0 auto;
  }
  .entry--complete .entry--complete__wrap {
    padding: 10px;
  }
  .entry--complete .entry--complete__heading {
    font-size: 20px;
    font-weight: bold;
    text-align: left;
    margin: 0;
  }
  .entry--complete .button_area {
    margin: 0;
  }
  .my-page {
    width: 100%;
  }
  .my-page .btn-normal {
    min-width: auto;
  }
  .my-page .my-page__heading {
    padding: 0 10px;
    font-size: 25px
  }
  .my-page .my-page__p {
    font-size: 14px;
  }
  .my-page .my-page__content .content__botton-wrap {
    text-align: center;
  }
  .my-page .my-page__content .content__bnr {
    width: 96%;
    height: auto;
    min-height: auto;
    margin: 0 auto 10px auto;
  }
  .my-page .my-page__content .content__bnr .bnr-item--img {
    width: 24%;
  }
  .my-page .my-page__content .content__bnr .bnr-item--text {
    text-align: left;
  }
  .my-page .my-page__content .content__bnr .bnr-item--arrow {
    width: 16%;
  }
  .my-page .my-page__content .content__dt {
    font-size: 12px;
  }
  .my-page .my-page__content .content__dd {
    font-size: 14px;
  }
  .section-name-area .name-area-name .content__dd {
    font-size: 20px;
  }
  .news .main__title {
    font-size: 25px;
    border: none;
    margin: 0;
    padding: 0;
  }
  .news .topics-list {
    padding: 10px 10px 5px;
    font-size: 14px;
    line-height: 1.4;
  }
  .news .topics-list .topics-list__heading {
    font-size: 110%;
    font-weight: bold;
    border-top: 1px dotted #cccccc;
    padding-top: 15px;
  }
  .news .topics-list .topics-list__date {
    color: #333;
  }
  .news .topics-list .topics-list__img-wrap {
    flex: 0 0 30%;
    margin-left: 10px;
  }
  .terms .terms--heading {
    font-size: 25px;
    padding: 0;
  }
  .terms .terms__content--content-wrap {
    border: 1px solid #bbbbbb;
    border-radius: 0;
    padding: 10px;
    margin: 0 0 20px;
  }
  .terms .terms-heading__h3 {
    padding: 10px 0;
    margin: 0 0 10px;
  }
  .terms .terms-heading__h4 {
    padding: 0;
  }
  .terms .terms__content--content-inner {
    padding: 10px;
    font-size: 14px;
  }
  .terms.terms--law .terms--heading {
    padding: 15px 5px 5px 5px;
    color: #333;
  }
  .terms.terms--law .terms-heading__h4 {
    padding: 20px 0 10px 0;
    font-size: 16px;
  }
  .terms.terms--law .terms-heading__h5 {
    padding: 10px 0 0 10px;
    font-size: 14px;
  }
  .terms.terms--law .terms-heading__h5:before {
    content: '●';
    margin-right: 4px;
    font-size: 12px;
  }
  .one_column.point-program {
    padding: 10px;
    margin: 0 auto;
    width: 100%;
  }
  .point-program .point-program--heading__img {
    width: 100%;
  }
  .point-program .content__txt {
    font-size: 14px;
  }
  .point-program .content__img-wrap--graph img {
    width: 100%;
  }
  .about-royalcanin .one_column {
    width: 100%;
  }
  .about-royalcanin .about-royalcanin--page__heading {
    flex-wrap: wrap;
    margin: 0;
    padding: 30px 10px 0 10px;
  }
  .about-royalcanin .about-royalcanin--page__heading .flex-item {
    width: 100%;
  }
  .about-royalcanin .about-royalcanin--page__heading .flex-item:first-of-type {
    flex: 0 0 100%;
  }
  .about-royalcanin .about-royalcanin--page__heading .about-royalcanin__heading--alpha {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 20px;
    padding: 0;
  }
  .about-royalcanin .about-royalcanin__heading--beta {
    line-height: 1.2;
    margin: 10px 20px 10px 10px;
    padding: 15px 5px 5px 5px;
  }
  .about-royalcanin .about-royalcanin__heading--delta {
    font-size: 16px;
    margin-bottom: 6px;
  }
  .about-royalcanin .about-royalcanin__p--part {
    font-weight: bold;
    margin: 0 10px;
  }
  .about-royalcanin .about-royalcanin__column--part2 {
    margin: 60px 0 30px;
  }
  .about-royalcanin .about-royalcanin__column .link-lists__item:last-of-type {
    border-bottom: 1px solid #ccc;
  }
  .about-royalcanin .link-lists__item--link {
    min-height: 100px;
  }
  .about-royalcanin .link-lists__item--img-wrap {
    flex: 0 0 30%;
    padding: 0;
  }
  .about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin--page__heading {
    padding: 0;
  }
  .about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__heading {
    font-size: 25px;
  }
  .about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__heading--beta {
    font-size: 1.4rem;
    line-height: 1.3em;
    padding: 15px 5px 5px 5px;
  }
  .about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__column {
    width: 97%;
    margin: 0 auto;
  }
  .about-royalcanin .content__txt {
    font-size: 14px;
  }
  .about-royalcanin.about-royalcanin--myroyalcanin .about-royalcanin__column .link-lists__item:last-of-type {
    border: none;
  }
  .main.guide {
    width: 97%;
    margin: 0 auto;
  }
  .guide .guide--heading {
    font-size: 25px;
    padding: 0;
  }
  .guide .guide--sub-heading {
    font-size: 20px;
    line-height: 1.3em;
    margin: 0;
    padding: 15px 5px 5px 5px;
  }
  .guide .guide--sub-heading:before {
    display: none;
  }
  .guide__content--content-wrap {
    border: 1px solid #bbbbbb;
    border-radius: 0;
    padding: 10px;
    margin: 0 0 20px;
  }
  .guide .guide-heading__h3 {
    padding: 10px 0;
    margin-bottom: 10px;
  }
  .guide .guide-heading__h4 {
    padding: 0;
  }
  .guide .guide-heading__h4:nth-of-type(n+2) {
    padding-top: 20px;
  }
  .guide .guide-heading__h5 {
    padding: 10px 0 0 2px;
  }
  .guide .guide-heading__h5:before {
    content: '●';
    margin-right: 4px;
    font-size: 12px;
  }
  .guide__content--content-inner {
    padding: 10px;
  }
  .faq-inquiry .guide__content--content-inner {
    padding: 0;
  }
  .guide .inquiry-list {
    font-size: 14px;
    margin: 10px 0 20px;
    padding: 0 0 0 5px;
  }
  .guide .inquiry-list__item {
    background: url("../images/ico_arrow.png") no-repeat left center;
    padding-left: 13px;
    margin: 10px 0;
  }
  .guide .inquiry-list__item--link {
    line-height: 1.9em;
    padding: 0;
  }
  .guide .guide__content--content-wrap.faq-inquiry {
    margin: 0 0 40px;
  }
  .guide .guide__content--content-wrap.faq-inquiry .faq-inquiry__column {
    padding: 12px;
    margin: 0 0 10px;
  }
  .guide .guide__content--content-wrap.faq-inquiry .faq-inquiry__column:first-of-type {
    padding: 12px;
  }
  .guide .guide__content--content-wrap .faq-inquiry__heading {
    font-size: 14px;
  }
  .guide .guide__content--content-wrap .faq-inquiry__note {
    font-size: 14px;
  }
  .guide .guide__content--content-wrap.faq-inquiry .contact_wrap {
    padding: 0;
  }
  .guide .guide__content--content-wrap.faq-inquiry .contact_wrap+.contact_wrap {
    margin-top: -1px;
  }
  .guide.guide-inquiry-detail {
    margin-bottom: 30px;
  }
  .guide.guide-inquiry-detail .faq_question {
    padding: 0 0 0 45px;
    line-height: 1.3em;
    margin: 20px 0;
    min-height: 2.5em;
  }
  .guide.guide-inquiry-detail .guide__content--content-wrap.faq-inquiry .faq-inquiry__column.faq_answer {
    line-height: 1.5em;
    padding: 0 0 0 45px;
    margin: 0;
    min-height: 100px;
    word-break: break-all;
  }
  .guide.guide-inquiry-detail .guide__content--content-wrap.faq-inquiry {
    border: none;
    background: #fff;
    margin: 0 0 20px;
    padding: 10px 0;
  }
  .guide-inquiry-detail .guide__content--content-inner {
    border-top: 1px dotted #ccc;
    margin: 0;
    padding: 10px 0 0;
    box-shadow: none;
  }
  .guide.guide-inquiry-detail .guide__btn-wrap {
    text-align: center;
  }
  .one_column.subscription {
    padding: 10px;
    margin: 0 auto;
    width: 100%;
  }
  .subscription .subscription--heading {
    padding-bottom: 0;
  }
  .subscription .subscription--heading__img {
    width: 100%;
  }
  .subscription .content__txt {
    font-size: 14px;
  }
  .subscription .point__list-item .content__txt {
    display: flex;
    align-items: center;
  }
  .subscription .point__list-item .content__txt {
    margin-bottom: 0;
  }
  .subscription .point__list-item .red_icon {
    height: 30px;
    margin-right: 4px;
    padding: 0 10px;
    font-size: 14px
  }
  .subscription .subscriptions_order_txt {
    margin: 0.5em 0 0.5em;
    font-size: 14px;
    padding-top: 15px;
  }
  .one_column.sitemap {
    padding: 0;
    margin: 0;
    width: 100%;
  }
  .sitemap .sitemap--heading {
    color: #333;
    font-size: 20px;
    line-height: 1.4;
    padding: 15px 5px 5px 5px;
  }
  .sitemap .sitemap__unit:first-of-type {
    padding-top: 10px;
    margin: 0;
  }
  .sitemap .sitemap__unit:last-of-type {
    padding-bottom: 10px;
  }
  .sitemap .sitemap__unit {
    border: none;
    border-top: 1px solid #cccccc;
    border-radius: 0;
    padding: 0 10px 5PX;
    margin: 5px 0 0;
  }
  .sitemap .content-heading__h2 {
    font-size: 14px;
    padding: 5px 0;
    border-bottom: 1px dotted #cccccc;
    margin-bottom: 5px;
  }
  .sitemap .content__txt {
    font-size: 14px;
  }
  .sitemap .sitemap__lead {
    padding-bottom: 10px;
    margin: 0;
  }
  .sitemap .sitemap__lead.content__txt+.content__txt.content__txt--strong {
    padding-bottom: 5px;
    font-weight: normal;
  }
  .sitemap .sitemap__flex {
    flex-wrap: wrap;
  }
  .sitemap .sitemap__flex--item {
    flex: 0 0 100%;
  }
  .sitemap .sitemap__page-list.content__txt {
    font-size: 13px;
    line-height: 1.3em;
  }
  .sitemap .sitemap__link {
    line-height: 1.3em;
  }
  .sitemap .sitemap__page-list--heading {
    font-size: 13px;
    padding: 5px 0;
  }
  .sitemap .sitemap__page-list--heading+.sitemap .sitemap__page-list.content__txt {
    padding: 0;
    margin-left: 1em;
  }
  .sitemap .sitemmap__column .sitemap__flex {
    padding-left: 1em;
  }
  .sitemap .sitemmap__column .sitemap__flex+.sitemap__flex {
    padding-left: 0;
    margin-top: 5px;
    padding-top: 5px;
    border-top: 1px solid #cccccc;
  }
  .rc-baseline .shopping-heading {
    font-size: 25px;
    padding: 30px 0 20px;
  }
  .shopping-lead__txt {
    font-size: 14px;
    padding-bottom: 0;
  }
  .shopping-area {
    display: block;
  }
  .shopping-list__item {
    align-items: center;
  }
  .cart-content .shopping-list__item {
    padding: 10px 5px;
  }
  .shopping-list__ph {
    vertical-align: middle;
    margin-right: 10px;
  }
  .cart-content .shopping-list__ph {
    width: 90px;
  }
  .cart-content .shopping-list__img {
    width: 100%;
  }
  .shopping-list__detail {
    display: block;
    padding: 20px 20px 20px 0;
  }
  .cart-content .shopping-list__detail {
    padding: 0;
    width: calc(100% - 90px);
  }
  .shopping-list__txt {
    font-size: 14px;
    padding-right: 0;
  }
  .shopping-list__name, .shopping-list__grams, .shopping-list__price {
    font-size: 13px;
    font-weight: normal;
  }
  .shopping-list__quantity {
    font-size: 14px;
    padding: 10px 6px;
  }
  .cart-content .shopping-list__name {
    padding-bottom: 8px;
    font-size: 16px;
    font-weight: bold;
  }
  .cart-content .shopping-list__grams {
    font-size: 14px;
    font-weight: bold;
  }
  .cart-content .shopping-list__price {
    margin-top: 10px;
  }
  .cart-content .shopping-list__deliv {
    font-size: 14px;
    line-height: 1.4;
  }
  .cart-content .shopping-list__delete {
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
  }
  .shopping-list__quantity-count {
    padding-top: 0;
  }
  .shopping-list__quantity-count .shopping-list__select {
    font-size: 16px;
  }
  .shopping-list__quantity-count--cart {
    text-align: left;
  }
  .shopping-list__quantity-count--cart .shopping-list__price {
    font-size: 18px;
    margin-bottom: 0;
  }
  .shopping-list__quantity-count--cart .shopping-list__quantity {
    font-size: 14px;
    padding: 0;
  }
  .quantity-spin {
    vertical-align: middle;
  }
  .shopping-area .shopping-submit--confirm {
    width: 100%;
  }
  .shopping-area .shopping-submit .btn-box {
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    margin: 15px 0;
  }
  .shopping-area .btn-submit__btn-red {
    margin: 0;
  }
  .shopping-area .address-list .address-list__item {
    font-size: 13px;
  }
  .shopping-area .address-list__radio-label--bold {
    font-weight: normal;
  }
  .shopping-area .address-list__txt {
    padding: 0 10px;
  }
  .shopping-area .address-list__radio-label {
    margin-bottom: 15px;
  }
  .btn-submit__btn-red+.btn-submit__btn-red {
    margin-top: 15px;
  }
  .shopping-complete__ph {
    padding: 40px 10px;
  }
  .shopping-complete__contact-txt {
    font-size: 14px;
  }
  .review {
    padding: 10px;
    width: 100%;
  }
  .review__lead {
    font-size: 14px;
  }
  .review_main__product-image {
    display: none;
  }
  .review .button_area {
    margin-top: 0;
    padding-top: 0;
  }
  .product-detail-content {
    padding: 20px 0 0;
  }
  .product-detail-content__head, .product-detail-content__image, .product-detail-content__description {
    width: 100%;
    float: none;
  }
  .product-key-visual__thumbnail-wrap {
    overflow-y: scroll;
    padding: 0 10px;
  }
  .product-key-visual__thumbnail {
    width: auto;
    white-space: nowrap;
  }
  .product-detail-content__description {
    margin-top: 20px;
  }
  .product-sku .product-sku__label:after {
    right: 5px;
  }
  .product-sku .product-sku__txt {
    margin-left: 10px;
  }
  .product-gift {
    margin: 0;
    border: 0 none;
    padding: 10px;
  }
  .product-gift-choice .product-gift-choice__txt {
    width: 76%;
    font-size: 13px;
  }
  .product-checkout {
    margin: 15px 0;
  }
  .product-feature .product-feature__img {
    width: 30%;
  }
  .product-feature .product-feature__description {
    width: 70%;
  }
  .review {
    padding: 0;
  }
  .review__header-content {
    padding: 10px;
  }
  .relational-item {
    padding: 10px;
    margin-bottom: 20px;
  }
  .relational-item-list {
    overflow-x: scroll;
    overflow-y: hidden;
    display: flex;
    padding-bottom: 20px;
  }
  .relational-item-list .relational-item-list__item {
    flex: 0 0 150px;
  }
  .payment-lead__txt {
    font-size: 14px;
    padding: 10px;
    font-weight: bold;
  }
  .payment-method .payment-method__radio+.payment-method__label {
    padding-left: 40px;
  }
  .payment-method .payment-method__radio+.payment-method__label:before {
    left: 10px;
  }
  .payment-detail {
    padding: 0 10px;
  }
  .payment-detail.credit {
    background: #fff;
    border: 0 none;
    padding: 0;
  }
  .payment-detail .payment-detail__title {
    font-size: 24px;
    padding: 0.5em 0;
  }
  .payment-detail .payment-detail__lead {
    font-size: 14px;
    line-height: 1.4;
    padding: 10px 6px;
  }
  .card-choice .card-choice__label {
    font-size: 15px;
  }
  .card-choice .card-choice__radio+.card-choice__label, .card-choice .card-choice__radio+.card-choice__label--exist {
    padding-left: 40px;
  }
  .card-choice .card-choice__label:before, .card-choice .card-choice__label--exist:before {
    left: 10px;
  }
  .card-input-area {
    background: #eaeaea;
  }
  .security-code .security-code__handle {
    font-size: 14px;
    line-height: 1.4;
  }
  .security-code-detail {
    margin-left: -10px;
    height: auto;
    width: 100vw;
  }
  .security-code-detail__content {
    display: block;
  }
  .security-code-detail__content--left, .security-code-detail__content--right {
    display: block;
    width: 100%;
  }
  .security-code-detail__content--left {
    padding: 0 0 10px;
  }
  .security-code-detail__content--right {
    text-align: center;
  }
  .convenience-choice .convenience-choice__label {
    padding-left: 40px;
  }
  .convenience-choice .convenience-choice__label:before {
    left: 10px;
  }
  .point-coupon {
    font-size: 14px;
    padding: 0 10px;
    margin-top: 20px;
  }
  .delivery-option {
    border-top: 1px solid #ccc;
    font-size: 14px;
    padding: 0 10px;
    margin-top: 20px;
  }
  .result-area {
    display: block;
    padding: 10px;
  }
  .result-area .result-area__content {
    width: 100%;
  }
  .result-content .result-content__title {
    font-size: 24px;
    padding: 0.5em 0 0.5em 0;
    margin-bottom: 8px;
    line-height: 1.3;
  }
  .result-content .result-content__text {
    padding: 2px 0;
  }
  .payment-result {
    margin: 0;
  }
  .payment-result-total {
    padding-top: 0;
    border-top: 0 none;
    margin: 0 0 20px;
    width: 100%;
    font-size: 13px;
    font-weight: normal;
  }
  .payment-result-total .payment-result-total__table {
    margin: 0;
  }
  .payment-result-total .payment-result-total__table-head {
    text-align: right;
    width: 66%;
  }
  .payment-result-total .payment-result-total__table-detail {
    text-align: right;
  }
  .cart-heading-announce {
    background: url(../images/myRC_BOX.png) no-repeat 0 center;
    background-size: 120px;
    height: auto;
    margin-bottom: 20px;
    padding: 10px 5px;
    padding-left: 105px;
  }
  .cart-heading-announce__title {
    font-size: 16px;
  }
  .cart-heading-announce__description {
    line-height: 1.4em;
  }
  .cart-area {
    padding: 10px;
    border-radius: 0;
  }
  .cart-area__inner {
    padding: 10px;
    box-shadow: 0 2px 5px #d5d5d5;
  }
  .cart-area-header .cart-area-header__title, .cart-area-header .cart-area-header__title-inner-txt {
    font-size: 20px;
  }
  .cart-area-header .cart-area-header__title:before {
    display: none;
  }
  .cart-area-header .cart-area-header__description {
    font-size: 15px;
    margin-bottom: 10px;
    line-height: 1.4em;
  }
  .cart-content {
    display: block;
  }
  .cart-content .main {
    width: 100%;
  }
  .cart-content .cart-submit {
    margin-top: 20px;
    width: 100%;
  }
}

/*history*/

@media screen and (max-width: 767px) {
  .rc-table__table.rcj-table--history {
    width: 810px;
  }
  .history--detail .rc-table__table {
    width: 810px;
  }
  .my-page__history-btn--back {
    margin: 25px 0;
  }
}

.history_back_button li {
  display: inline-block;
  padding: 0 0px;
  margin-left: 20px;
  margin-bottom: 30px;
}

.history_button_area li {
  display: inline-block;
  padding: 0 0px;
  margin-left: 20px;
  margin-bottom: 30px;
}

.history_button_area li:first-of-type {
  margin-left: 10px;
}

.history .main__title--history {
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
  margin: 0;
  /*padding: 0 0 10px 0;*/
}

.history-list--count {
  font-size: 14px;
  line-height: 1.4;
}

.point-list--bold {
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
}

.rcj-table--history__th--pay. {
  width: 260px;
}

.rcj-table--history__th--detail {
  width: 100px;
}

.rc-table__td.rcj-table--history__td--price {
  padding-right: 24px;
  text-align: right;
}

.history--detail .history--detail__txt {
  line-height: 1.4;
}

.history--detail .rc-table.table--history-address .rc-table__th {
  width: 200px;
}

.history--detail .table--history-detail .rc-table__thead .rc-table__th:nth-of-type(1) {
  width: 130px;
}

.history--detail .table--history-detail .rc-table__thead .rc-table__th:nth-of-type(2) {
  width: 380px;
}

.history--detail .table--history-detail .rc-table__thead .rc-table__th:last-of-type {
  width: 160px;
  text-align: center;
}

.history--detail .rc-table__tbody .rc-table__td:last-of-type {
  padding-right: 14px;
  padding-left: 10px;
  text-align: right;
}

.history--detail .rc-table__tbody .address:last-of-type {
  text-align: left;
}

.history--detail .rc-table__tbody .rc-table__row:last-of-type .rc-table__th {
  border-bottom: none;
}

.history--detail .table--history-detail .rc-table__td .rc-styled-link {
  border-bottom: none;
}

/*my-page member-info-change*/

.input-panel--member-info-change .input-panel--member-info-change-heading {
  line-height: 1.4;
}

.input-panel--member-info-change .input-panel--member-info-change-heading .member-info-change--heading__h1 {
  color: #e40000;
  font-size: 22px;
  font-weight: bold;
  line-height: 2;
  padding: 30px 0 20px 0;
}

.input-panel--member-info-change.member-info-change---confirm .input-panel--member-info-change-heading .member-info-change--heading__h1 {
  padding: 0;
}

.input-panel--member-info-change .input-panel--member-info-change-heading .member-info-change--heading__span {
  color: #ff0000;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__table {
  border-collapse: separate;
  border-spacing: 1px;
  background: #999999;
  font-size: 13px;
  margin-bottom: 20px;
  width: 100%;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__th {
  background: #efefef;
  text-align: left;
  padding: 10px;
  vertical-align: middle;
  width: 250px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td {
  background: #ffffff;
  text-align: left;
  line-height: 1.5em;
  padding: 10px;
  vertical-align: middle;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td a {
  color: #333333;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td a:hover {
  opacity: .8;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td p {
  font-size: 13px;
  line-height: 1.4;
  padding: 5px 0 0;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input {
  vertical-align: top;
}

.input-panel--member-info-change .input-panel--member-info-change-content .pef-info--pet-photo .input-panel--member-info-change-content__td input {
  font-size: 13px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="text"], .input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="password"] {
  border: 1px solid #ddd;
  height: 30px;
  line-height: 30px;
  margin: 3px 0;
  padding: 4px;
  vertical-align: baseline;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="radio"] {
  display: none;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="radio"]+label {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  flex-wrap: wrap;
  padding-left: 30px;
  position: relative;
  min-height: 30px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="radio"]+label:before {
  content: "";
  border: 1px solid #999;
  border-radius: 50%;
  background: #fff;
  display: block;
  height: 26px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td input[type="radio"]:checked+label:after {
  content: "";
  background: #e40000;
  border-radius: 50%;
  display: block;
  height: 20px;
  left: 3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td .select-wrap {
  display: inline-block;
  position: relative;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td .select-wrap:before {
  content: "";
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  height: 8px;
  position: absolute;
  pointer-events: none;
  right: 0;
  top: 50%;
  transform: translate(-10px, -70%) rotate(45deg);
  width: 8px;
  z-index: 1;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td select {
  background: #fff;
  border: 1px solid #ddd;
  color: inherit;
  font-size: 16px;
  height: 30px;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 4px 30px 4px 4px;
  text-indent: 0.01px;
  text-overflow: '';
  vertical-align: middle;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td span {
  font-size: 10px;
}

.input-panel--member-info-change .customer-info--name {
  width: 120px;
}

.input-panel--member-info-change .customer-info--nickname {
  width: 300px;
}

.input-panel--member-info-change .customer-info--zip {
  width: 60px;
}

.input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td .img--zip {
  display: inline;
  vertical-align: middle;
}

.input-panel--member-info-change .customer-info--address {
  width: 300px;
}

.input-panel--member-info-change .customer-info--tel {
  width: 60px;
}

.input-panel--member-info-change .customer-info--mail {
  width: 300px;
}

.input-panel--member-info-change .customer-info--pass {
  width: 120px;
}

.input-panel--member-info-change .customer-info--forget {
  width: 260px;
}

.input-panel--member-info-change .attention {
  color: #ff0000;
}

.input-panel--member-info-change p {
  font-size: 14px;
  line-height: 1.4;
}

.input-panel--member-info-change ul.button_area .rc-btn {
  padding: 16px 30px!important;
  width: 200px;
}

.change-complete .change-complete__wrap {
  border: 1px solid #d7d7d7;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}

.change-complete .change-complete__txt {
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  padding: 55px 10px;
}

@media screen and (max-width: 767px) {
  .change-complete .change-complete__wrap {
    padding: 10px;
  }
  .change-complete .change-complete__txt {
    text-align: center;
    font-size: 14px;
    font-weight: normal;
    padding: 25px 0;
  }
  .change-complete .button_area {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .input-panel--member-info-change .input-panel--member-info-change-content.attention {
    color: #ff0000;
    margin-bottom: 10px;
  }
  .input-panel--member-info-change.pet-info .input-panel--member-info-change-heading {
    margin-bottom: 10px;
  }
  .input-panel--member-info-change .input-panel--member-info-change-heading {
    margin-bottom: 20px;
  }
  .input-panel--member-info-change .input-panel--member-info-change-heading .member-info-change--heading__h1 {
    font-size: 25px;
    padding: 0 0 10px;
  }
  .input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__th {
    width: auto;
    font-weight: bold;
  }
  .input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td p {
    font-size: 13px;
  }
  .input-panel--member-info-change .input-panel--member-info-change-content .input-panel--member-info-change-content__td span {
    font-size: 14px;
  }
  .input-panel--member-info-change .customer-info--name {
    width: 95%;
  }
  .input-panel--member-info-change .customer-info--nickname {
    width: 95%;
  }
  .input-panel--member-info-change .customer-info--zip {
    width: 23%;
  }
  .input-panel--member-info-change .customer-info--address {
    width: 75%;
  }
  .input-panel--member-info-change .customer-info--tel {
    width: 24%;
  }
  .input-panel--member-info-change .customer-info--mail {
    width: 75%;
  }
  .input-panel--member-info-change .customer-info--pass {
    width: 95%;
  }
  .input-panel--member-info-change .customer-info--forget {
    width: 75%;
  }
  .input-panel--member-info-change ul.button_area {
    flex-direction: column-reverse;
  }
  .input-panel--member-info-change ul.button_area li {
    width: 100%;
  }
  .input-panel--member-info-change ul.button_area.confirm {
    flex-direction: column;
  }
}

.input-panel--member-info-change.pet-info .contents-wrap {
  position: relative;
}

.input-panel--member-info-change .input-panel--member-info-change-content__table.table--pet-confirm {
  width: 715px;
}

.input-panel--member-info-change.pet-info .contents-wrap .pet-photo {
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (max-width: 767px) {
  .input-panel--member-info-change.pet-info .contents-wrap .pet-photo {
    position: unset;
    max-width: 200px;
    margin: 0 auto 25px;
  }
  .input-panel--member-info-change .input-panel--member-info-change-content__table.table--pet-confirm {
    width: 100%;
  }
}

/*refusal*/

.refusal .refusal--heading__h1 {
  color: #e40000;
  font-size: 22px;
  font-weight: bold;
  line-height: 2;
  padding: 30px 0 20px 0;
}

.refusal .refusal__wrap {
  border: 1px solid #d7d7d7;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}

.refusal .refusal__txt {
  padding: 20px 0;
  font-size: 16px;
  text-align: center;
}

.refusal .button_area .btn-normal {
  min-width: 200px;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .refusal .refusal__wrap {
    width: 100%;
    padding: 10px;
  }
  .refusal .refusal__txt {
    padding: 6px 0 10px;
    font-size: 14px;
    text-align: center;
    line-height: 1.4;
  }
  .refusal .button_area {
    margin-top: 0;
  }
  .refusal .refusal--heading__h1 {
    font-size: 25px;
    padding: 0 0 10px;
  }
}

.main__title+.c-contents__text {
  padding-bottom: 40px;
}

.c-contents__text {
  font-size: 16px;
  line-height: 1.8;
}

.c-contents__text--font-sm {
  font-size: 14px;
}

.side__pet--img-wrap {
  width: 100%;
}

.side__pet--img-wrap img {
  margin: 0 auto;
}

.side__column {
  padding: 20px;
  position: relative;
}

.main .about-royalcanin__column .link-lists .link-lists__item {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  border-top: 1px solid #ccc;
}

.main .about-royalcanin__column .link-lists .link-lists__item.last-border {
  border-bottom: 1px solid #ccc;
}

.main .about-royalcanin__column .link-lists .link-lists__item.comingsoon:after {
  content: 'COMING SOON';
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, .8);
  font-size: 20px;
  font-weight: bold;
  z-index: 99;
}

.main .about-royalcanin__column>.link-lists>.link-lists__item:last-child {
  border-bottom: 1px solid #ccc;
}

.main .about-royalcanin__column .link-lists .link-lists__item>a {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 140px;
  padding: 0 40px 0 20px;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  z-index: 10;
}

.main .about-royalcanin__column .link-lists .link-lists__item>a div:first-child {
  width: 80%;
}

.main .about-royalcanin__column .link-lists .link-lists__item>a div:last-child {
  width: 20%;
  padding-top: 10px;
}

.main .about-royalcanin__column .link-lists .link-lists__item>a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: translateY(-50%) rotate(45deg);
}

.main .about-royalcanin__column .link-lists .link-lists__item.acc-wrapper>a:after {
  transform: translateY(-50%) rotate(135deg);
}

.main .about-royalcanin__column .link-lists .link-lists__item.acc-wrapper.active>a:after {
  transform: translateY(-50%) rotate(-45deg);
}

.main .about-royalcanin__column .link-lists .link-lists__item h3 {
  font-weight: bold;
  color: #e2001a;
  font-size: 24px;
}

.main .about-royalcanin__column .link-lists .link-lists__item p {
  font-size: 16px;
  color: #333;
}

.main .acc-contents {
  height: 0;
  transform: translateY(-100%);
}

.main .acc-contents.active {
  height: auto;
  transform: translateY(0);
  z-index: 9;
  border-top: 1px solid #ccc;
}

.main .acc-contents .acc-contents__description {
  padding: 10px 0;
  font-size: 14px;
  color: #666;
}

.main .acc-contents .kind-lists {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: 14px;
}

.main .acc-contents .kind-list {
  width: 190px;
  min-height: 150px;
  margin-bottom: 14px;
  text-align: center;
  border: none;
}

.main .acc-contents.active .kind-list {
  border: 1px solid #ccc;
}

.main .acc-contents .kind-lists:before {
  content: '';
  display: block;
  width: 190px;
  order: 1;
}

.main .acc-contents .kind-lists:after {
  content: '';
  display: block;
  width: 190px;
}

.main .acc-contents .kind-list>a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.main .acc-contents .kind-list>a .kind-list__ttl {
  width: 100%;
  padding: 10px;
  font-size: 14px;
  font-weight: bold;
  color: #e2001a;
}

.main .acc-contents .kind-list>a .kind-list__img {
  display: block;
  height: 100px;
  width: auto;
}

.main .about-royalcanin__column .acc-contents .link-lists .link-lists__item>a {
  height: 60px;
  min-height: auto;
  background: #eaeaea;
  font-size: 16px;
  color: #333;
}

@media screen and (max-width: 767px) {
  .main .about-royalcanin__column .link-lists .link-lists__item:first-child {
    border-top: none;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item>a {
    min-height: 90px;
    padding: 4px 30px 4px 10px;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item h3 {
    font-size: 16px;
    margin-bottom: 6px;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item p {
    font-size: 12px;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item>a:after {
    right: 10px;
    width: 10px;
    height: 10px;
  }
  .main .acc-contents .kind-lists {
    padding: 10px 10px 0 10px;
  }
  .main .acc-contents .kind-list {
    width: 49%;
    min-height: 140px;
    margin-bottom: 6px;
  }
  .main .about-royalcanin__column .acc-contents .link-lists .link-lists__item>a {
    height: 40px;
    font-size: 12px;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item>a>div:first-child {
    width: 70%;
  }
  .main .about-royalcanin__column .link-lists .link-lists__item>a>div:last-child {
    width: 30%;
    height: auto;
    padding-top: 0;
    text-align: right;
  }
  .main .acc-contents .acc-contents__description {
    padding: 10px;
    line-height: 2;
  }
}

.box-border {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 140px;
  margin: 0 auto;
  margin-top: 20px;
  border: 1px solid #ccc;
}

.box-border.box-border-half {
  flex-wrap: wrap;
  width: 49%;
  height: auto;
  margin: 20px 0 0 0;
}

.box-border>a {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: space-between;
  align-items: center;
}

/* button disabled */

.rc-btn--one.disabled, .btn-submit__btn-red.disabled {
  border-color: #d7d7d7;
  cursor: not-allowed;
  background: #d7d7d7 !important;
  pointer-events: none;
}