@charset "UTF-8";
/* -----------------------------------------------
* Plugins エントリーポイント
-------------------------------------------------- */
/*------------------------------------------------------------------------------
  reset
------------------------------------------------------------------------------*/
html,
input,
textarea,
select,
button {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
}

html {
  color: #333;
  background: #fff;
  font-size: 16px;
  line-height: 1.5;
  overflow-wrap: break-word;
}

body {
  background: #fff !important;
  margin: 0;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

figure {
  margin: 0;
}

p {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

input,
select,
textarea,
button {
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  font-size: 16px;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select::-ms-expand {
  display: none;
}

.select-box {
  position: relative;
}
.select-box::before, .select-box::after {
  z-index: 1;
  position: absolute;
  content: "";
  height: 1px;
  background: #333;
  width: 11px;
  right: 27px;
  border-radius: 2px;
  top: 50%;
  margin-top: -0.6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  pointer-events: none;
}
.select-box::after {
  right: 20px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.select-box select {
  line-height: 1;
  cursor: pointer;
  padding: 10px 40px 10px 12px;
  width: 160px;
  border: 1px solid #737373;
  border-radius: 6px;
  font-size: 18px;
}
.select-box.no-choose::after, .select-box.no-choose::before {
  display: none;
}
.select-box.h-2::before, .select-box.h-2::after {
  height: 2px;
}
.select-box.item-num select {
  width: 53px;
  font-size: 16px;
  padding: 5px 20px 5px 12px;
}
.select-box.item-num::before {
  right: 10px;
  width: 8px;
  background: #737373;
}
.select-box.item-num::after {
  background: #737373;
  width: 8px;
  right: 5px;
}

textarea {
  resize: vertical;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-ms-input-placeholder {
  color: #ccc;
}

::-moz-placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
}

button {
  border: none;
  cursor: pointer;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 16px;
  font-weight: 700;
  margin: 0;
  padding: 0;
}

main {
  padding-top: 120px;
  display: block;
  padding-bottom: 35px;
}

.c-header.has-campaign + main {
  padding-top: 160px;
}

#wrapper {
  position: relative;
  z-index: 1;
}
#wrapper.height-adjust {
  display: grid;
  grid-template-rows: 1fr auto;
  min-height: 100vh;
}

.inner-block {
  margin: 0 auto;
  position: relative;
}

dl,
dt,
dd {
  padding: 0;
  margin: 0;
}

.ib {
  display: inline-block;
}

@font-face {
  src: url(../font/NotoSansJP-Light.ttf) format("truetype");
  font-family: "Noto Sans JP";
  font-weight: 300;
  font-display: swap;
}
@font-face {
  src: url(../font/NotoSansJP-Regular.ttf) format("truetype");
  font-family: "Noto Sans JP";
  font-weight: 400;
  font-display: swap;
}
@font-face {
  src: url(../font/NotoSansJP-Medium.ttf) format("truetype");
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-display: swap;
}
@font-face {
  src: url(../font/NotoSansJP-Bold.ttf) format("truetype");
  font-family: "Noto Sans JP";
  font-weight: 700;
  font-display: swap;
}
@font-face {
  src: url(../font/ZenMaruGothic-Medium.ttf) format("truetype");
  font-family: "ZenMaruGothic";
  font-weight: 400;
  font-display: swap;
}
@font-face {
  src: url(../font/Afacad-Regular.ttf) format("truetype");
  font-family: "Afacad";
  font-weight: 400;
  font-display: swap;
}
.c-svg {
  display: inline-block;
  fill: currentColor;
  vertical-align: top;
}

.c-column-header {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
}
.c-column-header .c-btn04 {
  color: #fff;
}

.c-column-footer {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
}
.c-column-footer .c-ico-list.sns {
  list-style: none;
  padding: 0;
}
.c-column-footer .c-ico-list.sns > li > a {
  background: #8776D0;
}
.c-column-footer .c-btn04 {
  color: #fff;
}

.c-column-header .menu-modal .modal-nav,
.c-column-header .menu-modal .bot-wrap .c-ico-list {
  list-style: none;
  padding: 0;
}

.c-column-header .menu-modal .modal-nav .nav-btn02 {
  color: #333;
}

.c-column-header .menu-modal .bot-wrap .c-ico-list a {
  background: #8776D0;
}

.c-column-header .search-input-area input {
  border: none;
}

/* -----------------------------------------------
* Modules エントリーポイント
-------------------------------------------------- */
/* --------------------------------
c-header
----------------------------------- */
.c-header {
  z-index: 1000;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}
.c-header .main-header {
  background: #AEA2E6;
  padding: 25px 30px 25px 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  height: 120px;
}
.c-header .main-header .inner-block {
  width: 100%;
  max-width: 1920px;
  padding: 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 10px;
}
.c-header .main-header .header-cont {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
.c-header .main-header .logo {
  width: 206px;
}
.c-header .main-header .logo > a {
  width: 100%;
  height: 100%;
  display: block;
}
.c-header .main-header .c-ico-list.sp > li:nth-child(1) img {
  width: 27.4px;
}
.c-header .main-header .c-ico-list.sp > li:nth-child(2) img {
  width: 21px;
}
.c-header .main-header .c-ico-list.sp > li:nth-child(3) img {
  width: 31px;
}
.c-header .main-header .menu-area {
  background: #E9E5FF;
  border-radius: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 24px 10px 12px;
}
.c-header .main-header .menu-area .ico {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}
.c-header .main-header .menu-area .ico:not(.login) {
  background: #fff;
}
.c-header .main-header .menu-area .ico.outer.login img {
  width: 100%;
  border-radius: 50%;
  height: 100%;
}
.c-header .main-header .menu-area .ico.outer:not(.login) {
  border: 1px solid #8776D0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-header .main-header .menu-area .ico.outer:not(.login) img {
  width: 28px;
  height: 28px;
}
.c-header .main-header .menu-area .ico:not(.outer) img {
  width: 100%;
  height: 100%;
}
.c-header .main-header .menu-area .ico:not(.outer):not(.login) {
  border: 1px solid #8776D0;
}
.c-header .main-header .menu-area .ico:not(.outer):not(.login) img {
  width: 27px;
  height: 27px;
}
.c-header .main-header .menu-area .info {
  margin-left: 10px;
}
.c-header .main-header .menu-area .info .name-wrap {
  font-weight: 600;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 160px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-header .main-header .menu-area .info .name-wrap .name {
  display: inline-block;
  max-width: 128px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.c-header .main-header .menu-area .info .point {
  font-size: 13px;
  line-height: 1.5384615385;
}
.c-header .menu-modal {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 1001;
  height: 100vh;
  overflow-y: auto;
  position: fixed;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: #fff;
  opacity: 0;
  pointer-events: none;
}
.c-header .menu-modal.active {
  opacity: 1;
  pointer-events: visible;
}
.c-header .menu-modal .modal-inner {
  padding: 20px 15px;
  background: #fff;
}
.c-header .menu-modal .top-wrap .user-info {
  margin-right: 43px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 10px;
}
.c-header .menu-modal .top-wrap .user-info .ico {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-header .menu-modal .top-wrap .user-info .name-box {
  width: calc(100% - 60px);
}
.c-header .menu-modal .top-wrap .user-info .name-wrap {
  font-size: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-header .menu-modal .top-wrap .user-info .name-wrap .min {
  font-size: 14px;
  position: relative;
  top: 2px;
}
.c-header .menu-modal .top-wrap .user-info .name-wrap .name {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: calc(100% - 28px);
}
.c-header .menu-modal .top-wrap .user-info .btns {
  width: 110px;
  min-width: 110px;
}
.c-header .menu-modal .top-wrap .user-info .btns > li {
  width: 100%;
}
.c-header .menu-modal .top-wrap .user-info .btns > li > a {
  gap: 3px;
  padding: 9px 11px;
  font-size: 13px;
}
.c-header .menu-modal .top-wrap .user-info .btns > li > a > img {
  width: 18px;
  height: 18px;
}
.c-header .menu-modal .top-wrap .btns {
  margin-top: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px 5px;
}
.c-header .menu-modal .top-wrap .btns > li {
  width: calc((100% - 5px) / 2);
  border: 1px solid #8776D0;
  border-radius: 30px;
  font-weight: bold;
  font-size: 16px;
  height: 40px;
  color: #8776D0;
}
.c-header .menu-modal .top-wrap .btns > li > a {
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  padding: 5px 10px 4px;
}
.c-header .menu-modal .top-wrap .btns > li.wide {
  width: 100%;
  font-size: 20px;
  background: #8776D0;
  color: #fff;
}
.c-header .menu-modal .top-wrap .btns > li.wide > a {
  padding: 7px 10px;
}
.c-header .menu-modal .top-wrap .btns > li.wide.ico-user {
  font-size: 16px;
}
.c-header .menu-modal .top-wrap .btns > li.wide .ico-wrap {
  width: 22px;
  height: 22px;
  display: block;
  background: #fff;
  -webkit-mask: url(../img/common/ico_user.svg) no-repeat center/contain;
          mask: url(../img/common/ico_user.svg) no-repeat center/contain;
}
.c-header .menu-modal .top-wrap .btns > li img {
  height: 24px;
  color: #8776D0;
}
.c-header .menu-modal .top-wrap .btns > li img.ico-favorite {
  width: 20px;
  height: 18px;
}
.c-header .menu-modal.active .c-tags-outer {
  opacity: 1;
  pointer-events: visible;
}
.c-header .menu-modal.pc {
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  width: 320px;
  height: auto;
  overflow-y: visible;
  top: 82px;
  right: 0;
  border-radius: 10px;
}
.c-header .menu-modal.pc::after {
  position: absolute;
  content: "";
  top: -12px;
  right: 37px;
  background: #fff;
  width: 19px;
  height: 12px;
  -webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
          clip-path: polygon(50% 0, 0 100%, 100% 100%);
}
.c-header .menu-modal.pc .modal-inner {
  padding: 13px 10px 17px;
  border-radius: 10px;
}
.c-header .menu-modal.pc .btns {
  margin-top: 0;
}
.c-header .menu-modal.pc .btns li {
  font-size: 14px;
}
.c-header .menu-modal.pc .btns li.wide {
  font-size: 16px;
}
.c-header .menu-modal.pc .btns li a.narrow {
  gap: 5px;
}
.c-header .menu-modal .banner-area {
  display: block;
  margin-top: 10px;
  background: #f6f6f6;
  aspect-ratio: 345/90;
}
.c-header .menu-modal .banner-area img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-header .menu-modal .c-ico-list {
  margin-top: 20px;
  gap: 20px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-header .menu-modal .c-ico-list > li {
  background: -webkit-gradient(linear, left top, left bottom, from(#B1C6ED), to(#AEA2E6));
  background: linear-gradient(180deg, #B1C6ED 0%, #AEA2E6 100%);
  color: #fff;
}
.c-header .menu-modal .logout-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 20px auto 0;
  line-height: 1;
  border-radius: 15px;
  width: 260px;
  color: #fff;
  gap: 5px;
  font-size: 13px;
  font-weight: bold;
  padding: 5px 10px 6px;
  background: #B3B3B3;
}

.header-campaign-area {
  text-align: center;
  color: #fff;
  background: #fff;
}
.header-campaign-area .header-campaign-area-inner {
  background: #F9B21A;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 30px 8px 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.header-campaign-area .ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.header-campaign-area .ico {
  height: 20px;
}

.global-navigation {
  background: #E9E5FF;
  padding: 18px 0 17px;
}
.global-navigation .tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px 12.5px;
  position: relative;
}
.global-navigation .tags > li {
  width: calc((100% - 50px) / 5);
  position: relative;
}
.global-navigation .tags > li:first-child .c-tags-outer::after {
  left: 103px;
  right: auto;
}
.global-navigation .tags > li:nth-child(2) .c-tags-outer {
  width: 610px;
  left: calc(-305px + 50%);
}
.global-navigation .tags > li:nth-child(2) .c-tags-outer > li {
  width: calc((100% - 10px) / 2);
}
.global-navigation .tags > li:nth-child(3) .c-tags-outer {
  left: calc(-450px + 50%);
}

.header-menu {
  cursor: pointer;
  width: 44px;
  height: 44px;
  margin-left: 19px;
  position: relative;
  padding: 8px 6px;
}
.header-menu > span {
  background: #333;
  width: calc(100% - 12px);
  height: 3px;
  border-radius: 3px;
  top: 8px;
  left: 6px;
  border: 4px;
  position: absolute;
  content: "";
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.header-menu > span:nth-child(2) {
  top: 20px;
}
.header-menu > span:nth-child(3) {
  top: 32px;
}
.header-menu.active > span:nth-child(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 20px;
}
.header-menu.active > span:nth-child(2) {
  opacity: 0;
}
.header-menu.active > span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 20px;
}

#pagetop {
  position: fixed;
  z-index: 990;
  opacity: 0;
  pointer-events: none;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: opacity 0.3s, -webkit-box-shadow 0.3s;
  transition: opacity 0.3s, -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s, opacity 0.3s;
  transition: box-shadow 0.3s, opacity 0.3s, -webkit-box-shadow 0.3s;
}
#pagetop.appear {
  opacity: 1;
  pointer-events: visible;
}
#pagetop img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.c-footer {
  padding: 45px 0 40px;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#B1C6ED), to(#AEA2E6));
  background: linear-gradient(180deg, #B1C6ED 0%, #AEA2E6 100%);
}
.c-footer .top-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 42px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-footer .logo {
  width: 200px;
}
.c-footer .c-ico-list > li {
  width: 50px;
  height: 50px;
}
.c-footer .foot-nav {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
.c-footer .foot-nav a {
  line-height: 1.375;
  display: block;
  position: relative;
}
.c-footer .foot-nav a::after {
  width: 0;
  height: 1px;
  background: #fff;
  bottom: 0;
  left: 0;
  position: absolute;
  content: "";
}
.c-footer .copy {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.2142857143;
  text-align: center;
}

.foot-float-wrap {
  border-radius: 10px 10px 0 0;
  -webkit-box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.2);
  background: #fff;
  position: fixed;
  bottom: 0;
  width: 100%;
  left: 0;
  z-index: 989;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
.foot-float-wrap.appear {
  opacity: 1;
  pointer-events: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.foot-float-wrap .foot-float-list {
  padding: 0 17px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 7px;
}
.foot-float-wrap .foot-float-list > li {
  width: calc((100% - 21px) / 4);
}
.foot-float-wrap .foot-float-list > li > a, .foot-float-wrap .foot-float-list > li button {
  padding: 18px 0 13px;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  width: 100%;
}
.foot-float-wrap .foot-float-list > li span {
  display: block;
  color: #8776D0;
  font-size: 14px;
  line-height: 1.2142857143;
}
.foot-float-wrap .foot-float-list > li .ico {
  height: 22px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.foot-float-wrap .foot-float-list > li:nth-child(1) img {
  height: 22px;
}
.foot-float-wrap .foot-float-list > li:nth-child(2) img {
  height: 18px;
}
.foot-float-wrap .foot-float-list > li:nth-child(3) img {
  height: 18px;
}
.foot-float-wrap .foot-float-list > li:nth-child(3) .column img {
  height: 26px;
}
.foot-float-wrap .foot-float-list > li:nth-child(4) img {
  height: 24px;
}
.foot-float-wrap.is-hidden {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.c-ttl01 {
  margin-top: 50px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2142857143;
}
.c-ttl01.new-tpl {
  margin-top: 0;
}

.c-ttl02 {
  color: #8776D0;
  position: relative;
  font-size: 22px;
  line-height: 1.1818181818;
  padding: 6px 0 8px 30px;
}
.c-ttl02::after {
  top: 0;
  left: 0;
  position: absolute;
  content: "";
  height: 100%;
  width: 8px;
  background: -webkit-gradient(linear, left top, left bottom, from(#B1C6ED), to(#AEA2E6));
  background: linear-gradient(180deg, #B1C6ED 0%, #AEA2E6 100%);
}

.c-section .contents h3, .c-ttl03 {
  padding: 6px 20px 7px;
  font-size: 18px;
  font-weight: bold;
  background: #EBE6FF;
  border-radius: 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 40px;
}

.c-ttl04 {
  font-size: 24px;
  margin-bottom: 25px;
  font-weight: bold;
  line-height: 1.2083333333;
}

.accent {
  font-weight: bold;
}

.js--favorite {
  width: 27px;
  height: 24px;
  color: #8776D0;
}
.js--favorite .push,
.js--favorite .pull {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: block;
  -webkit-mask: url(../img/common/ico_favorite.svg) no-repeat center/contain;
          mask: url(../img/common/ico_favorite.svg) no-repeat center/contain;
  background: currentColor;
}
.js--favorite .pull {
  -webkit-mask: url(../img/common/ico_favorite_white.svg) no-repeat center/contain;
          mask: url(../img/common/ico_favorite_white.svg) no-repeat center/contain;
  width: 100%;
  height: 100%;
}
.js--favorite .push {
  width: 0;
  height: 0;
}
.js--favorite.active .pull {
  width: 0;
  height: 0;
}
.js--favorite.active .push {
  width: 100%;
  height: 100%;
}

.search-input-area {
  border-radius: 30px;
  width: 400px;
  background: #fff;
  position: relative;
  z-index: 1;
}
.search-input-area input {
  width: 100%;
  padding: 0 64px 1px 28px;
  font-size: 18px;
  line-height: 49px;
}
.search-input-area input::-webkit-input-placeholder {
  color: #b3b3b3;
}
.search-input-area input::-moz-placeholder {
  color: #b3b3b3;
}
.search-input-area input:-ms-input-placeholder {
  color: #b3b3b3;
}
.search-input-area input::-ms-input-placeholder {
  color: #b3b3b3;
}
.search-input-area input::placeholder {
  color: #b3b3b3;
}
.search-input-area .search-suggest-box {
  background: #fff;
  border: 1px solid #737373;
  border-radius: 12px;
  -webkit-box-shadow: 0 10px 24px rgba(51, 51, 51, 0.12);
          box-shadow: 0 10px 24px rgba(51, 51, 51, 0.12);
  display: none;
  max-height: 240px;
  -ms-overflow-style: none;
  overflow-y: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  scrollbar-width: none;
  position: absolute;
  top: calc(100% + 2px);
  left: 0;
  right: 0;
  z-index: 20;
}
.search-input-area .search-suggest-box::-webkit-scrollbar {
  display: none;
}
.search-input-area .search-suggest-box button {
  display: block;
  width: 100%;
  padding: 10px 18px;
  text-align: left;
  font-size: 15px;
  line-height: 1.4;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.search-input-area .search-suggest-box button + button {
  border-top: 1px solid #9F9F9F;
}
.search-input-area .search-keyword-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 6px 12px;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  z-index: 1;
}
.search-input-area .search-keyword-list__label {
  color: #fff;
  font-weight: 700;
  white-space: nowrap;
}
.search-input-area .search-keyword-list a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
  -webkit-text-decoration-color: rgba(255, 255, 255, 0.7);
          text-decoration-color: rgba(255, 255, 255, 0.7);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.search-input-area.is-suggest-open {
  z-index: 30;
}
.search-input-area.is-suggest-open .search-suggest-box {
  display: block;
}
.search-input-area.is-suggest-open .search-keyword-list {
  display: none;
}
.search-input-area .ico {
  cursor: pointer;
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  height: 50px;
  width: 50px;
  right: 18px;
  margin: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.search-input-area .ico img {
  cursor: pointer;
  width: 29px;
  height: 29px;
  position: relative;
  top: -1px;
}

.c-arrow {
  position: relative;
  display: block;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.c-arrow::after, .c-arrow::before {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  position: absolute;
  content: "";
  right: 37px;
  top: 10px;
  bottom: 0;
  margin: auto;
  height: 2px;
  width: 16px;
  background: #8776D0;
  border-radius: 3px 0 0 3px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-arrow::after {
  top: -10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-arrow.active {
  background: #8776D0;
  color: #fff;
}
.c-arrow.active::after, .c-arrow.active::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background: #fff;
  top: 0;
  right: 28px;
}
.c-arrow.active::after {
  right: 20px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.c-arrow.is-active.is-active {
  background: #F6F4FF;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
}
.c-arrow.is-active.is-active .aco-btn::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.c-arrow.js--toggle-btn::after, .c-arrow.js--toggle-btn::before {
  right: 10px;
  border-radius: 3px;
  width: 20px;
  top: 0;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.c-arrow.js--toggle-btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.c-arrow.js--toggle-btn.active {
  background: #F6F4FF;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
}
.c-arrow.js--toggle-btn.active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.c-arrow.c-no-arrow::before, .c-arrow.c-no-arrow::after {
  content: none;
}
.c-arrow .aco-btn {
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto;
  height: 20px;
  width: 20px;
  z-index: 5;
}
.c-arrow .aco-btn::after, .c-arrow .aco-btn::before {
  border-radius: 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 2px;
  width: 20px;
  background: #8776D0;
  border-radius: 3px 0 0 3px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.c-arrow .aco-btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.c-arrow .aco-btn.active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

.txt {
  margin-top: 20px;
}

.link-txt {
  display: block;
  position: relative;
  margin-top: 20px;
  text-align: right;
  line-height: 1.5;
}
.link-txt .txt {
  margin-top: 0;
  position: relative;
  display: inline-block;
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.link-txt img {
  margin-right: 10px;
}
.link-txt .success-message {
  right: 0;
  bottom: -30px;
  background: #F9B21A;
  color: #fff;
  border-radius: 5px;
  z-index: 20;
  font-size: 14px;
  -webkit-box-shadow: 0 0 10px #ddd;
          box-shadow: 0 0 10px #ddd;
  padding: 7px 15px 8px;
  position: absolute;
  opacity: 0;
  font-weight: bold;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  pointer-events: none;
}
.link-txt .success-message.appear {
  opacity: 1;
}

.c-news-list {
  margin-top: 62px;
  border-bottom: 1px solid #AEA2E6;
}
.c-news-list > li {
  border-top: 1px solid #AEA2E6;
}
.c-news-list > li > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  padding: 18px 90px 18px 40px;
  position: relative;
}
.c-news-list > li > a::after, .c-news-list > li > a::before {
  right: 19px;
}
.c-news-list .date {
  display: inline-block;
  width: 170px;
  font-size: 14px;
}
.c-news-list .news-ttl {
  width: calc(100% - 170px);
  font-weight: 400;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.c-ico-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.c-ico-list > li {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #fff;
  position: relative;
}
.c-ico-list > li .num {
  position: absolute;
  top: 0;
  right: -4px;
  background: #ED0D32;
  color: #fff;
  border-radius: 50%;
  font-size: 14px;
  width: 24px;
  height: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  padding-bottom: 1px;
}
.c-ico-list > li .num.hide {
  opacity: 0;
  pointer-events: none;
}
.c-ico-list > li .num sup {
  position: relative;
  top: -5px;
}
.c-ico-list > li > a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 50%;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-ico-list > li > a.ico-fb {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.c-ico-list > li > a.ico-cart > img {
  position: relative;
  left: -1px;
  top: 1px;
}
.c-ico-list.sns > li {
  background: #fff;
  color: #8776D0;
}
.c-ico-list.sns > li > a {
  width: 100%;
  background: currentColor;
}
.c-ico-list.sns > li > a.ico-x {
  -webkit-mask: url(../img/common/ico_x.svg) no-repeat center;
          mask: url(../img/common/ico_x.svg) no-repeat center;
}
.c-ico-list.sns > li > a.ico-ig {
  -webkit-mask: url(../img/common/ico_ig.svg) no-repeat center;
          mask: url(../img/common/ico_ig.svg) no-repeat center;
}
.c-ico-list.sns > li > a.ico-fb {
  -webkit-mask: url(../img/common/ico_fb.svg) no-repeat center calc(100% + 1px);
          mask: url(../img/common/ico_fb.svg) no-repeat center calc(100% + 1px);
}
.c-ico-list.sns > li > a.ico-line {
  -webkit-mask: url(../img/common/ico_line.svg) no-repeat center;
          mask: url(../img/common/ico_line.svg) no-repeat center;
}

.p-favorite ~ .c-cat-modal-wrap {
  display: none;
}
.p-favorite .c-product-display-area {
  margin-bottom: 100px;
}

.c-product-display-area {
  position: relative;
  margin-top: 30px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  margin-right: -40px;
}
.c-product-display-area .disp-inner {
  overflow-x: auto;
}
.c-product-display-area .disp-inner::-webkit-scrollbar {
  width: 100%;
  height: 10px;
}
.c-product-display-area .disp-inner::-webkit-scrollbar-track {
  background: #EBEBEB;
  border-radius: 10px;
}
.c-product-display-area .disp-inner::-webkit-scrollbar-thumb {
  background-color: #AEA2E6;
  border-radius: 10px;
}
@supports (-moz-appearance: none) {
  .c-product-display-area .disp-inner {
    padding-bottom: 13px;
  }
}
.c-product-display-area.paging-list {
  margin-right: 0;
}
.c-product-display-area.paging-list .disp-inner {
  overflow-x: unset;
}
.c-product-display-area.paging-list .c-product-list {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 33px 25px;
}
.c-product-display-area.paging-list .c-product-list > li > a::after {
  display: none;
}
.c-product-display-area.is-loading {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.c-product-display-area.is-loading .c-product-list,
.c-product-display-area.is-loading .scroll-hint-icon-wrap {
  opacity: 0;
}
.c-product-display-area .scroll-hint-icon-wrap {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.c-product-list {
  -webkit-transition: 0.6s ease-in-out;
  transition: 0.6s ease-in-out;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 35px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 25px;
}
.c-product-list > li {
  width: 220px;
}
.c-product-list > li > a:not(.evaluation, .c-btn03) {
  width: 100%;
  display: block;
  position: relative;
}
.c-product-list > li > a:not(.evaluation, .c-btn03)::after {
  position: absolute;
  content: "1";
  width: 30px;
  height: 30px;
  border-radius: 50%;
  top: 19px;
  left: 10px;
  color: #fff;
  background: #dab141;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 2px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: none;
}
.c-product-list > li .thumb {
  aspect-ratio: 1;
  padding: 20px;
  position: relative;
}
.c-product-list > li .thumb::after {
  background: url(../img/common/logo_watermark.svg) no-repeat center center/contain;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  opacity: 0.3;
  pointer-events: none;
}
.c-product-list > li .thumb > img,
.c-product-list > li .thumb > video {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-product-list > li .thumb .ico {
  position: absolute;
  z-index: 1;
  bottom: 20px;
  right: 20px;
}
.c-product-list > li .product-ttl {
  margin-top: 13px;
  font-weight: bold;
  font-size: 20px;
  min-height: 50px;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.c-product-list > li .info {
  margin-top: 10px;
  line-height: 1;
}
.c-product-list > li .info .price {
  color: #EA3345;
  font-weight: bold;
  display: block;
  font-size: 14px;
}
.c-product-list > li .info .price .num {
  font-size: 20px;
}
.c-product-list > li .info .is-stock {
  color: #30AA71;
  display: block;
  margin-top: 10px;
}
.c-product-list > li .info .is-stock.red {
  color: #EA3345;
}
.c-product-list > li .info .is-stock.gray {
  color: #9F9F9F;
}
.c-product-list > li .evaluation {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-top: 20px;
  color: #F9B21A;
}
.c-product-list > li .txt {
  margin-top: 15px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 14px;
}
.c-product-list > li:nth-child(2) > a:not(.evaluation)::after {
  background: #c5c5c5;
  content: "2";
}
.c-product-list > li:nth-child(3) > a:not(.evaluation)::after {
  background: #ca8e69;
  content: "3";
}
.c-product-list > li:nth-child(4) > a:not(.evaluation)::after {
  background: #8776D0;
  content: "4";
}
.c-product-list > li:nth-child(5) > a:not(.evaluation)::after {
  background: #8776D0;
  content: "5";
}
.c-product-list.rank > li a::after {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-product-list .c-btn03.cart {
  margin-top: 20px;
}

.c-rate-wrap {
  width: 112px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 3px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-rate-wrap .star {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(../img/review/ico_star.svg) no-repeat center/contain;
}
.c-rate-wrap .star.active {
  background: url(../img/review/ico_star_fill.svg) no-repeat center/contain;
}

.c-tags-outer {
  position: absolute;
  z-index: 999;
  top: calc(100% + 12px);
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
  padding: 18px 20px 20px;
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
  width: 900px;
  opacity: 0;
  pointer-events: none;
  max-width: calc(100vw - 40px);
}
.c-tags-outer.active {
  opacity: 1;
  pointer-events: visible;
}
.c-tags-outer > li {
  width: calc((100% - 20px) / 3);
  position: relative;
}
.c-tags-outer > li:nth-child(3n+2) .tags-inner {
  left: calc(-100% - 10px);
}
.c-tags-outer > li:nth-child(3n) .tags-inner {
  left: calc(-200% - 20px);
}
.c-tags-outer .tags-inner {
  display: none;
  background: #F6F4FF;
  padding: 10px;
  position: relative;
  z-index: 1;
  width: calc(300% + 20px);
}
.c-tags-outer .tags-inner .link-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px 15px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.c-tags-outer .tags-inner .link-list > li {
  font-size: 14px;
  background: #fff;
  width: calc((100% - 30px) / 3);
}
.c-tags-outer .tags-inner .link-list > li .c-arrow {
  line-height: 1.7142857143;
  padding: 12px 10px;
}
.c-tags-outer .tags-inner .link-list > li .c-arrow::after, .c-tags-outer .tags-inner .link-list > li .c-arrow::before {
  right: 16px;
  width: 14px;
  top: 9px;
}
.c-tags-outer .tags-inner .link-list > li .c-arrow::after {
  top: -9px;
}
.c-tags-outer .c-arrow.js--toggle-btn::after, .c-tags-outer .c-arrow.js--toggle-btn::before {
  display: none;
}

.close {
  cursor: pointer;
  width: 44px;
  height: 44px;
  z-index: 1000;
  position: absolute;
  right: 11px;
  top: 8px;
}
.close::after, .close::before {
  background: #333;
  position: absolute;
  content: "";
  height: 3px;
  width: 30px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 3px;
}
.close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.breadcrumb {
  color: #777777;
  margin-top: 55px;
  padding-left: 38px;
  position: relative;
}
.breadcrumb a, .breadcrumb span {
  position: relative;
  top: -1px;
  line-height: 1.75;
}
.breadcrumb a:not(:last-child), .breadcrumb span:not(:last-child) {
  margin-right: 9px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.breadcrumb a:not(:last-child)::after, .breadcrumb span:not(:last-child)::after {
  right: -8px;
  top: 5px;
  bottom: 0;
  height: 17px;
  -webkit-transform: rotate(18deg);
          transform: rotate(18deg);
  width: 1px;
  position: absolute;
  content: "";
  background: #777777;
}
.breadcrumb .ico-img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -38px;
  margin: auto;
  height: 18px;
  width: 18px;
}
.breadcrumb.new-tpl {
  margin-top: 24px;
}

.c-section {
  margin-top: 40px;
}
.c-section.wide {
  margin-top: 75px;
}
.c-section.new-tpl {
  margin-top: 13px;
}
.c-section .c-ttl02.js--toggle-btn {
  margin-top: -10px;
  padding: 16px 40px 17px 30px;
  border-bottom: 1px dashed #777777;
  cursor: pointer;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-section .c-ttl02.js--toggle-btn::after {
  top: 10px;
  height: calc(100% - 19px);
}
.c-section .c-ttl02.js--toggle-btn + h3 {
  margin-top: 25px;
}
.c-section .contents h3:first-child {
  margin-top: 30px;
}
.c-section .contents h4 {
  margin-top: 30px;
  font-size: 16px;
  padding-left: 20px;
  position: relative;
}
.c-section .contents h4::after {
  position: absolute;
  content: "";
  top: 12px;
  left: 0;
  width: 10px;
  height: 2px;
  background: #8776D0;
}
.c-section .contents p:not(.article-txt) {
  margin-top: 20px;
}
.c-section .contents ul:not([class]) {
  list-style: disc;
  padding: 10px 0 10px 1.5em;
}
.c-section .contents ul:not([class]):last-of-type {
  padding-bottom: 0;
}
.c-section .contents a:not([class]) {
  color: #8776D0;
  text-decoration: underline;
}
.c-section .contents .img-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  margin-top: 20px;
}
.c-section .contents .img-box p {
  width: 50%;
  margin-top: 0;
}
.c-section .contents .img-box .img {
  width: calc(50% - 50px);
  aspect-ratio: 550/350;
}
.c-section .contents .img-box .img img,
.c-section .contents .img-box .img video {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-section .contents .img-box > div:not([class]) {
  width: 50%;
}
.c-section .contents .img-box > div p {
  width: 100%;
}
.c-section .contents .img-box > div p + p {
  margin-top: 20px;
}
.c-section .contents .img-box > div ul + p {
  margin-top: 20px;
}
.c-section .contents .video-wrap {
  margin-top: 20px;
}
.c-section .contents .video-wrap video {
  display: block;
  height: auto;
  max-width: 500px;
  margin-inline: auto;
  width: 100%;
}
.c-section .contents .related-column {
  position: relative;
  border: 1px solid #D9D9D9;
  border-radius: 6px;
  padding: 18px 16px 14px;
  margin: 30px 0;
}
.c-section .contents .related-column__label {
  position: absolute;
  top: -9px;
  left: 16px;
  display: inline-block;
  padding: 0 8px;
  background: #fff;
  color: #8776D0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  margin: 0;
}
.c-section .contents .related-column__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 14px;
  text-decoration: none;
  color: inherit;
}
.c-section .contents .related-column__thumb {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 200px;
      -ms-flex: 0 0 200px;
          flex: 0 0 200px;
  width: 200px;
}
.c-section .contents .related-column__thumb img {
  display: block;
  width: 100%;
  height: auto;
}
.c-section .contents .related-column__title {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}
.c-section .contents table:not([class]), .c-section .contents table.new-tpl, .c-section .contents table.js--scrollable {
  margin-top: 20px;
}
.c-section .contents table:not([class]) th, .c-section .contents table.new-tpl th, .c-section .contents table.js--scrollable th {
  background: #EBE6FF;
}
.c-section .contents table:not([class]) th.no-collar, .c-section .contents table.new-tpl th.no-collar, .c-section .contents table.js--scrollable th.no-collar {
  background: transparent;
}
.c-section .contents table:not([class]) th, .c-section .contents table:not([class]) td, .c-section .contents table.new-tpl th, .c-section .contents table.new-tpl td, .c-section .contents table.js--scrollable th, .c-section .contents table.js--scrollable td {
  border: 1px solid #D9D9D9;
  padding: 9px 8px;
}
.c-section .contents table:not([class]) th.new-tpl_link, .c-section .contents table:not([class]) td.new-tpl_link, .c-section .contents table.new-tpl th.new-tpl_link, .c-section .contents table.new-tpl td.new-tpl_link, .c-section .contents table.js--scrollable th.new-tpl_link, .c-section .contents table.js--scrollable td.new-tpl_link {
  border-right: none;
  border-top: none;
  max-width: none;
  padding: 0;
}
.c-section .contents table:not([class]) th.new-tpl_link a, .c-section .contents table:not([class]) td.new-tpl_link a, .c-section .contents table.new-tpl th.new-tpl_link a, .c-section .contents table.new-tpl td.new-tpl_link a, .c-section .contents table.js--scrollable th.new-tpl_link a, .c-section .contents table.js--scrollable td.new-tpl_link a {
  padding: 9px 8px;
  width: 100%;
  display: block;
}
.c-section .contents table:not([class]) th.new-tpl_link .img, .c-section .contents table:not([class]) td.new-tpl_link .img, .c-section .contents table.new-tpl th.new-tpl_link .img, .c-section .contents table.new-tpl td.new-tpl_link .img, .c-section .contents table.js--scrollable th.new-tpl_link .img, .c-section .contents table.js--scrollable td.new-tpl_link .img {
  max-width: 140px;
}
.c-section .contents table:not([class]) th.new-tpl_link .img img, .c-section .contents table:not([class]) td.new-tpl_link .img img, .c-section .contents table.new-tpl th.new-tpl_link .img img, .c-section .contents table.new-tpl td.new-tpl_link .img img, .c-section .contents table.js--scrollable th.new-tpl_link .img img, .c-section .contents table.js--scrollable td.new-tpl_link .img img {
  width: 140px !important;
  margin-inline: auto;
}
.c-section .contents table:not([class]) ul, .c-section .contents table.new-tpl ul, .c-section .contents table.js--scrollable ul {
  padding-top: 0 !important;
}
.c-section .contents table a {
  font-weight: 400;
}
.c-section .contents table.new-tpl tr td:first-child a {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.c-section .contents .c-table-box table:not([class]) {
  margin-top: 0;
}
.c-section .contents .new-tpl_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  margin-top: 27px;
}
.c-section .contents .new-tpl_flex .c-table01 {
  width: 100%;
}
.c-section .contents .new-tpl_flex .txt-wrap {
  max-width: 100%;
}
.c-section .contents .new-tpl_flex .txt-wrap p {
  margin-top: 0;
}
.c-section .contents .new-tpl_flex .txt-wrap * + p {
  margin-top: 20px;
}
.c-section .contents .new-tpl_flex .txt-wrap * + ul {
  margin-top: 20px;
}
.c-section .contents .new-tpl_flex .img {
  max-width: 550px;
  width: 100%;
}

.c-table-box {
  margin-top: 20px;
  overflow-x: auto;
  text-align: center;
  padding-bottom: 10px;
}
.c-table-box::-webkit-scrollbar {
  width: 100%;
  height: 10px;
}
.c-table-box::-webkit-scrollbar-track {
  background: #EBEBEB;
  border-radius: 10px;
}
.c-table-box::-webkit-scrollbar-thumb {
  background-color: #AEA2E6;
  border-radius: 10px;
}
@supports (-moz-appearance: none) {
  .c-table-box {
    padding-bottom: 13px;
  }
}
.c-table-box + .note {
  margin-top: 10px !important;
}

.c-table01 .left {
  text-align: left !important;
}
.c-table01 {
  border-bottom: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
.c-table01 thead th {
  padding: 15px 10px;
  color: #8776D0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-table01 thead a {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-table01 th,
.c-table01 td {
  background: #fff;
  font-weight: 400;
  min-width: 209px;
}
.c-table01 th,
.c-table01 td {
  border-left: 1px solid #D9D9D9;
  padding: 9px 8px;
  border-top: 1px solid #D9D9D9;
}
.c-table01 th:first-child,
.c-table01 td:first-child {
  background: #EBE6FF;
  min-width: 154px;
  max-width: 154px;
}
.c-table01 tr.thumb th,
.c-table01 tr.thumb td {
  height: 170px;
  padding: 25px 35px;
}
.c-table01.new-tpl tr td:first-child:has(a) {
  background: #fff;
}
.c-table01.new-tpl tr.thumb td .comparison-product-name {
  display: block;
  margin-bottom: 10px;
  font-weight: bold;
}
.c-table01.new-tpl tr.thumb td img {
  display: block;
  max-width: 80px;
  width: 100%;
  aspect-ratio: 1/1;
  margin-inline: auto;
}
.c-table01.new-tpl tr.thumb td img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-table01.new-tpl tr.thumb td .c-btn03 {
  width: 160px;
  margin-top: 10px;
  margin-inline: auto;
}

.c-table01-is-half .left {
  text-align: left !important;
}
.c-table01-is-half {
  border-bottom: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
.c-table01-is-half thead th {
  padding: 15px 10px;
  color: #8776D0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-table01-is-half thead a {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-table01-is-half th,
.c-table01-is-half td {
  background: #fff;
  font-weight: 400;
  border-left: 1px solid #D9D9D9;
  padding: 9px 8px;
  border-top: 1px solid #D9D9D9;
}
.c-table01-is-half th:first-child,
.c-table01-is-half td:first-child {
  background: #EBE6FF;
}
.c-table01-is-half tr.thumb th,
.c-table01-is-half tr.thumb td {
  height: 170px;
  padding: 25px 35px;
}
.c-table01-is-half.new-tpl tr td:first-child:has(a) {
  background: #fff;
}
.c-table01-is-half.new-tpl tr.thumb td .comparison-product-name {
  display: block;
  margin-bottom: 10px;
  font-weight: bold;
}
.c-table01-is-half.new-tpl tr.thumb td img {
  display: block;
  max-width: 80px;
  width: 100%;
  aspect-ratio: 1/1;
  margin-inline: auto;
}
.c-table01-is-half.new-tpl tr.thumb td img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-table01-is-half.new-tpl tr.thumb td .c-btn03 {
  width: 160px;
  margin-top: 10px;
  margin-inline: auto;
}

.c-paging-area {
  border: 1px solid #8776D0;
  border-radius: 30px;
  padding: 9px 30px;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 25px auto 0;
}
.c-paging-area .prev,
.c-paging-area .next {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 50px;
  color: #8776D0;
  position: relative;
  cursor: pointer;
}
.c-paging-area .prev::before, .c-paging-area .prev::after,
.c-paging-area .next::before,
.c-paging-area .next::after {
  margin: auto;
  width: 10px;
  height: 1px;
  position: absolute;
  background: #8776D0;
  content: "";
  top: 8px;
  bottom: 0;
  right: 0;
  border-radius: 2px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-paging-area .prev::after,
.c-paging-area .next::after {
  top: -6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-paging-area .prev.disactive,
.c-paging-area .next.disactive {
  color: #9F9F9F;
  cursor: auto;
}
.c-paging-area .prev.disactive::after, .c-paging-area .prev.disactive::before,
.c-paging-area .next.disactive::after,
.c-paging-area .next.disactive::before {
  background: #9F9F9F;
}
.c-paging-area .prev {
  text-align: right;
}
.c-paging-area .prev::before, .c-paging-area .prev::after {
  right: auto;
  left: 0;
}
.c-paging-area .prev::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-paging-area .prev::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-paging-area .nums {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-paging-area .num {
  margin: 0 10px;
  padding-bottom: 2px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-size: 22px;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-paging-area .num.active {
  background: #8776D0;
  color: #fff;
  cursor: auto;
}
.c-paging-area .dots {
  margin: 0 5px;
  width: 3px;
  height: 3px;
  position: relative;
  border-radius: 50%;
  background: #333;
}
.c-paging-area .dots::after, .c-paging-area .dots::before {
  position: absolute;
  content: "";
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #333;
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-paging-area .dots::before {
  left: -7px;
}
.c-paging-area .dots::after {
  right: -7px;
}

.c-purple-card {
  background: #F6F4FF;
  border-radius: 10px;
  margin-top: 40px;
  padding: 45px 30px;
}
.c-purple-card.login-note {
  max-width: 700px;
  margin: 70px auto 0;
  text-align: center;
  padding: 25px 20px;
}
.c-purple-card.login-note .c-btn03 {
  margin: 20px auto 0;
  font-size: 18px;
  padding: 10px 20px;
}
.c-purple-card.login-note > p {
  line-height: 1.1875;
}

.c-copy-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  line-height: 1;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-copy-wrap .code {
  padding: 10px;
  border-radius: 4px 0 0 4px;
  border: 1px solid #D9D9D9;
}
.c-copy-wrap .js--copy,
.c-copy-wrap .js--coupon-apply {
  width: 100px;
  padding: 7px 11px 8px 8px;
  background: #8776D0;
  color: #fff;
  font-weight: 500;
  border-radius: 0 4px 4px 0;
}
.c-copy-wrap .js--copy img,
.c-copy-wrap .js--coupon-apply img {
  margin-right: 6px;
  width: 25px;
}
.c-copy-wrap .js--copy:disabled,
.c-copy-wrap .js--coupon-apply:disabled {
  opacity: 0.5;
  pointer-events: none;
}
.c-copy-wrap .success-message {
  right: 0;
  bottom: -30px;
  background: #F9B21A;
  color: #fff;
  border-radius: 5px;
  z-index: 20;
  font-size: 14px;
  -webkit-box-shadow: 0 0 10px #ddd;
          box-shadow: 0 0 10px #ddd;
  padding: 7px 15px 8px;
  position: absolute;
  opacity: 0;
  font-weight: bold;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  pointer-events: none;
}
.c-copy-wrap .success-message.appear {
  opacity: 1;
}
.c-copy-wrap.coupon .code {
  width: 235px;
  padding: 6px 10px;
  color: #8776D0;
  font-weight: bold;
}
.c-copy-wrap.coupon .js--copy {
  font-size: 14px;
  padding: 5px 12px 5px 10px;
}
.c-copy-wrap.coupon img {
  width: 20px;
}

.scroll-hint-icon {
  padding: 11px 10px 5px 10px;
  border-radius: 0;
}
.scroll-hint-icon::before {
  width: 50px;
  height: 50px;
  background-image: url(../img/product/ico_hint_finger.svg);
}
.scroll-hint-icon::after {
  top: 4px;
  left: calc(50% - 5px);
  width: 36px;
  height: 16px;
  background-image: url(../img/product/ico_hint_arrow.svg);
}
.scroll-hint-icon .scroll-hint-text {
  margin-top: 2px;
  line-height: 1.2;
}

.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 100;
  overflow: auto;
  padding: 0 20px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-modal.active {
  opacity: 1;
  visibility: visible;
  z-index: 999;
}
.c-modal .modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.2);
}
.c-modal .modal__inner {
  position: relative;
  max-width: 500px;
  margin: auto;
  z-index: 50;
}
.c-modal .modal__cont {
  background: #fff;
  border-radius: 10px;
  position: relative;
  width: 345px;
  max-width: 100%;
  padding: 24px 20px 38px;
}
.c-modal .modal__close {
  height: 30px;
  width: 30px;
  position: absolute;
  top: 8px;
  right: 8px;
  margin: auto;
}
.c-modal .modal__close::before, .c-modal .modal__close::after {
  background: #737373;
  content: "";
  height: 24px;
  width: 2px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.c-modal .modal__close::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-modal .modal__close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-modal .ttl {
  color: #8776D0;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 26px;
  line-height: 1.2;
}
.c-modal .txt {
  font-size: 16px;
  font-weight: 400;
  text-align: center;
  margin-bottom: 20px;
}
.c-modal ul li {
  font-size: 16px;
  font-weight: 400;
  padding-left: 16px;
  position: relative;
}
.c-modal ul li::after {
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 3px;
  height: 3px;
  background: #333;
  left: 6px;
  top: 8px;
}
.c-modal ul li + li {
  margin-top: 20px;
}
.c-modal .c-btn03 {
  margin: auto;
}
.c-modal .c-btn03 + .back-btn {
  margin-top: 20px;
}
.c-modal .back-btn {
  border: 1px solid #D9D9D9;
  border-radius: 100px;
  display: block;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  padding: 11px 10px;
  width: 100%;
  max-width: 280px;
  margin: auto;
}
.c-modal.buy-modal .modal__cont {
  padding: 24px 10px 30px;
}
.c-modal .buy-modal-content .buy-content-ttl {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-block: 12px 15px;
}
.c-modal .buy-modal-content .select-box select {
  width: 100%;
  line-height: 1.3;
}
.c-modal .buy-modal-content .c-btn03 {
  max-width: 100%;
  width: 100%;
}
.c-modal .buy-modal-content .c-btn03 + .c-btn03 {
  margin-top: 20px;
}
.c-modal .buy-modal-content .price-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  margin-block: 15px;
}
.c-modal .buy-modal-content .price-area .price {
  color: #C81A37;
  font-weight: bold;
  font-size: 26px;
  line-height: 1;
}
.c-modal .buy-modal-content .price-area .point {
  color: #737373;
  font-size: 13px;
  padding-left: 18px;
  position: relative;
}
.c-modal .buy-modal-content .price-area .point::before {
  background: url(../img/product/ico_expectation_point.svg) no-repeat center center/contain;
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  bottom: 0;
  top: 2px;
  left: 0;
  margin: auto;
}
.c-modal.modal-checkout.renewal .modal__cont {
  padding: 59px 33px 55px;
}
.c-modal.modal-checkout.renewal .c-btn03 {
  line-height: 1.125 !important;
  padding: 14px 20px;
  width: 100%;
}
.c-modal.modal-register.active, .c-modal.modal-register-line-notice.active {
  z-index: 1100;
}
.c-modal.modal-register.renewal .modal__cont {
  padding: 59px 33px 55px;
}
.c-modal.modal-register.renewal .c-register-select .ttl {
  margin-top: 0;
}
.c-modal.modal-register.renewal .login-ttl {
  color: #333;
  font-size: 16px;
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}
.c-modal.modal-register.renewal .c-btn03 {
  line-height: 1.125 !important;
  padding: 14px 20px;
  width: 100%;
}

.c-register-select .ttl {
  color: #333;
  font-size: 16px;
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}
.c-register-select .btn-wrap .c-btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #000;
  border-radius: 100px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  padding: 9px 20px;
  min-height: 50px;
  width: 100%;
}
.c-register-select .btn-wrap .c-btn.google .ico {
  background: url(../img/common/g-logo.png.webp) center center/contain no-repeat;
}
.c-register-select .btn-wrap .c-btn.line .ico {
  background: url(../img/common/l-logo.png.webp) center center/contain no-repeat;
}
.c-register-select .btn-wrap .c-btn.mail .ico {
  background: url(../img/common/ico_mail02.svg) center center/contain no-repeat;
  background-size: 20px 20px;
}
.c-register-select .btn-wrap .c-btn + .c-btn {
  margin-top: 20px;
}
.c-register-select .btn-wrap .ico {
  height: 20px;
  width: 20px;
}
.c-register-select .btn-wrap .inn {
  display: block;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.c-register-select.login-page-register .ttl {
  margin-top: 50px;
  font-size: 28px;
  font-weight: bold;
  text-align: left;
}
.c-register-select.login-page-register .btn-wrap .c-btn {
  max-width: 280px;
  padding-block: 7px;
}
.c-register-select.register-page-head {
  margin-top: 50px;
}

.c-form-flow-img {
  text-align: center;
  margin-top: 30px;
}

.c-anchor-link-positoin {
  position: relative;
  left: 0;
  top: -180px;
}

.c-cat-modal-wrap {
  position: relative;
}
.c-cat-modal-wrap .cat-modal {
  z-index: 1200;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  left: 0;
  opacity: 0;
  pointer-events: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  overflow-y: scroll;
  max-height: 80vh;
}
.c-cat-modal-wrap .cat-modal::-webkit-scrollbar {
  width: 6px;
  height: 100%;
}
.c-cat-modal-wrap .cat-modal::-webkit-scrollbar-track {
  background: #EBEBEB;
  border-radius: 10px;
}
.c-cat-modal-wrap .cat-modal::-webkit-scrollbar-thumb {
  background-color: #AEA2E6;
  border-radius: 10px;
}
@supports (-moz-appearance: none) {
  .c-cat-modal-wrap .cat-modal {
    padding-bottom: 13px;
  }
}
.c-cat-modal-wrap .cat-modal .cat-modal-inner {
  padding: 25px 20px 30px;
}
.c-cat-modal-wrap .cat-modal .close {
  right: 12px;
  top: 10px;
}
.c-cat-modal-wrap .cat-modal .ttl {
  color: #8776D0;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  display: block;
  font-size: 22px;
}
.c-cat-modal-wrap .cat-modal .c-tags-outer {
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  top: 0;
  left: 0;
  position: relative;
  padding: 21px 0 0;
  width: 860px;
  max-width: calc(100vw - 80px);
}
.c-cat-modal-wrap .cat-modal .c-tags-outer::after {
  display: none;
}
.c-cat-modal-wrap .cat-modal.active {
  opacity: 1;
  pointer-events: visible;
}
.c-cat-modal-wrap .cat-modal.active .c-tags-outer {
  opacity: 1;
  pointer-events: visible;
}

.c-related-article {
  background: #F8F8F8;
  border-radius: 10px;
  margin-top: 45px;
  padding: 13px 30px;
}
.c-related-article .article-txt {
  margin-top: 0;
  font-size: 16px;
}
.c-related-article .article-txt + .article-txt {
  margin-top: 10px;
}
.c-related-article .article-txt a {
  color: #8776D0;
  text-decoration: underline;
}

.new-tpl_anchor-wrap {
  margin-top: 30px;
}
.new-tpl_anchor-wrap .anchor-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 11px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.new-tpl_anchor-wrap .anchor-list li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 10px 39px;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  height: 100%;
  gap: 10px;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  padding-inline: 20px;
  min-width: 140px;
}
.new-tpl_anchor-wrap .anchor-list li a::before, .new-tpl_anchor-wrap .anchor-list li a::after {
  content: "";
  position: absolute;
  background: #8776D0;
  display: block;
  width: 22px;
  height: 3px;
  left: 0;
  bottom: 16px;
  right: 0;
  margin: auto;
  border-radius: 3px 0 0 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.new-tpl_anchor-wrap .anchor-list li a::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: 14px;
}
.new-tpl_anchor-wrap .anchor-list li a::after {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  left: 14px;
}
.new-tpl_anchor-wrap .anchor-list li a .img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_anchor-wrap .anchor-list li a .txt {
  margin-top: 0;
  font-size: 20px;
  font-weight: bold;
}
.new-tpl_anchor-wrap.small .anchor-list {
  gap: 10px;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.new-tpl_anchor-wrap.small .anchor-list li {
  width: 90.8333333333px;
}
.new-tpl_anchor-wrap.small .anchor-list li a {
  color: #333 !important;
  text-decoration: none !important;
  gap: 3px;
  padding-block: 6px 27px;
  padding-inline: 10px;
  min-width: auto;
}
.new-tpl_anchor-wrap.small .anchor-list li a .img {
  max-width: 30px;
}
.new-tpl_anchor-wrap.small .anchor-list li a .img img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_anchor-wrap.small .anchor-list li a .txt {
  font-size: 14px;
  line-height: 1;
  min-height: 28px;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.new-tpl_anchor-wrap.small .anchor-list li a::before, .new-tpl_anchor-wrap.small .anchor-list li a::after {
  width: 16px;
  height: 2px;
  bottom: 13px;
}
.new-tpl_anchor-wrap.small .anchor-list li a::before {
  right: 11px;
}
.new-tpl_anchor-wrap.small .anchor-list li a::after {
  left: 11px;
}

.new-tpl_point-wrap {
  background: #EBE6FF;
  border-radius: 10px;
  padding: 20px;
  margin-top: 20px;
}
.new-tpl_point-wrap .point-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.new-tpl_point-wrap .point-list li {
  width: calc((100% - 48px) / 4);
}
.new-tpl_point-wrap .point-list li {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 23px;
  padding-block: 14px;
  border-radius: 6px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.new-tpl_point-wrap .point-list li .img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_point-wrap .point-list li .txt {
  margin-top: 0;
  color: #8776D0;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}

.new-tpl_product-anchor-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 30px;
}
.new-tpl_product-anchor-list li {
  width: calc((100% - 20px) / 3);
  max-width: 400px;
}
.new-tpl_product-anchor-list li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  background: #F6F4FF;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 40px 20px 30px;
  border-radius: 10px;
  position: relative;
  height: 100%;
}
.new-tpl_product-anchor-list li a::before, .new-tpl_product-anchor-list li a::after {
  content: "";
  position: absolute;
  background: #8776D0;
  display: block;
  width: 22px;
  height: 3px;
  top: 0;
  bottom: 0;
  right: 24px;
  margin: auto;
  border-radius: 3px 0 0 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.new-tpl_product-anchor-list li a::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  bottom: 14px;
}
.new-tpl_product-anchor-list li a::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 14px;
}
.new-tpl_product-anchor-list li a .img {
  width: 40px;
}
.new-tpl_product-anchor-list li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_product-anchor-list li a .txt {
  margin-top: 0;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}

.new-tpl_anchor-link {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background: #F6F4FF;
  border-radius: 10px;
  padding: 20px 95px 20px 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  position: relative;
}
.new-tpl_anchor-link .img {
  width: 40px;
  height: 40px;
}
.new-tpl_anchor-link .img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_anchor-link .bold {
  font-size: 22px;
  font-weight: bold;
  color: #8776D0;
}
.new-tpl_anchor-link .txt {
  margin-top: 0;
  font-size: 20px;
}
.new-tpl_anchor-link::before, .new-tpl_anchor-link::after {
  content: "";
  position: absolute;
  background: #8776D0;
  display: block;
  width: 22px;
  height: 3px;
  top: 0;
  bottom: 0;
  right: 76px;
  margin: auto;
  border-radius: 3px 0 0 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.new-tpl_anchor-link::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  bottom: 14px;
}
.new-tpl_anchor-link::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 14px;
}

.new-tpl_purpose-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}
.new-tpl_purpose-list li {
  width: calc((100% - 36px) / 4);
}
.new-tpl_purpose-list li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 20px 10px 10px 20px;
  border: 1px solid #8776D0;
  border-radius: 10px;
  position: relative;
}
.new-tpl_purpose-list li a::before, .new-tpl_purpose-list li a::after {
  content: "";
  position: absolute;
  background: #8776D0;
  display: block;
  width: 22px;
  height: 3px;
  top: 0;
  bottom: 0;
  right: 23px;
  margin: auto;
  border-radius: 3px 0 0 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 2;
}
.new-tpl_purpose-list li a::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  bottom: 14px;
}
.new-tpl_purpose-list li a::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 14px;
}
.new-tpl_purpose-list li a .txt {
  color: #8776D0;
  font-size: 18px;
  font-weight: bold;
  padding-left: 40px;
  padding-block: 2px;
  line-height: normal;
  margin-top: 0;
  position: relative;
}
.new-tpl_purpose-list li a .txt::before {
  content: "";
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 0;
  left: 0;
}
.new-tpl_purpose-list li a .purpose-icon {
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 0;
  left: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_purpose-list li a.custom-icon .txt {
  min-height: 30px;
}
.new-tpl_purpose-list li a.custom-icon .txt::before, .new-tpl_purpose-list li a.no-icon .txt::before {
  display: none;
}
.new-tpl_purpose-list li a.no-icon .txt {
  padding-left: 0;
}
.new-tpl_purpose-list li a.jewelry .txt::before {
  background: url("../img/product/ico_jewelry.svg") no-repeat center/contain;
}
.new-tpl_purpose-list li a.yen .txt::before {
  background: url("../img/product/ico_yen.svg") no-repeat center/contain;
}
.new-tpl_purpose-list li a.time .txt::before {
  background: url("../img/product/ico_time.svg") no-repeat center/contain;
}
.new-tpl_purpose-list li a.smile .txt::before {
  background: url("../img/product/ico_smile.svg") no-repeat center/contain;
}
.new-tpl_purpose-list li a .pro-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  padding-right: 35px;
}
.new-tpl_purpose-list li a .pro-wrap .img {
  max-width: 80px;
  aspect-ratio: 1/1;
}
.new-tpl_purpose-list li a .pro-wrap .img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_purpose-list li a .pro-wrap .name {
  margin-top: 18px;
  font-weight: bold;
}

.new-tpl_shape-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 20px;
}
.new-tpl_shape-list li {
  width: calc((100% - 36px) / 4);
}
.new-tpl_shape-list li a {
  border: 1px solid #8776D0;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px 13px;
}
.new-tpl_shape-list li .img {
  max-width: 100px;
}
.new-tpl_shape-list li .img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.new-tpl_shape-list li .name {
  font-size: 18px;
  font-weight: bold;
  line-height: normal;
  color: #8776D0;
}
.new-tpl_shape-list li .txt {
  margin-top: 10px;
  font-weight: 500;
  color: #333;
}

.new-tpl_review-box {
  background: #FFFAE8;
  border-radius: 10px;
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: clamp(100px, 17.3611111111vw, 250px);
  padding: 54px 40px 59px 50px;
  margin-top: 20px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.new-tpl_review-box .total-wrap {
  text-align: center;
  line-height: normal;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.new-tpl_review-box .total-wrap::before {
  content: "";
  position: absolute;
  background: #B3B3B3;
  display: block;
  width: 1px;
  height: 240px;
  top: 0;
  bottom: 0;
  right: clamp(-125px, -8.6805555556vw, -50px);
  margin: auto;
}
.new-tpl_review-box .total-wrap .lead {
  font-size: 24px;
}
.new-tpl_review-box .total-wrap .rate {
  font-size: 30px;
  margin-top: 14px;
}
.new-tpl_review-box .total-wrap .total {
  font-size: 20px;
  margin-top: 16px;
}
.new-tpl_review-box .total-wrap .c-rate-wrap {
  width: 224px;
  margin-top: 14px;
}
.new-tpl_review-box .total-wrap .c-rate-wrap .star {
  width: 42px;
  height: 42px;
}
.new-tpl_review-box .star-list li {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.new-tpl_review-box .star-list li + li {
  margin-top: 15px;
}
.new-tpl_review-box .star-list .star-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 220px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 18px;
}
.new-tpl_review-box .star-list .star-wrap .ref {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.new-tpl_review-box .star-list .star-wrap .ref.no-hover {
  text-decoration: none;
}
.new-tpl_review-box .star-list .star-wrap .ref.active {
  font-weight: bold;
  -webkit-text-decoration-color: #8776D0;
          text-decoration-color: #8776D0;
}
.new-tpl_review-box .star-list .bar-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 270px;
}
.new-tpl_review-box .star-list .bar-wrap .bar {
  background: #D9D9D9;
  display: block;
  height: 20px;
  width: calc(100% - 60px);
}
.new-tpl_review-box .star-list .bar-wrap .collar {
  background: #FFD220;
  height: 100%;
  width: 0;
}
.new-tpl_review-box .star-list .percent {
  width: 60px !important;
  text-align: right;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2222222222;
  margin-left: 10px;
}
.new-tpl_review-box .star-list .percent .num {
  font-size: 22px;
  line-height: 1;
}
.new-tpl_review-box .c-rate-wrap {
  width: 135px;
}
.new-tpl_review-box .c-rate-wrap .star {
  width: 25px;
  height: 25px;
}

.new-tpl_link-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.new-tpl_link-list .inn {
  width: calc((100% - 20px) / 3);
  border: 1px solid #8776D0;
  border-radius: 10px;
  padding-block: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.new-tpl_link-list .inn .lead {
  font-size: 18px;
  font-weight: bold;
  padding-left: 30px;
  position: relative;
}
.new-tpl_link-list .inn .lead::before {
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.new-tpl_link-list .inn ul {
  margin-top: 15px;
}
.new-tpl_link-list .inn ul li {
  font-size: 16px;
}
.new-tpl_link-list .inn .dot-list li {
  padding-left: 24px;
  position: relative;
  line-height: 1.5;
}
.new-tpl_link-list .inn .dot-list li::before {
  content: "";
  position: absolute;
  background: #333;
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  top: 11px;
  left: 10px;
}
.new-tpl_link-list .inn .link-list li + li {
  margin-top: 14px;
}
.new-tpl_link-list .inn .link-list li a {
  display: block;
  padding-right: 10px;
  min-width: 270px;
  position: relative;
  line-height: 1;
}
.new-tpl_link-list .inn .link-list li a::before, .new-tpl_link-list .inn .link-list li a::after {
  content: "";
  position: absolute;
  background: #8776D0;
  display: block;
  width: 13px;
  height: 2px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  border-radius: 3px 0 0 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.new-tpl_link-list .inn .link-list li a::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  bottom: 9px;
}
.new-tpl_link-list .inn .link-list li a::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 9px;
}
.new-tpl_link-list .inn .link {
  color: #8776D0;
  margin-top: auto;
  position: relative;
  margin-bottom: 6px;
  padding-right: 32px;
}
.new-tpl_link-list .inn .link::before {
  content: "＞";
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.new-tpl_link-list .inn.reason .lead::before {
  background: url("../img/product/ico_reason.svg") no-repeat center/contain;
}
.new-tpl_link-list .inn.delivery .lead::before {
  background: url("../img/product/ico_delivery.svg") no-repeat center/contain;
}
.new-tpl_link-list .inn.link .lead::before {
  width: 18px;
  height: 18px;
  background: url("../img/product/ico_link.svg") no-repeat center/contain;
}

.new-tpl_article .new-tpl_purpose-list li a .txt {
  margin-top: 0 !important;
}
.new-tpl_article .new-tpl_shape-list li a {
  text-decoration: none !important;
}
.new-tpl_article .new-tpl_shape-list li .name {
  margin-top: 0 !important;
}
.new-tpl_article .new-tpl_shape-list li .txt {
  margin-top: 10px !important;
}
.new-tpl_article .c-table01.table-full-wide {
  width: 100%;
}
.new-tpl_article .c-table01.table-full-wide th, .new-tpl_article .c-table01.table-full-wide td:first-child {
  text-align: center !important;
}

.js--toggle-btn {
  position: relative;
}
.js--toggle-btn .ico {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 20px;
}
.js--toggle-btn .ico::before, .js--toggle-btn .ico::after {
  position: absolute;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  content: "";
  border-radius: 2px;
  background: #777777;
  width: 100%;
  height: 2px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.js--toggle-btn .ico::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.js--toggle-btn.active .ico::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
}

.nav-btn {
  text-align: left;
  font-size: 16px;
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid #EBEBEB;
  position: relative;
}
.nav-btn.active {
  color: #333;
}
.nav-btn.active::after, .nav-btn.active::before {
  background: #8776D0;
}
.nav-btn::after, .nav-btn::before {
  right: 18px;
}
.nav-btn:not(.js--toggle-btn)::after, .nav-btn:not(.js--toggle-btn)::before {
  right: 12px;
}

.nav-btn02 {
  color: #333;
  font-weight: bold;
  font-size: 16px;
  padding: 12px 20px 14px;
  background: #fff;
  line-height: 1.1875;
  border-radius: 25px;
  letter-spacing: 0.1em;
  text-align: left;
}
.nav-btn02.lt-4 {
  letter-spacing: 0.04em;
}
.nav-btn02::after, .nav-btn02::before {
  right: 21px;
  height: 3px;
  width: 14px;
  top: 8px;
}
.nav-btn02::after {
  top: -8px;
}

.c-btn02 {
  margin-top: 30px;
  margin-left: auto;
  margin-right: 0;
  background: #8776D0;
  color: #fff;
  width: 360px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  padding: 13px 14px 15px;
  gap: 20px;
  border-radius: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #8776D0;
}
.c-btn02 .ico {
  width: 30px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  height: 30px;
  background: #fff;
  position: relative;
  top: 1px;
}
.c-btn02 .ico.blank {
  -webkit-mask: url(../img/common/ico_blank.svg) no-repeat center/contain;
          mask: url(../img/common/ico_blank.svg) no-repeat center/contain;
}
.c-btn02.google {
  background: #fff;
  border-color: #333;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: #333;
  font-size: 16px;
  text-align: center;
  margin-top: 0 !important;
  max-width: 280px;
}
.c-btn02.google .ico {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-btn02.google .inn {
  display: block;
  width: 100%;
}
.c-btn02.line {
  background: #06C755;
  border-color: #06C755;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: #fff;
  font-size: 16px;
  text-align: center;
  margin-top: 0 !important;
  max-width: 280px;
}
.c-btn02.line .ico {
  background: transparent;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(2%) hue-rotate(171deg) brightness(105%) contrast(101%);
          filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(2%) hue-rotate(171deg) brightness(105%) contrast(101%);
  height: 38px;
  width: 49px;
  top: -1px;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-btn02.line .ico img {
  height: 100%;
}
.c-btn02.line .inn {
  display: block;
  width: 100%;
  padding-right: 20px;
}

.c-btn03 {
  background: #8776D0;
  color: #fff;
  width: 305px;
  font-weight: bold;
  line-height: 1;
  padding: 10px 14px;
  border-radius: 30px;
  display: block;
  text-align: center;
  border: 1px solid #8776D0;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  min-height: 40px;
}
.c-btn03.review {
  width: 280px;
  padding: 7px 14px 8px;
  background: #F9B21A;
  border: 1px solid #F9B21A;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 100%;
}
.c-btn03.review .ico {
  position: relative;
  top: 2px;
  width: 25px;
  height: 23px;
  display: block;
  background: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  background: url(../img/review/ico_comment.svg) no-repeat center/contain;
}
.c-btn03.confirm-btn, .c-btn03.submit-btn, .c-btn03.back-btn {
  background: #F9B21A;
  width: 280px;
  margin: 0 auto;
  border-color: #F9B21A;
  padding: 10px 20px;
  font-size: 18px;
}
.c-btn03.cart {
  width: 280px;
  padding: 5px 14px 5px;
  background: #C81A37;
  border: 1px solid #C81A37;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 100%;
}
.c-btn03.cart .ico {
  width: 30px;
  height: 28px;
  display: block;
  background: url(../img/review/ico_cart.svg) no-repeat center/contain;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-btn03.cart.large {
  margin: 30px auto 0;
  width: 580px;
  font-size: 18px;
  padding: 10px 14px;
}
.c-btn03.cart.small {
  font-size: 14px;
  line-height: 1.2;
}
.c-btn03.cart.confirm-btn {
  font-size: 16px;
}
.c-btn03.cart:disabled {
  background: #9F9F9F;
  border-color: #9F9F9F;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.c-btn03.back-btn {
  background: #777777;
  border-color: #777777;
}
.c-btn03.register-btn {
  width: 280px;
  background: #fff;
  border-color: #8776D0;
  color: #8776D0;
  font-size: 18px;
  padding: 10px 20px;
}
.c-btn03.continue-btn {
  width: 280px;
  padding: 11px 20px;
  border-color: #D9D9D9;
  color: #333;
  background: #fff;
  font-weight: 400;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.c-btn03.line {
  padding: 8px 14px 7px;
  width: 280px;
  border-color: #777777;
  background: #fff;
  color: #06C755;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  max-width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-btn03.line .ico {
  margin: 0 !important;
  width: 35px !important;
  height: 33px;
  display: block;
  background: url(../img/cart/ico_line.svg) no-repeat center/contain;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-btn03.procedure-btn {
  width: 280px;
  max-width: 100%;
  border-color: #C81A37;
  background: #C81A37;
  font-size: 18px;
  padding: 10px 20px;
}
.c-btn03.procedure-btn::before, .c-btn03.procedure-btn::after {
  background: #fff;
  right: 18px;
  width: 12px;
}
.c-btn03.procedure-btn::before {
  top: 10px;
}
.c-btn03.procedure-btn::after {
  top: -7px;
}
.c-btn03.yellow {
  padding: 10px 14px 10px;
  background: #F9B21A;
  border: 1px solid #F9B21A;
  display: block;
  max-width: 100%;
  position: relative;
}
.c-btn03.yellow::before, .c-btn03.yellow::after {
  background: #fff;
  right: 18px;
  width: 12px;
}
.c-btn03.yellow::before {
  top: 10px;
}
.c-btn03.yellow::after {
  top: -7px;
}
.c-btn03.no-item {
  background: #777777;
  border-color: #777777;
  pointer-events: none;
}
.c-btn03.min-50 {
  padding: 14px 14px 16px;
}
.c-btn03.min-60 {
  min-height: 60px;
}
.c-btn03.buy-detail-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-btn03.buy-detail-btn.c-arrow::before, .c-btn03.buy-detail-btn.c-arrow::after {
  background: #fff;
  right: 18px;
  width: 12px;
}
.c-btn03.buy-detail-btn.c-arrow::before {
  top: 9px;
}
.c-btn03.buy-detail-btn.c-arrow::after {
  top: -7px;
}

.c-btn04 {
  width: 230px;
  border-radius: 5px;
  background: #8776D0;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  padding: 7px 10px;
}
.c-btn04::before {
  background: #fff;
  content: "";
  -webkit-mask-image: url(../img/common/ico-arrow.svg);
          mask-image: url(../img/common/ico-arrow.svg);
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  position: absolute;
  top: 0 !important;
  bottom: 0;
  right: 9px;
  margin: auto;
  height: 14px;
  width: 7px !important;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.c-btn04::after {
  content: none;
}
.c-btn04 img {
  height: 36px;
}

.c-btn05 {
  margin: 45px auto 0;
  background: #8776D0;
  color: #fff;
  width: 360px;
  font-size: 20px;
  text-align: center;
  line-height: 1;
  padding: 18px 14px 20px;
  border-radius: 30px;
  font-family: "ZenMaruGothic", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  border: 1px solid #8776D0;
}
.c-btn05::before {
  background: #fff;
  content: "";
  -webkit-mask-image: url(../img/common/ico-arrow02.svg);
          mask-image: url(../img/common/ico-arrow02.svg);
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 29px;
  margin: auto;
  height: 18px;
  width: 10px;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.c-btn05::after {
  content: none;
}

/* -----------------------------------------------
* Page エントリーポイント
-------------------------------------------------- */
/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.home-front {
  padding-bottom: 50px;
  overflow: hidden;
}
.home-front .c-top-section + .c-top-section {
  margin-top: 60px;
}
.home-front .home-ttl {
  margin-bottom: 32px;
  text-align: center;
}
.home-front #swiper-pagination-note {
  display: none;
}
.home-front .top-banner-section {
  z-index: 2;
  position: relative;
}
.home-front .top-banner-section + .inner-block {
  margin-top: 60px;
}
.home-front .top-banner-section .main-swiper {
  margin-top: 20px;
  position: relative;
  padding-bottom: 72px;
}
.home-front .top-banner-section .main-swiper .swiper-slide {
  width: 1200px;
  max-width: calc(100vw - 80px);
}
.home-front .top-banner-section .main-swiper .swiper-slide > a {
  width: 100%;
  height: 10%;
  display: block;
}
.home-front .top-banner-section .main-swiper .swiper-pagination {
  bottom: 11px;
}
.home-front .top-banner-section .main-swiper .swiper-pagination-bullet {
  width: 9px;
  height: 9px;
  font-weight: bold;
  background: #8776D0;
  margin: 0 5px;
  position: relative;
}
.home-front .top-banner-section .main-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  opacity: 1;
}
.home-front .top-banner-section .main-swiper .swiper-pagination-bullet::after {
  position: absolute;
  content: "";
  background: #AEA2E6;
  width: 100%;
  height: 6px;
  bottom: 0;
  left: 0;
  border-radius: 3px;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.home-front .top-banner-section .main-swiper .swiper-pagination-bullet .note {
  line-height: 1;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  display: block;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev,
.home-front .top-banner-section .main-swiper .swiper-button-next {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 56px;
  height: 56px;
  top: -72px;
  margin: auto;
  bottom: 0;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev::before, .home-front .top-banner-section .main-swiper .swiper-button-prev::after,
.home-front .top-banner-section .main-swiper .swiper-button-next::before,
.home-front .top-banner-section .main-swiper .swiper-button-next::after {
  background: #8776D0;
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 4px;
  height: 23px;
  border-radius: 3px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 15px;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev::after,
.home-front .top-banner-section .main-swiper .swiper-button-next::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: -15px;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev {
  left: 40px;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 15px;
}
.home-front .top-banner-section .main-swiper .swiper-button-prev::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: -15px;
}
.home-front .top-banner-section .main-swiper .swiper-button-next {
  right: 40px;
}
.home-front .top-cat-section {
  position: relative;
}
.home-front .top-cat-section .home-ttl {
  position: relative;
  z-index: 2;
}
.home-front .recommend-category-list {
  position: relative;
  z-index: 1;
}
.home-front .recommend-category-list::before {
  position: absolute;
  content: "";
  top: -380px;
  right: -100px;
  width: 370px;
  height: 376px;
  z-index: -1;
  background: url(../img/common/bg01.svg) no-repeat center/cover;
}
.home-front .recommend-category-list::after {
  position: absolute;
  content: "";
  bottom: -170px;
  left: -120px;
  width: 367px;
  height: 355px;
  z-index: -1;
  background: url(../img/common/bg02.svg) no-repeat center/cover;
}
.home-front .recommend-category-list li + li {
  margin-top: 20px;
}
.home-front .recommend-category-list li > a {
  border-radius: 20px;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 130px;
}
.home-front .recommend-category-list .img-box,
.home-front .recommend-category-list .txt-box {
  width: 50%;
}
.home-front .recommend-category-list .img-box {
  border-radius: 20px 0 0 20px;
  overflow: hidden;
}
.home-front .recommend-category-list .img-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-front .recommend-category-list .txt-box {
  height: auto;
  border-radius: 0 20px 20px 0;
  background: #F6F4FF;
  padding: 0 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.home-front .recommend-category-list .txt-box::before, .home-front .recommend-category-list .txt-box::after {
  right: 30px;
  height: 4px;
  width: 23px;
  top: 14px;
}
.home-front .recommend-category-list .txt-box::after {
  top: -14px;
}
.home-front .recommend-category-list .txt-box .ttl {
  font-size: 30px;
  width: 100%;
  color: #8776D0;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.home-front .recommend-category-list .txt-box .txt {
  width: 100%;
  margin-top: 13px;
  font-size: 20px;
  letter-spacing: 0.08em;
}
.home-front .top-ranking-section .raking-tag-wrap {
  padding-bottom: 10px;
  margin-bottom: 10px;
  overflow-x: auto;
  margin-right: -40px;
}
.home-front .top-ranking-section .raking-tag-wrap::-webkit-scrollbar {
  width: 100%;
  height: 6px;
}
.home-front .top-ranking-section .raking-tag-wrap::-webkit-scrollbar-track {
  background: #EBEBEB;
  border-radius: 10px;
}
.home-front .top-ranking-section .raking-tag-wrap::-webkit-scrollbar-thumb {
  background-color: #AEA2E6;
  border-radius: 10px;
}
@supports (-moz-appearance: none) {
  .home-front .top-ranking-section .raking-tag-wrap {
    padding-bottom: 13px;
  }
}
.home-front .top-ranking-section .ranking-tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 10px;
}
.home-front .top-ranking-section .ranking-tags > li {
  text-align: center;
}
.home-front .top-ranking-section .ranking-tags > li > button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 170px;
  padding: 11px 20px;
  border-radius: 20px;
  border: 1px solid #333;
  font-weight: bold;
  font-size: 16px;
  background: #fff;
  line-height: 1;
  display: block;
  white-space: nowrap;
}
.home-front .top-ranking-section .ranking-tags > li > button.active {
  pointer-events: none;
  border-color: #8776D0;
  background: #8776D0;
  color: #fff;
}
.home-front .top-ranking-section .c-product-display-area {
  margin-top: 0;
}
.home-front .cat-modal-wrap {
  position: relative;
}
.home-front .cat-modal-wrap .c-btn02 {
  position: relative;
  z-index: 10;
}
.home-front .cat-modal-wrap .cat-modal {
  z-index: 1200;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  left: 0;
  opacity: 0;
  pointer-events: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.25);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  overflow-y: scroll;
  max-height: 80vh;
}
.home-front .cat-modal-wrap .cat-modal::-webkit-scrollbar {
  width: 6px;
  height: 100%;
}
.home-front .cat-modal-wrap .cat-modal::-webkit-scrollbar-track {
  background: #EBEBEB;
  border-radius: 10px;
}
.home-front .cat-modal-wrap .cat-modal::-webkit-scrollbar-thumb {
  background-color: #AEA2E6;
  border-radius: 10px;
}
@supports (-moz-appearance: none) {
  .home-front .cat-modal-wrap .cat-modal {
    padding-bottom: 13px;
  }
}
.home-front .cat-modal-wrap .cat-modal .cat-modal-inner {
  padding: 25px 20px 30px;
}
.home-front .cat-modal-wrap .cat-modal .close {
  right: 12px;
  top: 10px;
}
.home-front .cat-modal-wrap .cat-modal .ttl {
  color: #8776D0;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  display: block;
  font-size: 22px;
}
.home-front .cat-modal-wrap .cat-modal .c-tags-outer {
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  top: 0;
  left: 0;
  position: relative;
  padding: 21px 0 0;
  width: 860px;
  max-width: calc(100vw - 80px);
}
.home-front .cat-modal-wrap .cat-modal .c-tags-outer::after {
  display: none;
}
.home-front .cat-modal-wrap .cat-modal.active {
  opacity: 1;
  pointer-events: visible;
}
.home-front .cat-modal-wrap .cat-modal.active .c-tags-outer {
  opacity: 1;
  pointer-events: visible;
}

.new-home-front .coupon-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #F6F4FF;
  border: 1px solid #8776D0;
  border-radius: 10px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  padding: 14px 30px;
  position: relative;
  z-index: 100;
  margin-bottom: 47px;
}
.new-home-front .coupon-wrap .img img {
  max-width: 90px;
}
.new-home-front .coupon-wrap .txt-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 40px;
  width: 100%;
}
.new-home-front .coupon-wrap .coupon-ttl {
  color: #8776D0;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4545454545;
}
.new-home-front .coupon-wrap .c-btn03 {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: auto;
}
.new-home-front .coupon-wrap .c-btn03::before, .new-home-front .coupon-wrap .c-btn03::after {
  background: #fff;
  width: 12px;
}
.new-home-front .coupon-wrap .c-btn03::before {
  top: 8px;
}
.new-home-front .coupon-wrap .c-btn03::after {
  top: -8px;
}
.new-home-front .home-ttl.mb-29 {
  margin-bottom: 29px;
}
.new-home-front .scroll-area {
  position: relative;
  z-index: 100;
}
.new-home-front .scroll-area .scroll-hint-icon-wrap {
  z-index: 200;
}
.new-home-front .search-list {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 5px;
  position: relative;
  z-index: 5;
}
.new-home-front .search-list a {
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 11px 9px 10px;
  text-align: center;
  height: 100%;
}
.new-home-front .search-list .ico {
  display: block;
  margin: auto;
}
.new-home-front .search-list .txt {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4285714286;
  margin-top: 7px;
}
.new-home-front .info-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.new-home-front .info-wrap a {
  background: #F6F4FF;
  border: 2px solid #F6F4FF;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 14px 20px;
}
.new-home-front .info-wrap .ico {
  margin: 0 auto 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.new-home-front .info-wrap .ttl {
  color: #8776D0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4444444444;
  text-align: center;
  margin-bottom: 0;
}
.new-home-front .info-wrap .txt {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  margin-top: 9px;
}
.new-home-front .info-wrap .link-txt {
  margin-top: 0;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-product .sp-under {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.p-product .note {
  font-size: 14px;
  margin-top: 20px;
}
.p-product .link-txt .txt {
  margin-top: 0;
}
.p-product .category-thumb .thumb {
  margin-top: 22px;
  width: 100%;
  height: auto;
}
.p-product .category-thumb .thumb img,
.p-product .category-thumb .thumb video {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-product .category-thumb .thumb + .txt {
  margin-top: 32px;
}
.p-product .category-thumb .sub-thumb {
  margin-top: 22px;
  background: #F6F4FF;
  border-radius: 10px;
  padding: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.p-product .category-thumb .sub-thumb .txt {
  margin-top: 0;
  width: calc(100% - 240px);
}
.p-product .category-thumb .sub-thumb .img {
  width: 200px;
  height: 200px;
  background: #fff;
  padding: 20px;
}
.p-product .type-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 20px;
}
.p-product .type-list > li {
  line-height: 1;
  width: calc(50% - 10px);
  font-size: 18px;
  font-weight: bold;
  position: relative;
  letter-spacing: 0.1em;
}
.p-product .type-list > li .c-arrow {
  background: #fff;
  border: 1px solid #D9D9D9;
  padding: 20px 40px;
  border-radius: 30px;
  /*
  @include pc {
    &:hover {
      background: $purple;
      color: #fff;
      &::after, &::before {
        background: #fff;
      }
    }
  }
  */
}
.p-product .type-list > li h3 {
  font-size: 18px;
}
.p-product .js--result .wrap {
  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;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
.p-product .js--result .controls {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 5px 25px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-product .js--result .controls select {
  width: 100% !important;
  font-size: 16px !important;
  padding-top: 11px;
  padding-bottom: 11px;
}
.p-product .js--result .controls .select-box:nth-child(1) {
  width: 160px;
}
.p-product .js--result .controls .select-box:nth-child(2) {
  width: 220px;
}
.p-product .faq-section .faq-list > li + li {
  border-top: 1px solid #D9D9D9;
}
.p-product .faq-section .faq-list > li .row {
  position: relative;
}
.p-product .faq-section .faq-list > li .row.q-row {
  color: #8776D0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  cursor: pointer;
  padding: 19px 60px;
}
.p-product .faq-section .faq-list > li .row.q-row .txt {
  min-height: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-product .faq-section .faq-list > li .row.a-row {
  border-top: 1px solid #D9D9D9;
  padding: 30px 20px 30px 60px;
}
.p-product .faq-section .faq-list > li .row.a-row .txt::after {
  background: url(../img/common/ico_a.svg) no-repeat center/contain;
  top: -10px;
}
.p-product .faq-section .faq-list > li .txt {
  margin-top: 0;
  position: relative;
}
.p-product .faq-section .faq-list > li .txt::after {
  position: absolute;
  content: "";
  left: -58px;
  top: 0;
  height: 40px;
  background: url(../img/common/ico_q.svg) no-repeat center/contain;
  width: 48px;
}
.p-product .faq-section .faq-list > li .txt:not(:first-of-type)::after {
  content: none;
}
.p-product .faq-section .faq-list > li .txt + .txt {
  margin-top: 20px;
}
.p-product .faq-section .faq-list > li a:not([class]) {
  color: #8776D0;
  text-decoration: underline;
}
.p-product .faq-section .txt + .faq-list {
  margin-top: 20px;
}
.p-product .faq-section ul:not([class]) {
  list-style: disc;
  padding: 10px 0 10px 1.5em;
}
.p-product .faq-section ul:not([class]):last-of-type {
  padding-bottom: 0;
}
.p-product .faq-section ul + .txt {
  margin-top: 20px !important;
}
.p-product .review-section {
  margin-top: 60px;
}
.p-product .faq-section .c-ttl02 {
  padding: 6px 0 17px 30px;
  border-bottom: 1px dashed #777777;
}
.p-product .faq-section .c-ttl02:not(.js--toggle-btn) {
  cursor: auto;
}
.p-product .faq-section .c-ttl02::after {
  height: calc(100% - 9px);
}
.p-product .img-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  margin-top: 20px;
}
.p-product .img-box p {
  width: 50%;
  margin-top: 0;
}
.p-product .img-box .img {
  width: calc(50% - 50px);
  aspect-ratio: 550/350;
}
.p-product .img-box .img img,
.p-product .img-box .img video {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-product .product-box {
  margin-top: 30px;
  border: 1px solid #8776D0;
  border-radius: 10px;
  padding: 30px;
  display: grid;
  background: #fff;
  grid-template-rows: 27px 1fr;
  grid-template-columns: 280px 1fr;
}
.p-product .product-box + .product-box {
  margin-top: 20px;
}
.p-product .product-box .img-block {
  grid-row: 1/3;
}
.p-product .product-box .ttl {
  margin-top: 3px !important;
  font-size: 20px;
  padding-left: 90px;
  font-weight: bold;
}
.p-product .product-box .txt-block {
  padding-left: 90px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-product .product-box .txt-block .txt {
  margin-top: 16px;
}
.p-product .product-box .txt-block .price {
  line-height: 1.2;
  text-align: right;
  color: #C81A37;
  font-weight: bold;
  font-size: 20px;
  padding-right: 11px;
}
.p-product .product-box .txt-block .c-btn03 {
  margin-top: 23px;
  margin-left: auto;
  margin-right: 0;
}
.p-product .review-block {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-product .review-block .wrap-parts {
  width: 50%;
}
.p-product .review-block .c-ttl03 {
  margin-top: 0;
}
.p-product .review-block .c-btn03 {
  margin-left: auto;
  margin-right: 0;
}
.p-product .review-block + .review-block {
  margin-top: 60px;
}
.p-product .review-block .review-wrap {
  width: 100%;
}
.p-product .review-block .c-review-list {
  width: 100%;
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 20px;
}
.p-product .review-block .c-review-list > li {
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  width: calc(50% - 10px);
  padding: 20px 40px 20px 30px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.p-product .review-block .c-review-list .balloon {
  padding: 7px 12px 9px;
  border-radius: 20px;
  width: 150px;
  color: #fff;
  font-weight: bold;
  padding-left: 48px;
  position: relative;
}
.p-product .review-block .c-review-list .balloon::before {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  left: 18px;
  top: calc(100% - 5px);
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.p-product .review-block .c-review-list .balloon::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 12px;
  width: 26px;
  height: 26px;
  content: "";
  z-index: 1;
}
.p-product .review-block .c-review-list .balloon.good {
  background: #F9B21A;
}
.p-product .review-block .c-review-list .balloon.good::before {
  background: #F9B21A;
}
.p-product .review-block .c-review-list .balloon.good::after {
  background: url(../img/review/ico_good.svg) no-repeat center/contain;
}
.p-product .review-block .c-review-list .balloon.bad {
  background: #777777;
}
.p-product .review-block .c-review-list .balloon.bad::before {
  background: #777777;
}
.p-product .review-block .c-review-list .balloon.bad::after {
  background: url(../img/review/ico_bad.svg) no-repeat center/contain;
}
.p-product .review-block .c-review-list .head {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 10px;
}
.p-product .review-block .c-review-list .head .c-rate-wrap {
  margin-top: 5px;
}
.p-product .review-block .c-review-list .head .date {
  margin-top: 10px;
  display: block;
  line-height: 1;
  color: #737373;
}
.p-product .review-block .c-review-list .body {
  margin-top: 15px;
  height: 50px;
  overflow: hidden;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product .review-block .c-review-list .body.active {
  height: auto;
}
.p-product .review-block .c-review-list .body .txt {
  margin-top: 0;
}
.p-product .review-block .c-review-list .body .img {
  margin-top: 30px;
}
.p-product .review-block .c-review-list .body .reply {
  color: #999;
  text-align: right;
  margin-top: 10px;
}
.p-product .review-block .c-review-list .body img + img {
  margin-top: 10px;
}
.p-product .review-block .c-review-list .body img + video {
  margin-top: 10px;
}
.p-product .review-block .c-review-list .body video + img {
  margin-top: 10px;
}
.p-product .review-block .c-review-list .body video + video {
  margin-top: 10px;
}
.p-product .review-block .c-review-list .foot {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-product .review-block .c-review-list .foot .wrap {
  cursor: pointer;
  width: 148px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  gap: 5px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #333;
  padding: 5px 16px 6px 12px;
  font-size: 12px;
  border-radius: 15px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product .review-block .c-review-list .foot .wrap .ico {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 18px;
  height: 17px;
  background: #8776D0;
  -webkit-mask: url(../img/review/ico_nice.svg) no-repeat center/contain;
          mask: url(../img/review/ico_nice.svg) no-repeat center/contain;
}
.p-product .review-block .c-review-list .foot .wrap .num {
  font-size: 14px;
  padding-left: 5px;
  position: relative;
}
.p-product .review-block .c-review-list .foot .wrap .num::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 1px;
  background: #333;
  left: 0;
  top: 1px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product .review-block .c-review-list .foot .wrap .dots {
  width: 4px;
}
.p-product .review-block .c-review-list .foot .wrap.active {
  background: #8776D0;
  border-color: #8776D0;
  color: #fff;
}
.p-product .review-block .c-review-list .foot .wrap.active .ico {
  background: #fff;
}
.p-product .review-block .c-review-list .foot .wrap.active .num::after {
  background: #fff;
}
.p-product .review-block .c-review-list .foot .js--review-btn {
  line-height: 1.1875;
  color: #8776D0;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.p-product .js--result + .c-section {
  margin-top: 80px;
}
.p-product .c-table01 td a {
  color: #8776D0;
  text-decoration: underline;
}
.p-product .c-section .contents table:not([class]) th, .p-product .c-section .contents table:not([class]) td {
  text-align: left;
}

.p-product-detail > .inner-block {
  padding-top: 20px;
}
.p-product-detail .breadcrumb {
  margin-top: 0;
  margin-bottom: 20px;
}
.p-product-detail .breadcrumb a,
.p-product-detail .breadcrumb span {
  font-size: 16px;
}
.p-product-detail .product-anchor-menu {
  margin-top: 20px;
}
.p-product-detail .product-anchor-menu__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-product-detail .product-anchor-menu__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.p-product-detail .product-anchor-menu__link {
  border: 1px solid #8776D0;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 7px 4px 7px;
  text-align: center;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product-detail .product-anchor-menu__icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 26px;
  width: 26px;
}
.p-product-detail .product-anchor-menu__icon img {
  max-height: 26px;
  max-width: 26px;
}
.p-product-detail .product-anchor-menu__label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}
.p-product-detail .product-anchor-menu__arrow {
  border-right: 2px solid #8776D0;
  border-bottom: 2px solid #8776D0;
  height: 10px;
  width: 10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.p-product-detail .select-box select {
  background: #fff;
}
.p-product-detail .select-box select:disabled {
  background: #eaeaea;
}
.p-product-detail .c-balloon {
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  background: #8776D0;
  border-radius: 100px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 9px 10px;
  text-align: center;
  max-width: 400px;
  margin: auto;
  line-height: 1.2222222222;
}
.p-product-detail .c-balloon::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 14px solid #8776D0;
  border-bottom: 0;
  height: 14px;
  width: 20px;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto;
}
.p-product-detail .c-balloon.adjust {
  padding: 9px 30px;
  max-width: calc(100% - 40px);
  min-width: 400px;
  top: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  bottom: 100%;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}
.p-product-detail .c-cart-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 15px;
}
.p-product-detail .c-cart-wrap:not(.small) .c-btn03 {
  font-size: 20px;
  padding: 15px 14px 15px;
  width: 310px;
}
.p-product-detail .c-cart-wrap .num-wrap {
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 360px);
  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;
}
.p-product-detail .c-cart-wrap .unit {
  max-width: 100px;
  line-height: 1.25;
  font-size: 20px;
  font-weight: bold;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: 0;
}
.p-product-detail .c-cart-wrap .unit .num {
  line-height: 1;
  display: inline-block;
  font-size: 30px;
}
.p-product-detail .c-cart-wrap .unit.is-center {
  text-align: center;
}
.p-product-detail .c-cart-wrap .price-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 25px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.p-product-detail .c-cart-wrap .price-wrap .price {
  line-height: 1;
  color: #C81A37;
  font-size: 20px;
  font-weight: bold;
}
.p-product-detail .c-cart-wrap .price-wrap .price .num {
  display: inline-block;
  line-height: 1;
  font-size: 26px;
}
.p-product-detail .c-cart-wrap .price-wrap .price .expectation-point {
  color: #737373;
  font-weight: 400;
  font-size: 14px;
  display: block;
  text-align: right;
  margin-top: 5px;
}
.p-product-detail .c-cart-wrap .price-wrap .price .expectation-point .point-inn {
  display: inline-block;
  padding-left: 18px;
  position: relative;
}
.p-product-detail .c-cart-wrap .price-wrap .price .expectation-point .point-inn::before {
  background: url(../img/product/ico_expectation_point.svg) no-repeat center center/contain;
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  bottom: 0;
  top: 2px;
  left: 0;
  margin: auto;
}
.p-product-detail .c-cart-wrap + .c-cart-wrap {
  margin-top: 20px;
}
.p-product-detail .c-cart-wrap.small {
  gap: 10px;
}
.p-product-detail .c-cart-wrap.small .num-wrap {
  width: calc(100% - 80px);
}
.p-product-detail .c-cart-wrap.small .unit {
  font-size: 16px;
  width: 66px;
}
.p-product-detail .c-cart-wrap.small .unit:not(.is-center) {
  text-align: right;
}
.p-product-detail .c-cart-wrap.small .unit .num {
  font-size: 20px;
}
.p-product-detail .c-cart-wrap.small .price-wrap {
  gap: 15px;
}
.p-product-detail .c-cart-wrap.small .price-wrap .price {
  font-size: 16px;
}
.p-product-detail .c-cart-wrap.small .price-wrap .price .num {
  font-size: 20px;
}
.p-product-detail .c-cart-wrap.small .c-btn03 {
  width: 70px;
  padding: 6px 14px 7px;
}
.p-product-detail .c-cart-wrap.small .c-btn03 .ico {
  width: 32px;
  margin-right: 3px;
  height: 29px;
}
.p-product-detail .c-cart-wrap .c-btn03.js--restock-notify-btn {
  max-width: 100%;
  min-height: 44px;
  white-space: nowrap;
}
.p-product-detail .c-cart-wrap.small .c-btn03.js--restock-notify-btn {
  padding: 6px;
  font-size: 12px;
  line-height: 1.25;
  white-space: normal;
}
.p-product-detail .c-cart-wrap.sold-out.small .num-wrap {
  width: calc(100% - 90px);
}
.p-product-detail .c-cart-wrap.sold-out.small .price-wrap {
  gap: 5px;
}
.p-product-detail .c-cart-wrap.sold-out.small .c-btn03 {
  width: 80px;
  padding: 12px 5px 14px;
}
.p-product-detail .c-cart-wrap.sold-out .c-btn03 {
  padding: 19px 14px;
  background: #777777;
  border-color: #777777;
  pointer-events: none;
  font-weight: 500;
}
.p-product-detail .l-product {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 40px;
}
.p-product-detail .l-product .img-area {
  position: relative;
  max-width: 400px;
  min-width: 0;
  margin-top: 32px;
}
.p-product-detail .l-product .main-wrap {
  position: relative;
}
.p-product-detail .l-product .main-wrap .js--favorite {
  position: absolute;
  top: 21px;
  right: 21px;
  z-index: 10;
  width: 36px;
  height: 32px;
}
.p-product-detail .l-product .swiper-button-prev, .p-product-detail .l-product .swiper-button-next {
  color: #8776D0;
  width: 10px;
  height: 21px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-product-detail .l-product .swiper-button-prev::after, .p-product-detail .l-product .swiper-button-next::after {
  font-size: 25px;
}
.p-product-detail .l-product .swiper-button-prev {
  left: 15px;
}
.p-product-detail .l-product .swiper-button-next {
  right: 15px;
}
.p-product-detail .product-item-swiper .img::before,
.p-product-detail .thumb-wrapper .thumb-media::before {
  background: url(../img/common/logo_watermark.svg) no-repeat center center/contain;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  opacity: 0.3;
  pointer-events: none;
}
.p-product-detail .product-item-swiper {
  width: 100%;
}
.p-product-detail .product-item-swiper .swiper-wrapper {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-product-detail .product-item-swiper img,
.p-product-detail .product-item-swiper video {
  /*
  height: 100%;
  width: 100%;
  */
  height: 400px;
  width: 400px;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-product-detail .product-item-swiper .img {
  position: relative;
}
.p-product-detail .thumb-wrapper {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px 8px;
  margin-top: 27px;
}
.p-product-detail .thumb-wrapper .thumb-media {
  width: 72px;
  height: 72px;
  position: relative;
  cursor: pointer;
}
.p-product-detail .thumb-wrapper .thumb-media img,
.p-product-detail .thumb-wrapper .thumb-media video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-product-detail .swiper-pagination {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 100px;
  color: #fff;
  font-size: 18px;
  padding: 4px 8px 5px;
  letter-spacing: -0.05em;
  position: absolute;
  top: 21px;
  left: 21px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-product-detail .l-right .product-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px 15px;
  margin: 4px 0 12px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-product-detail .l-right .info {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
.p-product-detail .l-right .item-ttl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.2142857143;
  font-size: 28px;
  font-weight: bold;
}
.p-product-detail .l-right .review-link {
  color: #8776D0;
  font-size: 16px;
  font-weight: 400;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.p-product-detail .l-right .review-link .medium {
  font-weight: 500;
}
.p-product-detail .l-right .tag-list {
  margin-bottom: 10px;
}
.p-product-detail .l-right .tag-list li {
  background: #EBE6FF;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  padding: 5px 14px;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-product-detail .l-right .credit-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 0 0 20px;
  gap: 4px 24px;
}
.p-product-detail .l-right .credit-list > span {
  white-space: nowrap;
}
.p-product-detail .l-right .bg-red-box {
  background: #FFF0F0;
  border-radius: 10px;
  padding: 20px 26px;
}
.p-product-detail .l-right .bg-red-box p {
  font-size: 16px;
  font-weight: 400;
}
.p-product-detail .l-right .bg-red-box .red {
  color: #C81A37;
  font-weight: bold;
}
.p-product-detail .l-right .bg-red-box .restock-summary-list {
  margin-top: 8px;
  padding-left: 1.2em;
  font-size: 16px;
  font-weight: 400;
}
.p-product-detail .l-right .bg-red-box .restock-summary-list li {
  list-style: disc;
}
.p-product-detail .l-right .bg-red-box .restock-summary-list li + li {
  margin-top: 4px;
}
.p-product-detail .l-right .bg-red-box > details > summary {
  cursor: pointer;
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 8px;
}
.p-product-detail .l-right .bg-red-box .underline {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.p-product-detail .l-right .border-box {
  border: 1px solid #8776D0;
  border-radius: 10px;
  position: relative;
  margin-top: 40px;
}
.p-product-detail .l-right .border-box + .border-box {
  margin-top: 20px;
}
.p-product-detail .l-right .border-box + .border-box.in-balloon {
  margin-top: 40px;
}
.p-product-detail .l-right .border-box .inn {
  padding: 20px 30px 29px;
}
.p-product-detail .l-right .border-box .inn.bg-purple {
  background: #F6F4FF;
  padding-bottom: 20px;
}
.p-product-detail .l-right .border-box .inn.l-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 40px;
  width: 100%;
}
.p-product-detail .l-right .border-box .inn.l-wrap .wrap {
  width: calc((100% - 40px) / 2);
}
.p-product-detail .l-right .border-box .inn.l-wrap .item-name {
  margin-bottom: 18px;
}
.p-product-detail .l-right .border-box:not(.in-balloon) {
  overflow: hidden;
}
.p-product-detail .l-right .border-box.in-balloon .inn {
  padding-top: 40px;
}
.p-product-detail .l-right .border-box.in-balloon .inn > *:not(:first-child) {
  margin-top: 10px;
}
.p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li {
  font-size: 16px;
  font-weight: 400;
  position: relative;
  padding-left: 20px;
}
.p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li::before {
  background: #8776D0;
  border-radius: 100px;
  content: "";
  height: 10px;
  width: 10px;
  position: absolute;
  top: 8px;
  left: 0;
}
.p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li + li {
  margin-top: 10px;
}
.p-product-detail .l-right .border-box.bg-purple {
  border-color: #EBE6FF;
  margin-top: 40px;
}
.p-product-detail .l-right .border-box.bg-purple .inn {
  padding-top: 49px;
  background: #EBE6FF;
  border-radius: 10px;
}
.p-product-detail .l-right .c-dot-list li {
  font-size: 16px;
  font-weight: 400;
  position: relative;
  padding-left: 20px;
}
.p-product-detail .l-right .c-dot-list li::before {
  background: #8776D0;
  border-radius: 100px;
  content: "";
  height: 10px;
  width: 10px;
  position: absolute;
  top: 8px;
  left: 0;
}
.p-product-detail .l-right .c-dot-list li + li {
  margin-top: 10px;
}
.p-product-detail .l-right .bg-ttl {
  background: #8776D0;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 13px 10px 14px;
  line-height: 1.25;
  text-align: center;
}
.p-product-detail .l-right .item-name {
  background: #fff;
  border: 1px solid #737373;
  border-radius: 10px;
  padding: 5px 10px;
  text-align: center;
  line-height: 1.1875;
}
.p-product-detail .l-right .item-name.purple {
  border-color: #8776D0;
  padding: 3px 50px;
  font-size: 18px;
  line-height: 1.2222222222;
}
.p-product-detail .l-right .slash-balloon {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  margin: 10px auto 13px;
  padding-left: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-product-detail .l-right .slash-balloon::before, .p-product-detail .l-right .slash-balloon::after {
  background: #F9B21A;
  content: "";
  width: 1px;
  height: 31px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-product-detail .l-right .slash-balloon::before {
  left: -10px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}
.p-product-detail .l-right .slash-balloon::after {
  right: -10px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}
.p-product-detail .l-right .slash-balloon .inn {
  padding: 0 9px 0 0;
}
.p-product-detail .l-right .features-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.p-product-detail .l-right .features-list li {
  background: #fff;
  border-radius: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px 10px 10px;
  text-align: center;
}
.p-product-detail .l-right .features-list .ico {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 80px;
}
.p-product-detail .l-right .features-list .ico img {
  height: 100%;
}
.p-product-detail .l-right .features-list .ttl {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #8776D0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-top: 10px;
}
.p-product-detail .recommend-box {
  background: #F6F4FF;
  border-radius: 10px;
  padding: 20px 15px;
  margin-top: 15px;
  margin-right: auto;
  margin-left: auto;
}
.p-product-detail .recommend-box + .c-cart-wrap {
  margin-top: 30px;
}
.p-product-detail .recommend-box .slash-balloon {
  padding-left: 5px;
  margin: 0 auto 20px !important;
}
.p-product-detail .recommend-box .slash-balloon .inn {
  padding-right: 0;
  font-size: 14px;
}
.p-product-detail .recommend-box .slash-balloon::before {
  left: -20px;
  height: 20px;
}
.p-product-detail .recommend-box .slash-balloon::after {
  right: -20px;
  height: 20px;
}
.p-product-detail .recommend-box .c-btn03 {
  width: 100%;
}
.p-product-detail .recommend-box .c-btn03.yellow.c-arrow {
  padding: 8px 40px 8px 20px;
  line-height: 1.5;
  font-size: 16px;
  margin-left: auto;
  margin-right: auto;
}
.p-product-detail .recommend-box .txt {
  color: #777777;
  font-size: 14px;
  font-weight: 400;
  margin-top: 10px;
}
.p-product-detail .recommend-box .box + .box {
  margin-top: 17px;
}
.p-product-detail .update-txt {
  font-size: 12px;
}
.p-product-detail .count-txt {
  line-height: 1;
  margin-top: 10px;
  font-size: 16px;
  font-weight: bold;
}
.p-product-detail .purchase-txt {
  line-height: 1;
  margin-top: 12px;
  font-size: 15px;
}
.p-product-detail .review-box {
  background: #FFFAE8;
  border-radius: 10px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: clamp(20px, 100vw - 1170px, 110px);
  padding: 34px 40px 30px 50px;
  margin-top: 20px;
}
.p-product-detail .review-box .l-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 50px;
  margin-bottom: 28px;
}
.p-product-detail .review-box .l-wrap .inn {
  color: #737373;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2222222222;
}
.p-product-detail .review-box .l-wrap .inn + .inn {
  position: relative;
}
.p-product-detail .review-box .l-wrap .inn + .inn::before {
  background: #8776D0;
  content: "";
  height: 20px;
  width: 1px;
  position: absolute;
  top: 0;
  left: -34px;
  bottom: 0;
  margin: auto;
}
.p-product-detail .review-box .star-list li {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.p-product-detail .review-box .star-list li + li {
  margin-top: 15px;
}
.p-product-detail .review-box .star-list .star-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 220px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 18px;
}
.p-product-detail .review-box .star-list .star-wrap .ref {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.p-product-detail .review-box .star-list .star-wrap .ref.no-hover {
  text-decoration: none;
}
.p-product-detail .review-box .star-list .star-wrap .ref.active {
  font-weight: bold;
  -webkit-text-decoration-color: #8776D0;
          text-decoration-color: #8776D0;
}
.p-product-detail .review-box .star-list .bar-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 270px;
}
.p-product-detail .review-box .star-list .bar-wrap .bar {
  background: #D9D9D9;
  display: block;
  height: 20px;
  width: calc(100% - 60px);
}
.p-product-detail .review-box .star-list .bar-wrap .collar {
  background: #FFD220;
  height: 100%;
  width: 0;
}
.p-product-detail .review-box .star-list .percent {
  width: 60px;
  text-align: right;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2222222222;
  margin-left: 10px;
}
.p-product-detail .review-box .star-list .percent .num {
  font-size: 22px;
  line-height: 1;
}
.p-product-detail .review-box .c-rate-wrap {
  width: 135px;
}
.p-product-detail .review-box .c-rate-wrap .star {
  width: 25px;
  height: 25px;
}
.p-product-detail .review-box .graph-wrap {
  margin-top: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 31px;
}
.p-product-detail .review-box .graph-wrap .balloon {
  background: #fff;
  border: 1px solid #FFD220;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 400;
  padding: 22px 20px;
  position: relative;
}
.p-product-detail .review-box .graph-wrap .balloon::before, .p-product-detail .review-box .graph-wrap .balloon::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -17px;
  width: 17px;
  height: 17px;
  margin: auto;
}
.p-product-detail .review-box .graph-wrap .balloon::before {
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 17px solid #FFD220;
  border-left: 0;
}
.p-product-detail .review-box .graph-wrap .balloon::after {
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 17px solid #fff;
  border-left: 0;
  left: -15px;
}
.p-product-detail .review-box .graph-wrap .balloon .large {
  font-size: 20px;
  font-weight: bold;
}
.p-product-detail .c-circle-graph {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 30px;
  font-weight: 400;
  width: 220px;
  height: 220px;
  margin: 0 auto;
  border-radius: 50%;
  background-image: radial-gradient(#fff 45%, transparent 45%), conic-gradient(#ffd220 50%, #d9d9d9 50% 100%);
}
.p-product-detail .c-circle-graph .num {
  font-size: 50px;
}
.p-product-detail .c-circle-graph .unit {
  position: relative;
  top: 10px;
}
.p-product-detail .review-block {
  margin-top: 50px;
}
.p-product-detail .review-block .c-review-list .head {
  margin-top: 0;
}
.p-product-detail .c-paging-area {
  margin-top: 50px;
}
.p-product-detail .category-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}
.p-product-detail .category-list a {
  display: block;
  line-height: 1;
  background: #EBE6FF;
  border: 1px solid #EBE6FF;
  border-radius: 100px;
  padding: 3px 10px;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-product-detail .category-list a.no-collar {
  background: #fff;
}
.p-product-detail .category-list + .c-text-link {
  margin-top: 30px;
}
.p-product-detail .category-list + p {
  margin-top: 20px;
}
.p-product-detail .faq-section .faq-list {
  margin-top: 10px;
}
.p-product-detail .faq-section .c-ttl02 {
  padding: 16px 0 17px 30px;
}
.p-product-detail .faq-section .c-ttl02::after {
  height: calc(100% - 19px);
}
.p-product-detail .faq-section h3 {
  margin-top: 30px;
}
.p-product-detail .faq-section a {
  color: #8776D0;
  text-decoration: underline;
}
.p-product-detail .js--result + .c-section {
  margin-top: 40px;
}
.p-product-detail .c-section.wide {
  margin-top: 50px !important;
}
.p-product-detail .link-txt.left {
  text-align: left;
  margin-top: 35px;
}
.p-product-detail .c-modal .modal__cont {
  -webkit-box-shadow: 0 2px 15px rgba(51, 51, 51, 0.25);
          box-shadow: 0 2px 15px rgba(51, 51, 51, 0.25);
}
.p-product-detail .c-modal .modal__close {
  height: 20px;
  width: 20px;
  top: 20px;
  right: 20px;
}
.p-product-detail .c-modal .modal__close::before, .p-product-detail .c-modal .modal__close::after {
  background: #333;
  border-radius: 2px;
}
.p-product-detail .outer-review-btn {
  margin: 30px auto 0;
}
.p-product-detail .outer-review-btn .c-btn03 {
  margin-left: auto;
  margin-right: auto;
}
.p-product-detail .fixed-btn-wrap {
  -webkit-transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  pointer-events: none;
  opacity: 0;
  position: fixed;
  z-index: 990;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: auto;
}
.p-product-detail .fixed-btn-wrap .c-btn03 {
  margin-top: 0;
  -webkit-box-shadow: 0 8px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 6px rgba(0, 0, 0, 0.2);
}
.p-product-detail .fixed-btn-wrap.active {
  opacity: 1;
  pointer-events: visible;
}
.p-product-detail .toc-area {
  -webkit-filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
  display: grid;
  grid-template-columns: auto 1fr;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: fixed;
  bottom: 25px;
  right: -300px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 989;
}
.p-product-detail .toc-area.is-open {
  right: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 991;
}
.p-product-detail .toc-btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #8776D0;
  background: #8776D0;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  bottom: 160px;
  left: 10px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 10px 0 0 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px 12px 10px 8px;
  z-index: 992;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product-detail .toc-btn .inn {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.1666666667;
  text-align: center;
  letter-spacing: 0.2em;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product-detail .toc-wrap {
  background: #fff;
  border-radius: 0 0 0 10px;
  max-width: 300px;
  max-height: 300px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.p-product-detail .toc-wrap .toc-list {
  counter-reset: number 0;
}
.p-product-detail .toc-wrap .toc-list li + li {
  border-top: 1px dashed #D9D9D9;
}
.p-product-detail .toc-wrap .toc-list li:first-child a {
  padding-top: 18px;
  padding-bottom: 18px;
}
.p-product-detail .toc-wrap .toc-list a {
  color: #8776D0;
  display: block;
  font-size: 16px;
  font-weight: 400;
  padding: 13px 14px 13px 30px;
}
.p-product-detail .toc-wrap .toc-list a .inn {
  display: inline-block;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product-detail .toc-wrap .toc-list a .inn::before {
  counter-increment: number 1;
  content: counter(number) ".";
}
.p-product-detail .toc-bg {
  background: rgba(0, 0, 0, 0.2);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 988;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-product-detail .toc-bg.is-open {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  opacity: 1;
  visibility: visible;
  pointer-events: visible;
  z-index: 990;
}
.p-product-detail ~ .c-cat-modal-wrap {
  display: none;
}
.p-product-detail .sales-note {
  text-align: right;
  margin: 0 0 10px;
}
.p-product-detail .sales-note:not(.has-html-tag) {
  color: #aaa;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-maker .alphabet-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 7px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 40px;
}
.p-maker .alphabet-list > li {
  width: 44px;
  height: 44px;
}
.p-maker .alphabet-list > li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 22px;
  border: 1px solid #8776D0;
  font-size: 20px;
  color: #8776D0;
  background: #fff;
}
.p-maker .alphabet-list > li.wide {
  width: 78px;
}
.p-maker .maker-list {
  margin-top: 50px;
}
.p-maker .maker-list > li + li {
  margin-top: 50px;
}
.p-maker .maker-list-inner {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 40px 20px;
}
.p-maker .maker-list-inner > li {
  max-width: 345px;
  width: calc((100% - 40px) / 3);
}
.p-maker .maker-list-inner > li > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.p-maker .maker-list-inner > li .img {
  width: 100px;
  height: 100%;
}
.p-maker .maker-list-inner > li .img > img {
  width: 100%;
}
.p-maker .maker-list-inner > li .txt-block {
  width: calc(100% - 110px);
}
.p-maker .maker-list-inner > li .txt-block .ttl {
  font-size: 14px;
  color: #8776D0;
  font-weight: bold;
  line-height: 1.2142857143;
}
.p-maker .maker-list-inner > li .txt-block .ttl .en,
.p-maker .maker-list-inner > li .txt-block .ttl .ja {
  display: block;
}
.p-maker .maker-list-inner > li .txt-block .ttl .en + .ja {
  margin-top: 7px;
}
.p-maker .maker-list-inner > li .txt-block .txt {
  font-size: 12px;
  margin-top: 17px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.p-maker .c-ttl03 {
  margin-top: 0;
  font-size: 26px;
  line-height: 1;
  width: 100%;
  background: #F6F4FF;
  color: #8776D0;
  padding-left: 25px;
}

.p-maker-detail .c-ttl01 {
  font-size: 24px;
}
.p-maker-detail .c-ttl01 .ja {
  font-size: 18px;
  display: block;
  margin-top: 10px;
  line-height: 1.2222222222;
}
.p-maker-detail .info-block {
  margin-top: 45px;
}
.p-maker-detail .info-block .txt {
  border-radius: 10px;
  margin-top: 40px;
  padding: 20px 15px;
  background: #F6F4FF;
}
.p-maker-detail .top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
}
.p-maker-detail .top .img {
  width: 250px;
}
.p-maker-detail .top .img img {
  width: 100%;
}
.p-maker-detail .top .data-list {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: calc(100% - 290px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-maker-detail .top .data-list dt {
  width: 65px;
  font-weight: bold;
}
.p-maker-detail .top .data-list dd {
  width: calc(100% - 65px);
  padding-left: 2px;
}
.p-maker-detail .top .data-list dt,
.p-maker-detail .top .data-list dd {
  line-height: 1.1875;
}
.p-maker-detail .top .data-list dt:nth-child(n+3),
.p-maker-detail .top .data-list dd:nth-child(n+3) {
  margin-top: 16px;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-event .event-list {
  max-width: 800px;
  margin: 35px auto 0;
}
.p-event .event-list > li > a {
  width: 100%;
  height: 100%;
  display: block;
}
.p-event .event-list > li .thumb {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  border-radius: 10px;
}
.p-event .event-list > li .thumb img {
  border-radius: 10px;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-event .event-list > li .info {
  margin-top: 18px;
}
.p-event .event-list > li .ttl {
  color: #8776D0;
  font-size: 20px;
  line-height: 1.2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.p-event .event-list > li .ttl::after {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  background: #8776D0;
  height: 1px;
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  content: "";
}
.p-event .event-list > li .date {
  margin-top: 13px;
  line-height: 1;
}
.p-event .event-list > li .date .end {
  font-weight: bold;
  color: #C81A37;
}
.p-event .event-list > li .txt {
  margin-top: 18px;
}
.p-event .event-list > li + li {
  margin-top: 40px;
}

.p-event-detail .home-front .top-banner-section .main-swiper {
  padding-bottom: 0;
}
.p-event-detail .home-front .top-banner-section .main-swiper .swiper-button-next {
  right: 0;
  top: 0;
}
.p-event-detail .home-front .top-banner-section .main-swiper .swiper-button-prev {
  left: 0;
  top: 0;
}
.p-event-detail.p-static .index-wrap {
  margin-bottom: 80px;
}

#wrapper .p-event-detail .h1-ttl-wrap {
  margin-top: 40px;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-point .inner {
  margin: 0 auto;
  max-width: 480px;
}
.p-point .top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-point .top .ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
}
.p-point .top .ttl .ico {
  width: 50px;
  height: 50px;
}
.p-point .top .ttl .note {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.p-point .top .ttl .min {
  font-size: 14px;
  font-weight: 400;
}
.p-point .top .num {
  font-size: 26px;
}
.p-point .top .num .large {
  color: #8776D0;
  font-weight: bold;
}
.p-point .top .num .large .unit {
  font-weight: 400;
  font-size: 20px;
}
.p-point .top .num .min {
  font-size: 14px;
  display: inline-block;
  margin-left: 5px;
}
.p-point .point-list {
  margin-top: 30px;
}
.p-point .point-list > li {
  background: #F5F5F5;
  padding: 10px 30px;
}
.p-point .point-list > li .container {
  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;
}
.p-point .point-list > li:nth-child(2n) {
  background: #fff;
}
.p-point .point-list > li .left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.p-point .point-list > li .date {
  line-height: 1;
  font-size: 14px;
}
.p-point .point-list > li .status {
  background: #777777;
  line-height: 1;
  display: inline-block;
  padding: 2px 5px 4px;
  font-size: 14px;
  border-radius: 3px;
  font-weight: 500;
  color: #fff;
  position: relative;
  top: 1px;
}
.p-point .point-list > li .num-wrap {
  line-height: 1;
  text-align: right;
}
.p-point .point-list > li .num {
  font-weight: bold;
  font-size: 18px;
  line-height: 1;
}
.p-point .point-list > li .unit {
  font-size: 14px;
  line-height: 1;
  font-weight: 400;
}
.p-point .point-list > li .ex {
  font-size: 13px;
  display: block;
  text-align: right;
}
.p-point .point-list > li.purple .num, .p-point .point-list > li.purple .unit {
  color: #8776D0;
}
.p-point .point-list > li.purple .status {
  background: #8776D0;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-contact .txt {
  margin-top: 25px;
}
.p-contact .txt + .txt {
  margin-top: 0;
}
.p-contact .note-box {
  margin-top: 60px;
  padding: 25px 20px;
  background: #F6F4FF;
  border-radius: 10px;
}
.p-contact .note-box .note {
  margin-top: 15px;
  font-size: 14px;
}
.p-contact .note-box .lead {
  gap: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-contact .link-txt .txt {
  margin-top: 0;
}
.p-contact .link-wrap {
  color: #8776D0;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.p-contact-finish {
  padding-bottom: 80px;
}
.p-contact-finish .txt-box .txt.wide {
  margin-left: -5px;
  margin-right: -5px;
  width: calc(100% + 10px);
}
.p-contact-finish .wrap {
  margin-top: 60px;
  text-align: center;
}
.p-contact-finish .wrap .ico {
  margin: 0 auto 24px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-contact-finish .wrap .c-ttl01 {
  margin-top: 0;
}
.p-contact-finish .wrap .c-btn03 {
  margin: 71px auto 0;
}
.p-contact-finish .wrap .c-btn03.back-top {
  font-size: 18px;
  width: 295px;
  margin: 56px auto 0;
  max-width: 100%;
}

.favorite-li {
  position: relative;
}

.c-contact-wrap {
  margin-top: 50px;
}
.c-contact-wrap.favorite-check-wrap {
  margin-top: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}
.c-contact-wrap .q-wrap + .q-wrap, .c-contact-wrap .q-wrap + .q-outer-wrap {
  margin-top: 60px;
}
.c-contact-wrap .q-wrap.double + .double {
  margin-top: 30px;
}
.c-contact-wrap .q-wrap.double .label-area .required-mark {
  top: 48px;
}
.c-contact-wrap .q-wrap .required-mark {
  position: absolute;
  font-size: 14px;
  line-height: 1.4285714286;
  font-weight: 400;
  top: 2px;
  right: 0;
  background: #C81A37;
  border-radius: 2px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: #fff;
  display: inline-block;
  padding: 0 4px;
}
.c-contact-wrap .q-wrap .required-mark.filled {
  width: 36px;
  text-align: center;
  line-height: 1;
  background: #fff;
  color: #C81A37;
  padding: 2px 4px;
  border: 1px solid #C81A37;
}
.c-contact-wrap .q-wrap .mail-note {
  color: #C81A37;
  font-weight: bold;
  line-height: 1.1875;
  margin-top: 15px;
  padding-left: 350px;
}
.c-contact-wrap .q-wrap .note {
  display: block;
  font-size: 16px;
  font-weight: 400;
  margin-top: 20px;
  color: #777777;
  padding-left: 350px;
}
.c-contact-wrap .q-wrap .note.min {
  line-height: 1.2142857143;
  font-size: 14px;
}
.c-contact-wrap .q-wrap .label-note {
  display: block;
  font-size: 16px;
  font-weight: 400;
  margin-top: 10px;
  color: #333;
}
.c-contact-wrap .q-wrap .container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.c-contact-wrap .q-wrap .label-area {
  line-height: 1.2;
  width: 330px;
  position: relative;
  color: #8776D0;
  font-weight: bold;
  font-size: 20px;
}
.c-contact-wrap .q-wrap .label-area .contact-label {
  cursor: auto;
}
.c-contact-wrap .q-wrap .error-txt {
  color: #C81A37;
  font-weight: bold;
  line-height: 1.1875;
  margin-top: 15px;
  display: none;
  padding-left: 350px;
}
.c-contact-wrap .q-wrap .input-area {
  width: calc(100% - 350px);
}
.c-contact-wrap .q-wrap .input-area.ex-mini input, .c-contact-wrap .q-wrap .input-area.ex-mini .select-box {
  max-width: 180px;
}
.c-contact-wrap .q-wrap .input-area.more-mini input, .c-contact-wrap .q-wrap .input-area.more-mini .select-box {
  max-width: 100px;
}
.c-contact-wrap .q-wrap .input-area.mini input, .c-contact-wrap .q-wrap .input-area.mini .select-box {
  max-width: 405px;
}
.c-contact-wrap .q-wrap .input-area.twin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
}
.c-contact-wrap .q-wrap .input-area.twin .half-box {
  width: 50%;
}
.c-contact-wrap .q-wrap .input-area.twin .half-box.q-wrap {
  margin-top: 0 !important;
}
.c-contact-wrap .q-wrap .input-area.twin .half-box input {
  width: 100%;
}
.c-contact-wrap .q-wrap .input-area.twin .half-box .error-txt {
  padding-left: 0;
}
.c-contact-wrap .q-wrap .input-area.triple {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 66px;
}
.c-contact-wrap .q-wrap .input-area.triple .select-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0;
  max-width: 130px;
}
.c-contact-wrap .q-wrap .input-area.triple .select-box::before {
  right: 17px;
}
.c-contact-wrap .q-wrap .input-area.triple .select-box::after {
  right: 6px;
}
.c-contact-wrap .q-wrap .input-area.triple .select-box .unit {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -26px;
  margin: auto;
}
.c-contact-wrap .q-wrap .input-area .lead {
  display: block;
  font-size: 18px;
  line-height: 1;
  margin-bottom: 14px;
  line-height: 1.2222222222;
  color: #8776D0;
}
.c-contact-wrap .q-wrap .input-area .txt-unit {
  display: inline-block;
  margin-left: 10px;
  position: relative;
  top: 10px;
}
.c-contact-wrap .q-wrap .input-area .result {
  font-size: 20px;
}
.c-contact-wrap .q-wrap .passwd-input {
  position: relative;
}
.c-contact-wrap .q-wrap .passwd-input.mini {
  max-width: 405px;
}
.c-contact-wrap .q-wrap .passwd-input .ico {
  cursor: pointer;
  z-index: 1;
  position: absolute;
  right: 20px;
  top: 0;
  width: 28px;
  bottom: 0;
  margin: auto;
  background: url(../img/contact/eye.svg) no-repeat center/contain;
}
.c-contact-wrap .q-wrap .passwd-input .ico.visible {
  background: url(../img/contact/eye_close.svg) no-repeat center/contain;
}
.c-contact-wrap .q-wrap .passwd-input input {
  padding-right: 55px !important;
}
.c-contact-wrap input[type=radio], .c-contact-wrap input[type=checkbox] {
  width: 0 !important;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox]),
.c-contact-wrap select,
.c-contact-wrap textarea {
  background: #fff;
  border-radius: 5px;
  padding: 9px 10px;
  width: 100%;
  border: 1px solid #777777;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox]).errored,
.c-contact-wrap select.errored,
.c-contact-wrap textarea.errored {
  border-color: #C81A37;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox])::-webkit-input-placeholder, .c-contact-wrap select::-webkit-input-placeholder, .c-contact-wrap textarea::-webkit-input-placeholder {
  color: #A9A9A9;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox])::-moz-placeholder, .c-contact-wrap select::-moz-placeholder, .c-contact-wrap textarea::-moz-placeholder {
  color: #A9A9A9;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox]):-ms-input-placeholder, .c-contact-wrap select:-ms-input-placeholder, .c-contact-wrap textarea:-ms-input-placeholder {
  color: #A9A9A9;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox])::-ms-input-placeholder, .c-contact-wrap select::-ms-input-placeholder, .c-contact-wrap textarea::-ms-input-placeholder {
  color: #A9A9A9;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox])::placeholder,
.c-contact-wrap select::placeholder,
.c-contact-wrap textarea::placeholder {
  color: #A9A9A9;
}
.c-contact-wrap input:not([type=radio]):not([type=checkbox]):disabled,
.c-contact-wrap select:disabled,
.c-contact-wrap textarea:disabled {
  color: #777777;
  background: #F5F5F5;
  border: none;
}
.c-contact-wrap input[type=file] {
  padding: 0 !important;
}
.c-contact-wrap textarea {
  padding: 19px 20px;
  border-radius: 10px;
}
.c-contact-wrap select {
  line-height: 1.5;
  font-size: 16px;
  color: transparent;
  padding: 9px 45px 9px 10px;
}
.c-contact-wrap select.has-placeholder {
  color: #a9a9a9;
}
.c-contact-wrap select.colored {
  color: #333;
}
.c-contact-wrap select option {
  color: #333;
}
.c-contact-wrap select:disabled {
  background: #D9D9D9;
  cursor: auto;
}
.c-contact-wrap .radio-wrap .input-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px 40px;
}
.c-contact-wrap .radio-wrap label {
  line-height: 1.5;
  position: relative;
  padding-left: 30px;
  line-height: 1;
}
.c-contact-wrap .radio-wrap label::before, .c-contact-wrap .radio-wrap label::after {
  content: "";
  position: absolute;
}
.c-contact-wrap .radio-wrap label::before {
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #777777;
  border-radius: 15px;
  background: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-contact-wrap .radio-wrap label::after {
  top: 5px;
  left: 5px;
  width: 14px;
  height: 14px;
  border-radius: 15px;
  background: #AEA2E6;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-contact-wrap .radio-wrap label:has(input:checked)::after {
  opacity: 1;
}
.c-contact-wrap .radio-wrap label:has(input:checked)::before {
  background: #fff;
}
.c-contact-wrap .select-box {
  width: 100%;
}
.c-contact-wrap .select-box + .select-box {
  margin-top: 20px;
}
.c-contact-wrap .select-box option.hide {
  display: none;
}
.c-contact-wrap .select-box::after, .c-contact-wrap .select-box::before {
  background: #8776D0;
  width: 16px;
  right: 16px;
}
.c-contact-wrap .select-box::before {
  right: 27px;
}
.c-contact-wrap .select-box .star-disp {
  pointer-events: none;
  position: absolute;
  background: #fff;
  top: 9px;
  left: 10px;
  width: calc(100% - 55px);
  height: calc(100% - 18px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 5px;
}
.c-contact-wrap .check-wrap label {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  line-height: 1.2142857143;
}
.c-contact-wrap .check-wrap label .label {
  padding-left: 44px;
  display: block;
}
.c-contact-wrap .check-wrap label::before {
  position: absolute;
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid #777777;
  border-radius: 4px;
  left: 0;
  top: 0;
}
.c-contact-wrap .check-wrap label::after {
  border-bottom: 3px solid #8776D0;
  border-left: 3px solid #8776D0;
  width: 13px;
  height: 8px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  content: "";
  top: 6px;
  left: 6px;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-contact-wrap .check-wrap label:has(input:checked)::after {
  opacity: 1;
}
.c-contact-wrap .file-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
  gap: 20px;
}
.c-contact-wrap .file-container input[type=file] {
  opacity: 0;
  pointer-events: none;
  height: 0;
}
.c-contact-wrap .file-container .each-delete-btn {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.c-contact-wrap .file-container .unit {
  width: 100%;
}
.c-contact-wrap .file-container .unit .error-txt {
  padding-left: 0;
}
.c-contact-wrap .file-container .unit .file-preview-wrap .file-preview-item img,
.c-contact-wrap .file-container .unit .file-preview-wrap .file-preview-item video {
  -o-object-fit: contain !important;
     object-fit: contain !important;
  aspect-ratio: 1/1;
}
.c-contact-wrap .file-container .container {
  width: 100%;
}
.c-contact-wrap .file-container .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 5px;
  border: 1px solid #8776D0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-contact-wrap .file-container .wrap.errored {
  border-color: #C81A37;
}
.c-contact-wrap .file-container .wrap label {
  line-height: 1;
  padding: 12px 20px;
  display: block;
  width: 180px;
  background: #8776D0;
  font-size: 18px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-contact-wrap .file-container .wrap label input {
  width: 0;
}
.c-contact-wrap .file-container .wrap label img {
  width: 26px;
  margin-right: 10px;
}
.c-contact-wrap .file-container .wrap .name {
  padding: 12px 20px;
  width: calc(100% - 180px);
  color: #9F9F9F;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  cursor: pointer;
}
.c-contact-wrap .file-container .wrap .name {
  display: none;
}
.c-contact-wrap .file-container .wrap.uploaded {
  width: calc(100% - 100px);
}
.c-contact-wrap .file-container .wrap.uploaded .name {
  color: #333;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.c-contact-wrap .file-add-btn-wrap {
  margin-right: 0;
  margin-left: auto;
  margin-top: 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: none;
}
.c-contact-wrap .file-add-btn {
  color: #8776D0;
  font-weight: bold;
  border: 1px solid #8776D0;
  border-radius: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 4px 9px 5px;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-contact-wrap .file-add-btn.hide {
  background: #D9D9D9;
  color: #fff;
  border-color: #D9D9D9;
  pointer-events: none;
}
.c-contact-wrap .file-add-btn.hide .ico {
  background: #fff;
}
.c-contact-wrap .file-add-btn.hide .ico::after, .c-contact-wrap .file-add-btn.hide .ico::before {
  background: #D9D9D9;
}
.c-contact-wrap .file-add-btn .ico {
  width: 18px;
  height: 18px;
  background: #8776D0;
  border-radius: 50%;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-contact-wrap .file-add-btn .ico::after, .c-contact-wrap .file-add-btn .ico::before {
  background: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 10px;
  height: 1px;
  position: absolute;
  content: "";
}
.c-contact-wrap .file-add-btn .ico::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.c-contact-wrap .file-delete-btn {
  width: 80px;
  background: #8776D0;
  border-radius: 5px;
  color: #fff;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: none;
}
.c-contact-wrap .file-delete-btn .ico {
  width: 20px;
  height: 20px;
  position: relative;
}
.c-contact-wrap .file-delete-btn .ico::before, .c-contact-wrap .file-delete-btn .ico::after {
  position: absolute;
  content: "";
  background: #fff;
  border-radius: 2px;
  height: 2px;
  width: 15px;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-contact-wrap .file-delete-btn .ico::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-contact-wrap .file-delete-btn.active {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-contact-wrap .submit-btn-wrap {
  margin-top: 60px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-contact-wrap .submit-btn-wrap .wrap .btn-ttl {
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}
.c-contact-wrap .submit-btn-wrap .wrap + .wrap {
  margin-top: 40px;
}
.c-contact-wrap .social-login-btn-wrap.gap20 {
  gap: 20px !important;
}
.c-contact-wrap .q-outer-wrap + .q-wrap {
  margin-top: 60px;
}
.c-contact-wrap.part-confirm {
  padding-bottom: 45px;
}
.c-contact-wrap.part-confirm .q-wrap + .q-wrap {
  margin-top: 45px;
}
.c-contact-wrap.part-confirm .img-result {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.c-contact-wrap.part-confirm .img-result .img {
  width: 140px;
  height: 140px;
}
.c-contact-wrap.part-confirm .img-result .img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-form-flow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}
.c-form-flow > li {
  width: 25%;
  height: 50px;
  position: relative;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 500;
  font-size: 18px;
  position: relative;
  border-radius: 0 25px 25px 0;
  padding: 0 25px 1px 10px;
}
.c-form-flow > li:not(:first-child)::after {
  width: 35px;
  height: 100%;
  right: 100%;
  top: 0;
  position: absolute;
  content: "";
}
.c-form-flow > li .num {
  background: #fff;
  margin-right: 10px;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  padding-bottom: 1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-form-flow > li .phase {
  text-align: center;
  max-width: calc(100% - 40px);
  line-height: 1.2;
  display: block;
}
.c-form-flow > li:first-child {
  width: calc(25% + 8px);
  background: #CBBFFF;
  z-index: 4;
  border-radius: 10px 25px 25px 10px;
}
.c-form-flow > li:first-child .num {
  color: #CBBFFF;
}
.c-form-flow > li:nth-child(2) {
  background: #B8A8FE;
  z-index: 3;
}
.c-form-flow > li:nth-child(2) .num {
  color: #B8A8FE;
}
.c-form-flow > li:nth-child(2)::after {
  background: #B8A8FE;
}
.c-form-flow > li:nth-child(3) {
  background: #A694F6;
  z-index: 2;
}
.c-form-flow > li:nth-child(3) .num {
  color: #A694F6;
}
.c-form-flow > li:nth-child(3)::after {
  background: #A694F6;
}
.c-form-flow > li:last-child {
  width: calc(25% - 8px);
  background: #8776D0;
  z-index: 1;
}
.c-form-flow > li:last-child .num {
  color: #8776D0;
}
.c-form-flow > li:last-child::after {
  background: #8776D0;
}
.c-form-flow > li.current {
  background: #F9B21A;
}
.c-form-flow > li.current .num {
  color: #F9B21A;
}
.c-form-flow > li.current::after {
  background: #F9B21A;
}
.c-form-flow + .c-ttl011 {
  margin-top: 35px;
}
.c-form-flow + .head-ttl-block {
  margin-top: 35px;
}
.c-form-flow + .head-ttl-block .c-ttl01 {
  margin-top: 0;
}
.c-form-flow.three-phase > li {
  width: 33.3333333333%;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-faq .search-input-area {
  margin: 40px auto 0;
  width: 600px;
  border-radius: 5px;
  border: 1px solid #D9D9D9;
}
.p-faq .search-input-area input {
  padding: 0 64px 1px 14px;
  font-size: 16px;
  line-height: 41px;
}
.p-faq .search-input-area .ico {
  width: 44px;
  height: 44px;
  right: 8px;
  top: 2px;
}
.p-faq .search-input-area .ico img {
  width: 20px;
}
.p-faq .error-txt {
  color: #EA3345;
  display: none;
  font-weight: bold;
  margin: 0 auto;
  max-width: 600px;
}
.p-faq .anchor-list {
  margin-top: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.2;
  gap: 30px 20px;
  font-weight: bold;
  color: #8776D0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-faq .anchor-list > li {
  font-size: 20px;
  width: calc((100% - 40px) / 3);
}
.p-faq .faq-list {
  margin-top: 55px;
  counter-reset: num;
}
.p-faq .faq-list > li + li {
  border-top: 1px dashed #D9D9D9;
}
.p-faq .faq-list > li .q-row {
  padding: 18px 40px 18px 100px;
  position: relative;
  cursor: pointer;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-faq .faq-list > li .q-row::after {
  background: #8776D0;
  counter-increment: num;
  color: #fff;
  position: absolute;
  content: "Q" counter(num) ".";
  border-radius: 15px;
  top: 15px;
  left: 40px;
  height: 30px;
  line-height: 1;
  padding: 6px 12px 8px;
  text-align: center;
}
.p-faq .faq-list > li .q-row .faq-ttl {
  font-weight: 400;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-faq .faq-list > li .q-row .faq-ttl::before {
  right: -23px;
  top: 0;
}
.p-faq .faq-list > li .q-row .faq-ttl::after {
  top: 0;
  right: -13px;
}
.p-faq .faq-list > li .q-row.active .faq-ttl::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-faq .faq-list > li .q-row.active .faq-ttl::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-faq .faq-list > li .a-row {
  padding: 18px 40px 18px 80px;
}
.p-faq .faq-list > li .a-row .answer {
  line-height: 1.1875;
  position: relative;
}
.p-faq .faq-list > li .a-row .answer::after {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #8776D0;
  border: 1px solid #8776D0;
  border-radius: 50%;
  position: absolute;
  content: "A";
  top: -5px;
  left: -40px;
  margin: auto;
  width: 30px;
  height: 30px;
}
.p-faq .faq-list > li .a-row.faq-inner-list {
  border-top: 1px dashed #D9D9D9;
  padding: 0 0 0 40px;
  counter-reset: num02;
}
.p-faq .faq-list > li .a-row.faq-inner-list .q-row {
  padding-left: 89px;
}
.p-faq .faq-list > li .a-row.faq-inner-list .q-row::after {
  left: 15px;
  counter-increment: num02;
  content: "Q" counter(num) "-" counter(num02) ".";
}
.p-faq .faq-list > li .a-row.faq-inner-list .q-row .faq-ttl::before {
  right: -23px;
  top: 0;
}
.p-faq .faq-list > li .a-row.faq-inner-list .q-row .faq-ttl::after {
  top: 0;
  right: -13px;
}
.p-faq .faq-list > li .a-row.faq-inner-list .a-row {
  padding: 18px 40px 18px 55px;
}
.p-faq .faq-list > li .a-row.faq-inner-list .a-row .answer::after {
  left: -40px;
}
.p-faq .faq-list > li .a-row.faq-inner-list > li:not(:first-child) {
  border-top: 1px dashed #D9D9D9;
}
.p-faq .faq-list > li .a-row.faq-inner-list > li:nth-child(n+10) .q-row {
  padding-left: 98px;
}
.p-faq .faq-list > li:nth-child(n+10) .q-row {
  padding-left: 109px;
}
.p-faq.p-notice .faq-list li {
  border: 1px solid #d9d9d9;
}
.p-faq.p-notice .faq-list li + li {
  margin-top: 20px;
  border-top: 1px solid #d9d9d9;
}
.p-faq.p-notice .faq-list li .q-row .img-box {
  position: absolute;
  width: 40px;
  height: 40px;
  left: 40px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
  background: #8776D0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-faq.p-notice .faq-list li .q-row .img-box img {
  width: 65%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-faq.p-notice .faq-list li .q-row .img-box img.ico-on {
  display: none;
}
.p-faq.p-notice .faq-list li .q-row .img-box img.ico-off {
  display: block;
}
.p-faq.p-notice .faq-list li .q-row .faq-ttl .time {
  display: block;
  font-size: 14px;
}
.p-faq.p-notice .faq-list li .q-row::after {
  display: none;
}
.p-faq.p-notice .faq-list li .a-row {
  padding-left: 40px;
  border-top: 1px dashed #D9D9D9;
}
.p-faq.p-notice .faq-list li .a-row .answer::after {
  display: none;
}
.p-faq.p-notice .faq-list li.on .q-row .faq-ttl {
  color: #777777;
}
.p-faq.p-notice .faq-list li.on .q-row .faq-ttl h2 {
  font-weight: 400;
}
.p-faq.p-notice .faq-list li.on .q-row .img-box {
  background: #E9E9E9;
}
.p-faq.p-notice .faq-list li.on .q-row .img-box img.ico-on {
  display: block;
}
.p-faq.p-notice .faq-list li.on .q-row .img-box img.ico-off {
  display: none;
}
.p-faq .a-row a {
  color: #8776D0;
  text-decoration: underline;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.has-campaign + .p-order .cmp-wrap {
  top: 159px;
}

.p-order .ttl-wrap {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-order .ttl-wrap .c-ttl01 {
  margin-top: 0;
}
.p-order .ttl-wrap .select-box .txt {
  font-size: 14px;
  display: inline-block;
  margin-right: 8px;
  margin-top: 0;
}
.p-order .ttl-wrap .select-box select {
  width: 120px;
  border-radius: 4px;
  font-size: 16px !important;
  padding: 4px 32px 6px 12px;
}
.p-order .ttl-wrap .select-box::after {
  right: 10px;
}
.p-order .ttl-wrap .select-box::before {
  right: 17px;
}
.p-order .cmp-wrap {
  background: #fff;
  position: -webkit-sticky;
  position: sticky;
  z-index: 2;
  top: 119px;
  padding-top: 20px;
}
.p-order .cmp-link {
  background: #fff;
  border-radius: 5px;
  border: 1px solid #8776D0;
  padding: 10px 10px 10px 25px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-order .cmp-link .txt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 25px;
}
.p-order .cmp-link .txt-wrap .cmp-ttl {
  display: block;
  font-weight: bold;
  color: #8776D0;
  font-size: 18px;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.p-order .cmp-link .txt-wrap .date {
  font-size: 14px;
  color: #777777;
}

.c-order-lists-area {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.c-order-lists-area .link-txt.all {
  margin-right: 10px;
}
.c-order-lists-area.is-loading {
  height: 1200px;
  overflow: hidden;
}
.c-order-lists-area.is-loading .c-order-lists {
  opacity: 0;
}
.c-order-lists-area .price {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2222222222;
  color: #C81A37;
}
.c-order-lists-area .price .unit {
  font-size: 14px;
}

.c-order-lists {
  -webkit-transition: 0.6s ease-in-out;
  transition: 0.6s ease-in-out;
  margin-top: 50px;
}
.c-order-lists > li {
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px 20px 30px;
}
.c-order-lists > li + li {
  margin-top: 40px;
}
.c-order-lists .record-wrap {
  font-size: 15px;
  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;
  line-height: 1.2;
}
.c-order-lists .record-wrap .record li + li {
  margin-top: 14px;
}
.c-order-lists .record-wrap .record .num {
  font-weight: bold;
}
.c-order-lists .record-wrap .status {
  width: 100px;
  line-height: 1;
  font-size: 20px;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #777777;
  color: #777777;
}
.c-order-lists .record-wrap .status.red {
  border-color: #C81A37;
  background: #C81A37;
  color: #fff;
}
.c-order-lists .cards {
  margin-top: 20px;
}
.c-order-lists .cards .card {
  padding: 18px 20px 30px;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
}
.c-order-lists .cards .card + .card {
  margin-top: 20px;
}
.c-order-lists .cards .container {
  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;
  gap: 20px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.c-order-lists .cards .container .thumb {
  width: 190px;
  height: 190px;
}
.c-order-lists .cards .container .thumb > a {
  display: block;
  width: 100%;
  height: 100%;
}
.c-order-lists .cards .container .thumb > a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-order-lists .cards .txt-wrap {
  margin-top: 20px;
  max-width: 720px;
  width: calc(100% - 210px);
}
.c-order-lists .cards .txt-wrap .ttl {
  font-weight: bold;
  font-size: 18px;
  line-height: 1.2222222222;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  padding-bottom: 2px;
}
.c-order-lists .cards .txt-wrap .wrap {
  margin-top: 10px;
  color: #C81A37;
  font-size: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-order-lists .cards .txt-wrap .note-txt {
  color: #C81A37;
  line-height: 1;
  font-size: 14px;
}
.c-order-lists .cards .txt-wrap .review-box {
  padding: 20px 15px;
  margin-top: 15px;
  background: #FFFAE8;
  border-radius: 5px;
  font-size: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1px 30px;
}
.c-order-lists .cards .txt-wrap .review-box .lead {
  width: 100%;
  color: #F9B21A;
  font-weight: bold;
}
.c-order-lists .cards .txt-wrap .review-box .txt {
  margin-top: 0;
  max-width: calc(100% - 120px);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.c-order-lists .cards .txt-wrap .review-box .more {
  color: #8776D0;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.c-order-lists .cards .btn-wrap {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
.c-order-lists .cards .btn-wrap .c-btn03 {
  margin: 0;
}
.c-order-lists .detail-card {
  margin-top: 30px;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
}
.c-order-lists .detail-card .js--toggle-btn {
  padding: 22px 30px;
  cursor: pointer;
  color: #8776D0;
  line-height: 1;
  text-align: center;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  border-radius: 10px;
}
.c-order-lists .detail-card .js--toggle-btn .ico {
  right: 30px;
}
.c-order-lists .detail-card .js--toggle-target {
  padding: 20px 30px;
}
.c-order-lists .detail-card .js--toggle-target .outer-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.c-order-lists .detail-card .order-products {
  width: 540px;
}
.c-order-lists .detail-card .order-products > li {
  padding: 20px;
}
.c-order-lists .detail-card .order-products > li .outer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-order-lists .detail-card .order-products .ttl {
  line-height: 1.2;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  padding-bottom: 2px;
}
.c-order-lists .detail-card .order-products .thumb {
  width: 150px;
  height: 150px;
}
.c-order-lists .detail-card .order-products .thumb > a {
  display: block;
  width: 100%;
  height: 100%;
}
.c-order-lists .detail-card .order-products .thumb > a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-order-lists .detail-card .order-products .txt-wrap {
  width: calc(100% - 210px);
}
.c-order-lists .detail-card .order-products .info {
  font-size: 14px;
}
.c-order-lists .detail-card .order-products .info > li + li {
  margin-top: 5px;
}
.c-order-lists .detail-card .order-products .track {
  margin-top: 15px;
}
.c-order-lists .detail-card .order-products .track .lead {
  display: inline-block;
  line-height: 1;
  color: #8776D0;
}
.c-order-lists .detail-card .order-products .track .c-copy-wrap {
  margin-top: 10px;
  width: 100%;
  min-width: 290px;
}
.c-order-lists .detail-card .order-products .track .c-copy-wrap .code {
  width: calc(100% - 100px);
}
.c-order-lists .detail-card .order-products .price {
  margin: 8px 0 17px;
}
.c-order-lists .detail-card .order-infos {
  width: calc(100% - 560px);
}
.c-order-lists .detail-card .order-infos .card {
  border-radius: 5px;
  background: #F6F4FF;
  padding: 20px 40px 20px 30px;
}
.c-order-lists .detail-card .order-infos .card + .card {
  margin-top: 30px;
}
.c-order-lists .detail-card .order-infos .card .ttl {
  line-height: 1.375;
  font-weight: bold;
  color: #8776D0;
  margin-bottom: 20px;
}
.c-order-lists .detail-card .order-infos .card .post-code {
  display: block;
}
.c-order-lists .detail-card .order-infos .card .address {
  line-height: 1.2;
}
.c-order-lists .detail-card .price-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 9px 0;
  line-height: 1.1875;
}
.c-order-lists .detail-card .price-list > dt {
  width: calc(100% - 100px);
}
.c-order-lists .detail-card .price-list > dd {
  width: 100px;
  text-align: right;
}
.c-order-lists .detail-card .price-list > dt:nth-last-child(-n+2), .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2) {
  margin-top: 10px;
  padding-top: 15px;
  font-weight: bold;
  position: relative;
}
.c-order-lists .detail-card .price-list > dt:nth-last-child(-n+2)::after, .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
  position: absolute;
  content: "";
  top: 0;
  left: -30px;
  width: calc(100% + 30px);
  height: 1px;
  background-image: linear-gradient(to right, #8776D0 2px, transparent 2px);
  background-repeat: repeat-x;
  background-size: 4px 1px;
}
.c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
  left: 0;
  width: calc(100% + 40px);
}
.c-order-lists .method {
  margin: 30px 0 20px;
}
.c-order-lists .method .c-tabs {
  gap: 2px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-order-lists .method .c-tabs .js--tab {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  font-weight: bold;
  text-align: center;
  width: 200px;
  color: #8776D0;
  padding: 7px 10px;
  border-radius: 8px 8px 0 0;
  border: 1px solid #8776D0;
  border-bottom: none;
}
.c-order-lists .method .c-tabs .js--tab.active {
  background: #8776D0;
  color: #fff;
}
.c-order-lists .method .c-tabs .js--tab:not(.active) {
  cursor: pointer;
}
.c-order-lists .method .c-tab-box {
  padding: 30px 20px;
  border-radius: 0 5px 5px 5px;
  border: 1px solid #8776D0;
}
.c-order-lists .method .c-tab-box .js--tab-contents:not(.active) {
  display: none;
}
.c-order-lists .method .c-tab-box .txt {
  margin-top: 0;
}
.c-order-lists .method .c-tab-box .c-btn02 {
  width: 295px;
  font-size: 18px;
  margin-top: 40px;
  margin-right: auto;
}
.c-order-lists .method .c-tab-box .c-btn02.change-payment {
  width: initial;
}
.c-order-lists .method .c-tab-box .table {
  width: 450px;
  margin: 30px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border: 1px solid #D9D9D9;
}
.c-order-lists .method .c-tab-box .table > dt, .c-order-lists .method .c-tab-box .table > dd {
  line-height: 1.1875;
}
.c-order-lists .method .c-tab-box .table > dt:not(:nth-child(-n+2)), .c-order-lists .method .c-tab-box .table > dd:not(:nth-child(-n+2)) {
  border-top: 1px solid #D9D9D9;
}
.c-order-lists .method .c-tab-box .table > dt {
  width: 150px;
  padding: 10px 12px 11px;
  background: #F6F4FF;
}
.c-order-lists .method .c-tab-box .table > dd {
  width: calc(100% - 150px);
  padding: 10px 18px 11px;
  border-left: 1px solid #D9D9D9;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-static .ttl-wrap {
  margin-top: 50px;
}
.p-static .ttl-wrap .c-ttl01 {
  margin-top: 5px;
}
.p-static .ttl-wrap:first-child {
  margin-top: 0;
}
.p-static .tag-list {
  margin-top: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-static .tag-list > li {
  border: 1px solid #777777;
  border-radius: 5px;
  padding: 5px 10px;
  font-size: 14px;
}
.p-static .thumb {
  margin-top: 30px;
  margin-bottom: 20px;
}
.p-static .thumb img {
  width: 100%;
}
.p-static .index-wrap {
  margin-top: 30px;
  border-radius: 10px;
  padding: 20px;
  background: #F6F4FF;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  counter-reset: listnum;
}
.p-static .index-wrap .index-ttl {
  font-weight: bold;
  margin-top: 0;
  font-size: 20px;
}
.p-static .index-wrap a {
  font-weight: 500;
  display: block;
  margin-top: 5px;
  text-decoration: none;
  color: #333;
  position: relative;
}
.p-static .index-wrap a::before {
  content: "";
  left: 0;
  counter-increment: listnum;
  font-size: 16px;
  content: counter(listnum) ".";
}
.p-static .index-wrap .index > li ol,
.p-static .index-wrap .index > li ul {
  padding-left: 1em;
}
.p-static .side-index-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  z-index: 10;
  position: fixed;
  top: 180px;
  -webkit-transform: translateX(calc(100% - 30px));
          transform: translateX(calc(100% - 30px));
  margin: auto;
  right: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-height: calc(100vh - 240px);
  height: 100%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-static .side-index-wrap.appear {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.p-static .side-index-wrap .index-ttl {
  padding: 10px 2px;
  width: 30px;
  letter-spacing: 0.1em;
  font-weight: bold;
  height: 130px;
  background: #8776D0;
  color: #fff;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  border-radius: 10px 0 0 10px;
}
.p-static .side-index-wrap .side-inner-wrap {
  max-height: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow-y: auto;
  border-radius: 10px 0 0 10px;
  background: #fff;
  border: 1px solid #8776D0;
  width: 220px;
}
.p-static .side-index-wrap .side-inner > li {
  padding: 10px;
}
.p-static .side-index-wrap .side-inner > li + li {
  border-top: 1px solid #D9D9D9;
}
.p-static .side-index-wrap .side-inner a {
  font-weight: 500;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.p-static article a:not(.btn) {
  color: #8776D0;
  text-underline-offset: 2px;
  text-decoration: underline;
}
.p-static article h2 {
  margin-top: 60px;
  color: #8776D0;
  position: relative;
  font-size: 22px;
  line-height: 1.1818181818;
  padding: 6px 0 8px 30px;
}
.p-static article h2::after {
  top: 0;
  left: 0;
  position: absolute;
  content: "";
  height: 100%;
  width: 8px;
  background: -webkit-gradient(linear, left top, left bottom, from(#B1C6ED), to(#AEA2E6));
  background: linear-gradient(180deg, #B1C6ED 0%, #AEA2E6 100%);
}
.p-static article h3 {
  padding: 6px 20px 7px;
  font-size: 18px;
  font-weight: bold;
  background: #EBE6FF;
  border-radius: 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 40px;
}
.p-static article h4 {
  margin-top: 30px;
  font-size: 16px;
  padding-left: 20px;
  position: relative;
}
.p-static article h4::after {
  position: absolute;
  content: "";
  top: 12px;
  left: 0;
  width: 10px;
  height: 2px;
  background: #8776D0;
}
.p-static article h5 {
  margin-top: 30px;
  font-size: 16px;
  position: relative;
}
.p-static article ul:not(.flow-list):not(.block-list), .p-static article ol {
  margin-top: 20px;
}
.p-static article ul:not(.flow-list):not(.block-list) > li, .p-static article ol > li {
  padding-left: 25px;
  position: relative;
}
.p-static article ul:not(.flow-list):not(.block-list) > li + li, .p-static article ol > li + li {
  margin-top: 10px;
}
.p-static article ul:not(.flow-list):not(.block-list) > li::after, .p-static article ol > li::after {
  position: absolute;
  content: "";
  left: 0;
}
.p-static article ul:not(.flow-list):not(.block-list) > li {
  padding-left: 15px;
}
.p-static article ul:not(.flow-list):not(.block-list) > li::after {
  top: 10px;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  background: #8776D0;
}
.p-static article ol {
  counter-reset: listnum;
}
.p-static article ol > li::after {
  top: 0;
  color: #8776D0;
  font-weight: bold;
  counter-increment: listnum;
  font-size: 16px;
  content: counter(listnum) ".";
}
.p-static article p {
  margin-top: 15px;
}
.p-static article img {
  margin-top: 20px;
  max-width: 680px;
}
.p-static article h2 + h3 {
  margin-top: 30px;
}
.p-static article h4 + p {
  margin-top: 10px;
}
.p-static article .flow-list {
  margin-top: 30px;
  counter-reset: listnum;
}
.p-static article .flow-list > li + li {
  margin-top: 30px;
}
.p-static article .flow-list p {
  margin-top: 5px;
  position: relative;
  padding-left: 20px;
}
.p-static article .flow-list p::after {
  top: 0;
  left: 0;
  position: absolute;
  color: #8776D0;
  font-weight: bold;
  counter-increment: listnum;
  font-size: 16px;
  content: counter(listnum) ".";
}
.p-static article .flow-list img {
  margin-top: 0;
}
.p-static article .block-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  margin-top: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-static article .block-list > li {
  padding: 15px;
  width: calc((100% - 45px) / 4);
  background: #f2f2f2;
  border-radius: 10px;
}
.p-static article .block-list > li p {
  margin-top: 0;
}
.p-static article .block-list > li .ttl {
  font-weight: bold;
  margin-bottom: 5px;
}
.p-static article .block-list > li .ttl.ico-user {
  padding-bottom: 3px;
  padding-left: 30px;
  border-bottom: 1px dashed #8776D0;
  position: relative;
}
.p-static article .block-list > li .ttl.ico-user::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  left: 0;
  top: 1px;
  -webkit-mask: url(../img/common/ico_user.svg) no-repeat center/contain;
          mask: url(../img/common/ico_user.svg) no-repeat center/contain;
  background: #333;
}
.p-static article .block-list > li .label {
  color: #8776D0;
  display: block;
  font-weight: bold;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.p-static article .block-list.bg-white > li {
  background: #fff;
  border: solid 2px #8776D0;
}
.p-static article .btn {
  margin: 20px auto 0;
  display: block;
  width: 320px;
  max-width: 100%;
  color: #fff;
  padding: 12px 0;
  background: #8776D0;
  text-align: center;
  font-weight: bold;
  border: 1px solid #8776D0;
  border-radius: 25px;
}
.p-static article .red {
  color: #EA3345;
}
.p-static article dl {
  margin: 20px 0;
}
.p-static article dl dt {
  background: #EBE6FF;
  padding: 5px 10px;
}
.p-static article dl dd {
  padding: 5px 10px;
  border: 1px solid #D9D9D9;
  border-top: none;
}

#wrapper .p-static dl dd ul {
  margin-top: 0;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-cart .shopping-link.hide {
  background: #9F9F9F;
  pointer-events: none;
  border-color: #9F9F9F;
  display: none;
}
.p-cart .c-purple-card {
  border-radius: 5px;
}
.p-cart .c-section {
  margin-top: 60px;
}
.p-cart .c-section.wide {
  margin-top: 80px;
}
.p-cart .c-section.narrow {
  max-width: 720px;
}
.p-cart .c-section.narrow .c-contact-wrap {
  margin-top: 0;
}
.p-cart .c-section .c-ttl01 {
  margin-top: 0;
}
.p-cart .submit-btn-wrap {
  margin: 40px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.p-cart .no-cart {
  margin-top: 30px;
}
.p-cart .no-cart .c-btn03 {
  margin: 40px auto 0;
}
.p-cart .no-cart.hide {
  display: none;
}
.p-cart .c-order-lists {
  margin-top: 20px;
}
.p-cart .c-product-list > li .evaluation {
  margin-top: 7px;
}
.p-cart .c-contact-wrap .select-box + .select-box {
  margin-top: 0;
}
.p-cart .c-contact-wrap .q-wrap .label-note {
  font-size: 14px;
  color: #777777;
}
.p-cart .c-contact-wrap .q-wrap.hide {
  display: none;
}
.p-cart .c-contact-wrap .input-area .unit {
  margin-left: 10px;
}
.p-cart .c-contact-wrap input:not([type=radio]):not([type=checkbox]):disabled, .p-cart .c-contact-wrap select:disabled {
  background: #F6F4FF;
  color: #333;
  opacity: 1;
  border: 1px solid #777777;
}
.p-cart .c-contact-wrap input:not([type=radio]):not([type=checkbox]).hide, .p-cart .c-contact-wrap .select-box.hide {
  display: none;
}
.p-cart .fixed-btn-wrap {
  -webkit-transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s;
  transition: box-shadow 0.3s, transform 0.3s, opacity 0.3s, -webkit-box-shadow 0.3s, -webkit-transform 0.3s;
  pointer-events: none;
  opacity: 0;
  position: fixed;
  z-index: 990;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: auto;
}
.p-cart .fixed-btn-wrap .c-btn03 {
  margin-top: 0;
  -webkit-box-shadow: 0 8px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 6px rgba(0, 0, 0, 0.2);
}
.p-cart .fixed-btn-wrap.active {
  opacity: 1;
  pointer-events: visible;
}
.p-cart .has-cart.hide {
  display: none;
}
.p-cart .cart-outer-wrap {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 55px;
}
.p-cart .cart-outer-wrap .cart-list {
  position: relative;
}
.p-cart .cart-outer-wrap .cart-list::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #D9D9D9 2px, transparent 2px);
  background-repeat: repeat-x;
  background-size: 4px 1px;
}
.p-cart .cart-outer-wrap .cart-list > li {
  padding: 20px 20px 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  position: relative;
}
.p-cart .cart-outer-wrap .cart-list > li::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #D9D9D9 2px, transparent 2px);
  background-repeat: repeat-x;
  background-size: 4px 1px;
}
.p-cart .cart-outer-wrap .cart-list .txt-wrap {
  width: calc(100% - 160px);
}
.p-cart .cart-outer-wrap .cart-list .product-ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  padding-bottom: 2px;
  font-weight: bold;
  line-height: 1.2;
  overflow: hidden;
}
.p-cart .cart-outer-wrap .cart-list .thumb {
  width: 140px;
  height: 140px;
}
.p-cart .cart-outer-wrap .cart-list .price-wrap {
  margin-top: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 60px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-cart .cart-outer-wrap .cart-list .price-wrap .price {
  color: #C81A37;
  font-weight: bold;
  font-size: 18px;
}
.p-cart .cart-outer-wrap .cart-list .price-wrap .price .unit {
  font-size: 14px;
}
.p-cart .cart-outer-wrap .cart-list .info {
  font-size: 14px;
  margin-top: 8px;
}
.p-cart .cart-outer-wrap .cart-list .info > li + li {
  margin-top: 5px;
}
.p-cart .cart-outer-wrap .cart-list .js--cart-delete-btn {
  margin-top: 7px;
  border: 1px solid #737373;
  width: 70px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  border-radius: 6px;
  padding: 3px 5px;
}
.p-cart .cart-outer-wrap .cart-list .js--cart-delete-btn .ico {
  position: relative;
  width: 12px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  height: 15px;
  -webkit-mask: url(../img/cart/ico_trash.svg) no-repeat center/contain;
          mask: url(../img/cart/ico_trash.svg) no-repeat center/contain;
  background: #333;
}
.p-cart .cart-outer-wrap .cart-infos {
  width: 345px;
}
.p-cart .cart-outer-wrap .cart-infos .cart-infos-inner {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: -webkit-sticky;
  position: sticky;
  top: 170px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card {
  margin-top: 0;
  line-height: 1.1875;
  padding: 20px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .ttl {
  font-weight: bold;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 15px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 14px 0;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list > li.hide {
  display: none;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .info {
  width: 130px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .num {
  width: calc(100% - 130px);
  text-align: right;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .total {
  padding-top: 13px;
  position: relative;
  margin-top: -4px;
  font-weight: bold;
  line-height: 1.2;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .total .info {
  padding-top: 2px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .total .num {
  font-size: 20px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .total::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #8776D0 2px, transparent 2px);
  background-repeat: repeat-x;
  background-size: 4px 1px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .postage-note {
  margin-top: 2px;
  display: block;
  line-height: 1.4666666667;
  color: #C81A37;
  border: 1px solid #C81A37;
  background: #fff;
  font-size: 15px;
  padding: 0 20px 0 10px;
  max-width: 220px;
  border-radius: 12px;
}
.p-cart .cart-outer-wrap .cart-infos .c-purple-card .price-list .postage-note.hide {
  display: none;
}
.p-cart .cart-outer-wrap .cart-infos .btn-wrap {
  margin-top: 45px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.p-cart .cart-outer-wrap .cart-infos .btn-wrap .c-btn03 {
  margin-top: 0;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap {
  margin-top: 20px;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap + .submit-btn-wrap {
  margin-top: 25px;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .q-wrap .container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .q-wrap .container .label-area, .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .q-wrap .container .input-area {
  width: 100%;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .error-txt {
  margin-top: 15px;
  padding-left: 0;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .input-area {
  min-height: auto !important;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .check-wrap {
  margin-top: 0;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .check-wrap label {
  font-size: 16px;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .check-wrap label .label {
  padding-left: 35px;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .check-wrap label::before {
  top: -1px;
}
.p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .check-wrap label::after {
  top: 5px;
}
.p-cart .cart-inner-wrap {
  width: calc(100% - 400px);
}
.p-cart .cart-inner-wrap .c-contact-wrap.part-input {
  margin-top: 0;
}
.p-cart .ttl-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 110px;
}
.p-cart .ttl-block .c-ttl04 {
  margin-bottom: 0;
}
.p-cart .ttl-block .point-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  line-height: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-cart .ttl-block .point-wrap #total-point {
  display: inline-block;
  font-weight: bold;
  line-height: 1;
  font-size: 20px;
}
.p-cart .point-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 30px 75px;
}
.p-cart .point-list .radio:first-child {
  width: 100%;
}
.p-cart .point-list .radio label {
  padding-left: 42px;
}
.p-cart .point-list .radio.parallel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-cart .point-list .radio .point-input {
  width: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 7px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-cart .point-list .radio .point-input input {
  border-color: #8776D0;
  width: 220px;
  padding: 12px 10px;
}
.p-cart .point-list .radio label {
  padding-top: 3px;
  display: block;
  line-height: 1.1875;
}
.p-cart .coupon-list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 25px;
}
.p-cart .coupon-list > li + li {
  margin-top: 30px;
}
.p-cart .coupon-list .txt-box {
  width: calc(100% - 350px);
}
.p-cart .coupon-list .txt-box .ttl {
  color: #8776D0;
  line-height: 1.1875;
}
.p-cart .coupon-list .txt-box .ttl > a {
  text-decoration: underline;
  line-height: 1.1875;
  text-underline-offset: 2px;
  display: inline-block;
}
.p-cart .coupon-list .txt-box .date {
  margin-top: 9px;
  font-size: 12px;
  display: block;
  color: #777777;
  line-height: 1.1666666667;
}
.p-cart .coupon-list .c-copy-wrap {
  max-height: 42px;
  width: 325px;
}
.p-cart .coupon-list .c-copy-wrap .js--copy,
.p-cart .coupon-list .c-copy-wrap .js--coupon-apply {
  width: 100px;
}
.p-cart .coupon-list .c-copy-wrap .code {
  font-weight: bold;
  font-size: 18px;
  color: #8776D0;
  width: calc(100% - 100px);
}
.p-cart .coupon-list#available-coupon-list > li.hide {
  display: none;
}
.p-cart .coupon-input {
  margin-top: 45px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-cart .coupon-input input[type=text] {
  border-color: #D9D9D9;
  padding: 7px 20px;
  height: 40px;
  width: calc(100% - 220px);
}
.p-cart .coupon-input .c-btn02 {
  margin-top: 0;
  width: 180px;
  font-size: 16px;
  padding: 12px 14px 14px;
}
.p-cart .used-coupon-area {
  margin-top: 40px;
  padding: 20px;
  background: #F6F4FF;
}
.p-cart .used-coupon-area.hide {
  display: none;
}
.p-cart .used-coupon-area .coupon-list {
  margin-top: 10px;
}
.p-cart .used-coupon-area .coupon-list > li {
  background: #fff;
  padding: 10px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-cart .used-coupon-area .coupon-list > li .cancel-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-cart .used-coupon-area .coupon-list > li .cancel-btn > button {
  color: #fff;
  background: #8776D0;
  padding: 7px 11px;
  width: 100px;
  border-radius: 4px;
}
.p-cart .option-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
.p-cart .option-list .radio-inner-wrap {
  width: 50%;
}
.p-cart .option-list .radio-inner-wrap .radio {
  width: 100%;
}
.p-cart .option-list .radio-inner-wrap .bank-note {
  margin: 5px 0;
  font-size: 18px;
  font-weight: bold;
  color: #EA3345;
}
.p-cart .option-list .radio {
  position: relative;
  width: calc(50% - 15px);
  border-radius: 5px;
  border: 1px solid #8776D0;
}
.p-cart .option-list .radio label {
  display: block;
  padding: 16px 10px 16px 54px;
  width: 100%;
}
.p-cart .option-list .radio label::before {
  top: 2px;
  bottom: 0;
  margin: auto;
  left: 10px;
}
.p-cart .option-list .radio label::after {
  top: 2px;
  bottom: 0;
  margin: auto;
  left: 15px;
}
.p-cart .option-list .radio .ico {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  pointer-events: none;
  margin: auto;
}
.p-cart.p-contact-finish .submit-btn-wrap {
  margin-top: 0;
}

.p-cart .c-form-flow, .p-cart .c-form-flow-img, .p-procedure .c-form-flow, .p-procedure .c-form-flow-img {
  margin-top: 50px;
}
.p-cart .c-form-flow + .c-ttl01, .p-cart .c-form-flow-img + .c-ttl01, .p-procedure .c-form-flow + .c-ttl01, .p-procedure .c-form-flow-img + .c-ttl01 {
  margin-top: 35px;
}
.p-cart .wrap .c-btn03, .p-procedure .wrap .c-btn03 {
  font-size: 16px;
  margin-top: 90px;
}

.p-shopping {
  padding-bottom: 80px;
}
.p-shopping .c-contact-wrap .q-wrap .label-note.hide {
  height: 1px;
  visibility: hidden;
}
.p-shopping .head-ttl-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-shopping .head-ttl-block .link-wrap {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  line-height: 1.1875;
  margin-top: 3px;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-shopping .head-ttl-block .link-wrap::after {
  bottom: -1px;
}
.p-shopping .cart-outer-wrap {
  margin-top: 50px;
}
.p-shopping .no-cart {
  width: 100%;
}
.p-shopping .file-area .link-txt {
  margin-top: 20px;
  font-size: 14px;
  text-align: right;
  max-width: 405px;
}
.p-shopping .c-contact-wrap .file-container .unit {
  margin-left: 0 !important;
}
.p-shopping .c-contact-wrap .file-container .container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  max-width: 405px;
  gap: 10px;
}
.p-shopping .c-contact-wrap .file-container .container .wrap {
  max-width: 405px;
}
.p-shopping .c-contact-wrap .file-container .container .wrap label {
  width: 130px;
  padding: 12px 10px;
  font-size: 16px;
}
.p-shopping .c-contact-wrap .file-container .container .wrap label img {
  width: 22px;
  margin-right: 5px;
}
.p-shopping .c-contact-wrap .file-container .container .wrap .name {
  width: calc(100% - 130px);
}
.p-shopping .c-contact-wrap .file-container .uploaded {
  width: 100%;
}
.p-shopping .c-contact-wrap .file-container .file-delete-btn {
  padding: 13px 5px;
}
.p-shopping #coupon-error {
  color: #EA3345;
  margin-top: 10px;
  font-weight: bold;
}
.p-shopping #coupon-error.hide {
  display: none;
}
.p-shopping #coupon-note {
  margin-top: 25px;
}
.p-shopping button[name=coupon-set]:disabled {
  background: #9F9F9F;
  pointer-events: none;
}

.p-procedure {
  padding-bottom: 60px;
}
.p-procedure .wrap {
  margin-top: 40px;
}
.p-procedure .txt-box {
  margin-top: 35px;
}
.p-procedure .txt.attention {
  color: #C81A37;
  margin-top: 55px;
  font-size: 20px;
  font-weight: bold;
}
.p-procedure .txt.attention + .txt-box {
  margin-top: 30px;
}
.p-procedure .bank-info {
  margin: 75px 0 58px;
}
.p-procedure .bank-info .serial {
  text-align: left;
  font-weight: 500;
}
.p-procedure .table {
  width: 450px;
  margin: 18px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border: 1px solid #D9D9D9;
}
.p-procedure .table > dt, .p-procedure .table > dd {
  text-align: left;
  line-height: 1.1875;
}
.p-procedure .table > dt:not(:nth-child(-n+2)), .p-procedure .table > dd:not(:nth-child(-n+2)) {
  border-top: 1px solid #D9D9D9;
}
.p-procedure .table > dt {
  width: 150px;
  padding: 10px 12px;
  background: #F6F4FF;
}
.p-procedure .table > dd {
  width: calc(100% - 150px);
  padding: 10px 18px;
  border-left: 1px solid #D9D9D9;
}
.p-procedure .lower-txt .lead {
  margin-top: 55px;
  color: #8776D0;
}
.p-procedure .lower-txt .lead.bold {
  font-weight: bold;
}
.p-procedure .lower-txt p + p {
  margin-top: 20px;
}
.p-procedure .lower-txt a {
  text-underline-offset: 2px;
  text-decoration: underline;
  color: #8776D0;
}
.p-procedure .submit-btn-wrap {
  margin-top: 0;
}
.p-procedure .submit-btn-wrap .c-btn03.back-top {
  margin-top: 60px;
}
.p-procedure .agency-block {
  margin-top: 80px;
}
.p-procedure .agency-block .c-agency-link {
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  padding: 11px 30px 11px 0;
  width: 350px;
  display: block;
  margin: 18px auto 0;
  background: #C81A37;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  border: 1px solid #C81A37;
  max-width: 100%;
}
.p-procedure .agency-block .c-agency-link::before, .p-procedure .agency-block .c-agency-link::after {
  background: #fff;
  right: 20px;
}
.p-procedure .agency-block .c-agency-link .note {
  margin-top: 6px;
  display: block;
  font-size: 14px;
  font-weight: 400;
}
.p-procedure .window-block {
  margin-top: 45px;
  border-radius: 10px;
  background: #E9E9E9;
  padding: 30px;
}
.p-procedure .window-block .window-inner {
  padding: 38px 40px;
  text-align: center;
  border-radius: 10px;
  background: #fff;
}
.p-procedure .window-block .ttl {
  color: #C81A37;
  line-height: 1.1875;
}
.p-procedure .window-block .tel {
  margin-top: 15px;
  line-height: 1;
  display: block;
  font-weight: bold;
  font-size: 32px;
}
.p-procedure .window-block .c-btn03 {
  margin-top: 30px;
}
.p-procedure .window-block .layer:first-child .txt {
  margin-top: 25px;
}
.p-procedure .window-block .layer:nth-child(2) {
  margin-top: 60px;
}
.p-procedure .window-block + .submit-btn-wrap .c-btn03 {
  margin-top: 40px;
}
.p-shopping-confirm .cart-outer-wrap {
  margin-top: 35px;
}
.p-shopping-confirm .c-ttl04 {
  margin-bottom: 35px;
}
.p-shopping-confirm .c-ttl04.narrow {
  margin-bottom: 15px;
}
.p-shopping-confirm .cart-list > li {
  padding-bottom: 20px !important;
}
.p-shopping-confirm .c-contact-wrap.part-confirm {
  padding-bottom: 0;
}

.p-contact-finish .c-btn02, .p-contact-finish .c-btn03, .p-contact-finish .c-agency-link {
  font-weight: 500;
}

/* -----------------------------------------------
* mypage Module
* mypageページ用
-------------------------------------------------- */
.p-mypage {
  position: relative;
}
.p-mypage > .inner-block {
  padding-top: 40px;
}
.p-mypage .rank-area {
  background: #F6F4FF;
  border-radius: 10px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 30px;
  padding: 16px 40px 16px 25px;
}
.p-mypage .rank-area .l-right {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 20px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-mypage .rank-area .name-ttl {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.1875;
  margin-bottom: 8px;
}
.p-mypage .rank-area .rank-txt {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2142857143;
}
.p-mypage .rank-area .point-wrap {
  margin-bottom: 4px;
  text-align: right;
}
.p-mypage .rank-area .point-txt {
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 4px;
}
.p-mypage .rank-area .point-txt .point {
  color: #8776D0;
  font-size: 24px;
  font-weight: bold;
  margin-left: 14px;
  line-height: 1;
  display: inline-block;
}
.p-mypage .rank-area .point-txt .small {
  font-size: 16px;
}
.p-mypage .rank-area .limited-point {
  font-size: 14px;
  line-height: 1.2142857143;
}
.p-mypage .rank-area button {
  color: #8776D0;
  text-decoration: underline;
  text-underline-offset: 2px;
  font-size: 14px;
  line-height: 1;
}
.p-mypage .menu-area {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto 1fr;
  gap: 20px;
  margin-top: 30px;
}
.p-mypage .menu-area .btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border: 2px solid #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 4px 11px rgba(135, 118, 208, 0.3);
          box-shadow: 0 4px 11px rgba(135, 118, 208, 0.3);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  padding: 8px 29px;
}
.p-mypage .menu-area .btn:nth-child(1) {
  grid-area: 1/1/3/2;
  min-height: 290px;
  gap: 30px;
}
.p-mypage .menu-area .btn:nth-child(1) .ico img {
  max-height: min(74px, 5.1388888889vw);
}
.p-mypage .menu-area .btn:nth-child(2) {
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-area: 1/2/2/4;
  padding-right: 40px;
}
.p-mypage .menu-area .btn:nth-child(2) .ico img {
  max-height: min(30px, 2.0833333333vw);
  margin-left: 6px;
}
.p-mypage .menu-area .btn:nth-child(3) {
  grid-area: 2/2/3/3;
}
.p-mypage .menu-area .btn:nth-child(3) .ico img {
  max-height: min(62px, 4.3055555556vw);
}
.p-mypage .menu-area .btn:nth-child(4) {
  grid-area: 2/3/3/4;
}
.p-mypage .menu-area .btn:nth-child(4) .ico img {
  max-height: min(55px, 3.8194444444vw);
}
.p-mypage .menu-area .ico {
  background: #8776D0;
  border-radius: 100px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.p-mypage .menu-area .ico.large {
  width: min(120px, 8.3333333333vw);
  height: min(120px, 8.3333333333vw);
}
.p-mypage .menu-area .ico.medium {
  width: min(100px, 6.9444444444vw);
  height: min(100px, 6.9444444444vw);
}
.p-mypage .menu-area .ico.small {
  width: min(50px, 3.4722222222vw);
  height: min(50px, 3.4722222222vw);
}
.p-mypage .menu-area .ico img {
  position: relative;
}
.p-mypage .menu-area .num {
  background: #ED0D32;
  border: 2px solid #fff;
  border-radius: 100px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 20px;
  font-weight: 400;
  position: absolute;
  padding-left: 1px;
  top: -8px;
  right: -20px;
  height: 44px;
  width: 44px;
}
.p-mypage .menu-area .num sup {
  font-size: 18px;
  position: relative;
  top: -5px;
}
.p-mypage .menu-area .menu-ttl {
  color: #8776D0;
  font-size: 20px;
  font-weight: bold;
}
.p-mypage .menu-area .menu-txt {
  margin-top: 6px;
}
.p-mypage .tracking-area {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #F6F4FF;
  border-radius: 10px;
  display: grid;
  grid-template-columns: auto auto 1fr;
  padding: 50px 30px;
  margin-top: 20px;
}
.p-mypage .tracking-area > .ico {
  width: 100px;
  background: #fff;
  border-radius: 100px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 100px;
  padding: 20px;
}
.p-mypage .tracking-area .tracking-ttl {
  color: #8776D0;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 14px;
  line-height: 1.2;
}
.p-mypage .tracking-area .tracking-txt {
  font-size: 16px;
  font-weight: 400;
}
.p-mypage .tracking-area .tracking-txt a {
  text-decoration: underline;
}
.p-mypage .tracking-area .search-input-area {
  border: 1px solid #8776D0;
  max-width: 580px;
  width: auto;
  margin-left: 58px;
}
.p-mypage .tracking-area .search-input-area input {
  font-size: 24px !important;
  padding: 0 64px 1px 34px;
  line-height: 47px;
  border-radius: 40px;
}
.p-mypage .tracking-area .search-input-area input::-webkit-input-placeholder {
  font-size: 24px;
}
.p-mypage .tracking-area .search-input-area input::-moz-placeholder {
  font-size: 24px;
}
.p-mypage .tracking-area .search-input-area input:-ms-input-placeholder {
  font-size: 24px;
}
.p-mypage .tracking-area .search-input-area input::-ms-input-placeholder {
  font-size: 24px;
}
.p-mypage .tracking-area .search-input-area input::placeholder {
  font-size: 24px;
}
.p-mypage .tracking-area .search-input-area .ico img {
  width: 27px;
  height: 27px;
  top: -2px;
}
.p-mypage .tracking-area .search-input-area.trace-select {
  margin-bottom: 10px;
  border: none;
  width: 180px;
  height: 40px;
  border-radius: 5px;
}
.p-mypage .tracking-area .search-input-area.trace-select .select-box::after, .p-mypage .tracking-area .search-input-area.trace-select .select-box::before {
  background: #8776D0;
}
.p-mypage .tracking-area .search-input-area.trace-select select {
  width: 100%;
  border-color: #8776D0;
}
.p-mypage .menu-link-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 40px;
  margin-top: 40px;
}
.p-mypage .menu-link-list a {
  background: #fff;
  height: 70px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #D9D9D9;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 500;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  padding: 16px 40px 16px 30px;
  position: relative;
  letter-spacing: 0.1em;
}
.p-mypage .menu-link-list a::before {
  background: url(../img/common/ico-arrow.svg) no-repeat center center/contain;
  content: "";
  height: 23px;
  width: 13px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 38px;
  margin: auto;
}
.p-mypage .menu-link-list > li:nth-child(2) .ico img {
  margin-left: -3px;
}
.p-mypage .menu-link-list .ico {
  width: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-mypage .menu-link-list .inn {
  padding-bottom: 1px;
  display: inline-block;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.cover-wrap {
  overflow: hidden;
}

.p-column-top {
  overflow: visible !important;
  padding-bottom: 100px;
}
.p-column-top .main-block {
  padding: 50px 0 188px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.p-column-top .main-block::after {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 25px;
  width: 175.6944444444vw;
  height: 175.6944444444vw;
  border-radius: 0 0 50% 50%;
  z-index: -1;
  background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
  background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
}
.p-column-top .main-block span {
  display: block;
  line-height: 1;
  text-align: center;
}
.p-column-top .main-block span:nth-child(1) {
  margin-top: 6px;
  font-size: 32px;
  font-family: "ZenMaruGothic", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}
.p-column-top .main-block span:nth-child(2) {
  color: #8776D0;
  margin-top: 5px;
  font-size: 80px;
  font-family: "Afacad", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}
.p-column-top .main-block span:nth-child(3) {
  margin-top: 15px;
  font-size: 34px;
  letter-spacing: 0.1em;
  font-family: "Afacad", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}
.p-column-top .main-block span:nth-child(4) {
  margin-top: 35px;
  font-size: 28px;
  font-family: "ZenMaruGothic", "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}
.p-column-top .c-section {
  margin: 100px auto 0;
}
.p-column-top .c-section#section01 {
  position: relative;
  margin-top: 80px;
}
.p-column-top .c-section#section01::before {
  position: absolute;
  content: "";
  top: -300px;
  right: 20px;
  width: 396px;
  height: 402px;
  z-index: -1;
  background: url(../img/column/bg01.svg) no-repeat center/cover;
}
.p-column-top .c-section#section02 {
  position: relative;
}
.p-column-top .c-section#section02::after {
  position: absolute;
  content: "";
  bottom: -90px;
  left: -10px;
  width: 440px;
  height: 426px;
  z-index: -1;
  background: url(../img/common/bg02.svg) no-repeat center/cover;
}
.p-column-top .c-section#section05 {
  position: relative;
}
.p-column-top .c-section#section05::before {
  position: absolute;
  content: "";
  top: -150px;
  right: 30px;
  width: 436px;
  height: 442px;
  z-index: -1;
  background: url(../img/column/bg01.svg) no-repeat center/cover;
}
.p-column-top .home-ttl {
  text-align: center;
  margin-left: -85px;
}
.p-column-top .pickup-swiper, .p-column-top .newest-swiper {
  position: relative;
}
.p-column-top .pickup-swiper .ttl, .p-column-top .newest-swiper .ttl {
  color: #8776D0;
  font-weight: 500;
  font-size: 26px;
  margin-top: 20px;
  line-height: 1.1923076923;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.p-column-top .pickup-swiper .foot, .p-column-top .newest-swiper .foot {
  margin-top: 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: 300;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.p-column-top .pickup-swiper .foot .date, .p-column-top .newest-swiper .foot .date {
  color: #777777;
}
.p-column-top .pickup-swiper .foot .tags, .p-column-top .newest-swiper .foot .tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.p-column-top .pickup-swiper .foot .tags > li, .p-column-top .newest-swiper .foot .tags > li {
  color: #777777;
  position: relative;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.p-column-top .pickup-swiper .swiper, .p-column-top .newest-swiper .swiper {
  height: 100%;
}
.p-column-top .pickup-swiper .swiper-button-prev,
.p-column-top .pickup-swiper .swiper-button-next, .p-column-top .newest-swiper .swiper-button-prev,
.p-column-top .newest-swiper .swiper-button-next {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 56px;
  height: 56px;
  top: 0;
  margin: auto;
  bottom: 0;
}
.p-column-top .pickup-swiper .swiper-button-prev::before, .p-column-top .pickup-swiper .swiper-button-prev::after,
.p-column-top .pickup-swiper .swiper-button-next::before,
.p-column-top .pickup-swiper .swiper-button-next::after, .p-column-top .newest-swiper .swiper-button-prev::before, .p-column-top .newest-swiper .swiper-button-prev::after,
.p-column-top .newest-swiper .swiper-button-next::before,
.p-column-top .newest-swiper .swiper-button-next::after {
  background: #8776D0;
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 3px;
  height: 23px;
  border-radius: 3px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 15px;
}
.p-column-top .pickup-swiper .swiper-button-prev::after,
.p-column-top .pickup-swiper .swiper-button-next::after, .p-column-top .newest-swiper .swiper-button-prev::after,
.p-column-top .newest-swiper .swiper-button-next::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: -15px;
}
.p-column-top .pickup-swiper .swiper-button-prev, .p-column-top .newest-swiper .swiper-button-prev {
  left: 44px;
}
.p-column-top .pickup-swiper .swiper-button-prev::after, .p-column-top .newest-swiper .swiper-button-prev::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 15px;
}
.p-column-top .pickup-swiper .swiper-button-prev::before, .p-column-top .newest-swiper .swiper-button-prev::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: -15px;
}
.p-column-top .pickup-swiper .swiper-button-next, .p-column-top .newest-swiper .swiper-button-next {
  right: 36px;
}
.p-column-top .pickup-swiper .swiper-pagination, .p-column-top .newest-swiper .swiper-pagination {
  bottom: -65px;
  height: 16px;
}
.p-column-top .pickup-swiper .swiper-pagination-bullet, .p-column-top .newest-swiper .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  background: #D9D9D9;
  margin: 0 8.5px;
  opacity: 1;
  position: relative;
}
.p-column-top .pickup-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active, .p-column-top .newest-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #DAB8FF;
}
.p-column-top .pickup-swiper {
  background: url(../img/column/book.svg) no-repeat center/cover;
  margin: 40px auto 110px;
  padding: 20px 36px 40px 44px;
  width: 1008px;
  max-width: 100%;
  aspect-ratio: 1008/660;
  position: relative;
  height: 100%;
}
.p-column-top .pickup-swiper .ttl {
  padding: 0 3px;
}
.p-column-top .pickup-swiper .foot {
  width: 100%;
  padding: 0 3px;
}
.p-column-top .pickup-swiper .thumb {
  width: clamp(385px, 70vw - 161px, 525px);
  margin: 0px auto;
  aspect-ratio: 3/2;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-column-top .pickup-swiper .swiper-slide {
  width: 928px;
  max-width: 100%;
  height: 100%;
}
.p-column-top .pickup-swiper .swiper-slide > a {
  padding: 0 21px;
  width: 100%;
  height: 100%;
  display: block;
}
.p-column-top .pickup-swiper .swiper-slide > a .inner {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: auto;
  margin-bottom: auto;
}
.p-column-top .pickup-swiper .pickup-balloon {
  position: absolute;
  top: 21px;
  left: 0;
}
.p-column-top .pickup-swiper .pickup-balloon img, .p-column-top .pickup-swiper .pickup-balloon source {
  -webkit-box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0px 1px 2px 0 rgba(0, 0, 0, 0.15);
}
.p-column-top .newest-swiper {
  max-width: 1440px;
  margin: 0 auto;
}
.p-column-top .newest-swiper .swiper-slide {
  width: 580px;
  max-width: 100%;
}
.p-column-top .newest-swiper .thumb {
  aspect-ratio: 3/2;
  width: 100%;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-column-top .newest-swiper .thumb > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-column-top .newest-swiper .swiper-pagination {
  bottom: -3px;
}
.p-column-top .newest-swiper .swiper {
  padding: 60px 0;
}
.p-column-top .c-btn05::before {
  height: 20px;
  width: 12px;
  right: 26px;
}

.p-column-list {
  padding-bottom: 80px;
  position: relative;
}
.p-column-list::before {
  position: absolute;
  content: "";
  top: 560px;
  right: -20px;
  width: 440px;
  height: 446px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  z-index: -1;
  background: url(../img/column/bg01.svg) no-repeat center/cover;
}
.p-column-list::after {
  position: absolute;
  content: "";
  top: 43px;
  left: 0px;
  width: 437px;
  height: 423px;
  z-index: -1;
  background: url(../img/column/bg02.svg) no-repeat center/cover;
}
.p-column-list.phase-before::before {
  top: auto;
  bottom: 40px;
}
.p-column-list .controls {
  margin-top: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-right: 0;
  margin-left: auto;
}
.p-column-list .controls .select-box select {
  border-color: #EBEBEB;
  background: #fff;
}
.p-column-list .controls .select-box::after, .p-column-list .controls .select-box::before {
  background: #888;
}
.p-column-list .c-column-list {
  margin-top: 25px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 40px 60px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
}
.p-column-list .c-column-list::after {
  position: absolute;
  content: "";
  bottom: -110px;
  width: 248px;
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
  height: 220px;
  left: -150px;
  z-index: -1;
  background: url(../img/column/bg02.svg) no-repeat center/cover;
}
.p-column-list .c-column-list > li {
  border-radius: 8px;
  background: #fff;
  width: calc(50% - 30px);
}
.p-column-list .c-column-list > li > a {
  padding: 19px 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 8px;
  border: 1px solid #EBEBEB;
  background: #fff;
  gap: 30px;
}
.p-column-list .c-column-list > li .thumb {
  width: 210px;
  height: 140px;
}
.p-column-list .c-column-list > li .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-column-list .c-column-list > li .txt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: calc(100% - 240px);
}
.p-column-list .c-column-list > li .txt-wrap .ttl {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 400;
}
.p-column-list .c-column-list > li .txt-wrap .date {
  line-height: 1.2142857143;
  font-size: 14px;
  text-align: right;
}
.p-column-list .c-ttl-column {
  margin: 50px auto 0;
  font-weight: bold;
  font-size: 24px;
  padding-left: 48px;
  gap: 23px;
  text-align: center;
  line-height: 1.25;
}
.p-column-list .c-ttl-column .word {
  position: relative;
  line-height: 1.25;
}
.p-column-list .c-ttl-column .word::after {
  position: absolute;
  content: "";
  left: -48px;
  top: 2px;
  width: 25px;
  height: 30px;
  background: url(../img/column/ico_ttl.svg) no-repeat center/contain;
}
.p-column-list .c-ttl-column.type02 {
  padding-left: 50px;
}
.p-column-list .c-ttl-column.type02 .word::after {
  width: 30px;
  height: 30px;
  left: -50px;
  background: url(../img/column/ico_ttl02.svg) no-repeat center/contain;
}
.p-column-list .c-phase-list {
  margin-top: 30px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.p-column-list .c-phase-list .lead {
  padding: 4px 0;
  text-align: center;
  background: #C5C5C5;
  border: 1px solid #fff;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  display: block;
}
.p-column-list .c-phase-list .img {
  margin-top: 10px;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 83px;
}
.p-column-list .c-phase-list > li {
  width: 195px;
}
.p-column-list .c-phase-list > li .lead {
  border: 1px solid #fff;
  position: relative;
  border-radius: 0 20px 20px 0;
}
.p-column-list .c-phase-list > li.active .lead {
  background: #8776D0;
}
.p-column-list .c-phase-list > li.active .lead::after {
  position: absolute;
  content: "";
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid #8776D0;
  border-radius: 10px;
}
.p-column-list .c-phase-list > li:nth-child(1) .lead {
  border-radius: 20px;
  z-index: 3;
  width: 200px;
}
.p-column-list .c-phase-list > li:nth-child(1) .img {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-column-list .c-phase-list > li:nth-child(1) .img img {
  width: 28px;
  margin-left: 5px;
  height: 74px;
}
.p-column-list .c-phase-list > li:nth-child(2) .lead {
  left: -20px;
  z-index: 2;
  width: 220px;
}
.p-column-list .c-phase-list > li:nth-child(2) .img {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-column-list .c-phase-list > li:nth-child(2) .img img {
  width: 53px;
}
.p-column-list .c-phase-list > li:nth-child(3) .lead {
  left: -20px;
  z-index: 1;
  width: 215px;
}
.p-column-list .c-phase-list > li:nth-child(3) .img {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.p-column-list .c-phase-list > li:nth-child(3) .img img {
  margin-right: 5px;
  width: 49px;
}
.p-column-list .c-phase-list.fourth > li {
  width: 147px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(1) .lead {
  width: 160px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(2) .lead {
  width: 164px;
  left: -10px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(3) .lead {
  width: 164px;
  left: -7px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(3) .img {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-column-list .c-phase-list.fourth > li:nth-child(3) .img img {
  width: 47px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(4) .lead {
  width: 164px;
  left: -17px;
}
.p-column-list .c-phase-list.fourth > li:nth-child(4) .img {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.p-column-list .c-phase-list.fourth > li:nth-child(4) .img img {
  margin-right: 15px;
  width: 49px;
}
.p-column-list .tag-list.q-list {
  margin-top: 45px;
}
.p-column-list .tag-list.q-list > li .nav-btn {
  padding-left: 20px;
}
.p-column-list .tag-list.q-list > li::after {
  display: none;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.c-column-header {
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.c-column-header.is-collar {
  background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
  background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
}
.c-column-header .main-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 70px;
  padding: 25px 0 24px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-column-header .main-header .inner-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-column-header .main-header .header-cont {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 46px;
  width: calc(100% - 300px);
}
.c-column-header .main-header .logo {
  width: 204px;
}
.c-column-header .main-header .logo > a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
}
.c-column-header .main-header .logo > a img {
  width: 100%;
}
.c-column-header .main-header .search-input-area {
  height: 50px;
  width: calc(100% - 250px);
}
.c-column-header .main-header .menu-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.c-column-header .main-header .menu-area .c-btn04::before {
  -webkit-mask-image: url(../img/common/ico-arrow03.svg);
          mask-image: url(../img/common/ico-arrow03.svg);
  height: 22px;
  width: 12px !important;
  right: 12px;
}
.c-column-header .search-input-area input {
  font-size: 16px;
  padding: 0 64px 1px 29px;
  line-height: 49px;
}
.c-column-header .search-input-area input::-webkit-input-placeholder {
  color: #777777;
}
.c-column-header .search-input-area input::-moz-placeholder {
  color: #777777;
}
.c-column-header .search-input-area input:-ms-input-placeholder {
  color: #777777;
}
.c-column-header .search-input-area input::-ms-input-placeholder {
  color: #777777;
}
.c-column-header .search-input-area input::placeholder {
  color: #777777;
}
.c-column-header .menu-modal {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 1001;
  height: 100vh;
  overflow-y: auto;
  position: fixed;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
  background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
  opacity: 0;
  pointer-events: none;
}
.c-column-header .menu-modal.active {
  opacity: 1;
  pointer-events: visible;
}
.c-column-header .menu-modal .modal-inner {
  padding: 60px 0 0;
  background: #fff;
}
.c-column-header .menu-modal .modal-nav {
  border-bottom: 1px solid #EBEBEB;
}
.c-column-header .menu-modal .modal-nav > li {
  letter-spacing: 0.2em;
  border-top: 1px solid #EBEBEB;
}
.c-column-header .menu-modal .bot-wrap {
  margin-top: 20px;
  text-align: center;
  padding: 63px 0 30px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.c-column-header .menu-modal .bot-wrap::after {
  background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
  background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
  position: absolute;
  content: "";
  z-index: -1;
  top: 0;
  width: 130.6666666667vw;
  height: 130.6666666667vw;
  left: -15.3333333333vw;
  border-radius: 50%;
}
.c-column-header .menu-modal .bot-wrap .c-ico-list {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
.c-column-header .menu-modal .bot-wrap .c-btn04 {
  margin: 0 auto;
  width: 185px;
  padding: 6px 20px 6px 10px;
  font-size: 12px;
}
.c-column-header .menu-modal .bot-wrap .c-btn04 img {
  width: 30px;
  height: 28px;
}
.c-column-header .menu-modal .bot-wrap .c-btn04::after, .c-column-header .menu-modal .bot-wrap .c-btn04::before {
  right: 7px;
  width: 9px;
  top: 5px;
}
.c-column-header .menu-modal .bot-wrap .c-btn04::after {
  top: -7px;
}

.c-column-footer {
  background: url(../img/column/footer_bg.jpg.webp) no-repeat center center/cover;
  padding: 67px 0 56px;
  text-align: center;
  position: relative;
}
.c-column-footer .top-wrap {
  gap: 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-column-footer .copy {
  font-size: 14px;
  margin-top: 30px;
  line-height: 1.2142857143;
  font-weight: 300;
}
.c-column-footer .c-ico-list {
  gap: 20px;
}
.c-column-footer .c-ico-list > li {
  width: 50px;
  height: 50px;
}
.c-column-footer .c-btn04 {
  width: 185px;
  padding: 6px 20px 6px 10px;
  font-size: 12px;
}
.c-column-footer .c-btn04 img {
  width: 30px;
  height: 28px;
}
.c-column-footer .c-btn04::after, .c-column-footer .c-btn04::before {
  right: 7px;
  width: 9px;
  top: 5px;
}
.c-column-footer .c-btn04::after {
  top: -7px;
}

.p-column {
  overflow: hidden;
  position: relative;
  padding-top: 18px;
}
.p-column .global-navigation {
  background: transparent;
}
.p-column .global-navigation .tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 12.5px;
}
.p-column .global-navigation .tags > li {
  width: calc((100% - 50px) / 5);
}
.p-column .global-navigation .tags .nav-btn02 {
  letter-spacing: 0.04em;
  padding: 13px 19px 13px;
}
.p-column .tag-list {
  margin-top: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 40px 27px;
}
.p-column .tag-list > li {
  background: #fff;
  border-radius: 8px;
  width: calc((100% - 81px) / 4);
}
.p-column .tag-list .nav-btn {
  padding: 8px 30px 8px 20px;
  height: 54px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.25;
}
.p-column .tag-list .nav-btn::after, .p-column .tag-list .nav-btn::before {
  right: 8px;
}
.p-column .tag-list.q-list {
  gap: 40px 60px;
}
.p-column .tag-list.q-list > li {
  width: calc((100% - 60px) / 2);
  position: relative;
}
.p-column .tag-list.q-list > li::after {
  position: absolute;
  content: "";
  left: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 34px;
  width: 41px;
  background: url(../img/common/ico_q.svg) no-repeat center/contain;
}
.p-column .tag-list.q-list .nav-btn::after, .p-column .tag-list.q-list .nav-btn::before {
  right: 20px;
}
.p-column .tag-list.q-list .nav-btn {
  padding: 8px 35px 8px 60px;
}
.p-column .tag-list .c-arrow::before {
  background: #8776D0;
  content: "";
  -webkit-mask-image: url(../img/common/ico-arrow.svg);
          mask-image: url(../img/common/ico-arrow.svg);
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  height: 22px;
  width: 12px;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.p-column .tag-list .c-arrow::after {
  content: none;
}
.p-column .c-paging-area {
  margin-top: 80px;
}

.c-bg-wrap {
  position: relative;
}
.c-bg-wrap.top::before {
  content: none;
}
.c-bg-wrap.top .c-column-header.is-collar {
  background: url(../img/common/bg.jpg.webp) no-repeat center center/cover;
}
.c-bg-wrap::before {
  background: url(../img/column/header_bg.jpg.webp) no-repeat center center/cover;
  content: "";
  height: 200px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.c-bg-wrap .global-navigation {
  background-color: transparent;
  padding-top: 120px;
  position: relative;
  z-index: 5;
}

.social-login-btn-wrap {
  margin-top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.social-login-btn-wrap .c-btn02 {
  margin-top: 10px;
}

#wrapper .modal-line-login-notice .modal__inner,
#wrapper .modal-register-line-notice .modal__inner {
  max-width: 800px;
}
#wrapper .modal-line-login-notice .modal__cont,
#wrapper .modal-register-line-notice .modal__cont {
  width: 800px;
}
#wrapper .modal-line-login-notice .modal__ttl,
#wrapper .modal-register-line-notice .modal__ttl {
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 20px;
}
#wrapper .modal-line-login-notice .modal__list,
#wrapper .modal-register-line-notice .modal__list {
  margin: 0 0 10px;
}
#wrapper .modal-line-login-notice .modal__list li + li,
#wrapper .modal-register-line-notice .modal__list li + li {
  margin-top: 0;
}
#wrapper .modal-line-login-notice .modal__agree-btn,
#wrapper .modal-register-line-notice .modal__agree-btn {
  margin-top: 20px;
}

#wrapper .category-product-genre-section .c-table01 {
  table-layout: fixed;
}
#wrapper .category-product-genre-section .c-table01 th {
  width: 150px;
  text-align: left;
}
#wrapper .category-product-genre-section .c-table01 td {
  width: 256px;
  text-align: left;
}
#wrapper .category-product-genre-section .c-table01 td:first-child {
  background: none;
}
#wrapper .category-product-genre-section .c-table01 img {
  width: 240px;
  max-height: 240px;
}
#wrapper .category-product-genre-section p + .c-table01 {
  margin-top: 20px;
}

#wrapper .category-product-caption-section p + .c-table-box .c-table01 {
  margin-top: 0;
}
#wrapper .category-product-caption-section .c-table01 td:first-child {
  background: none;
}
#wrapper .category-product-caption-section .c-table01 {
  table-layout: fixed;
}
#wrapper .category-product-caption-section .c-table01 th {
  width: 150px;
  text-align: left;
}
#wrapper .category-product-caption-section .c-table01 td {
  width: 296px;
  text-align: left;
}
#wrapper .category-product-caption-section .c-table01 img {
  width: 280px;
  max-height: 280px;
}
#wrapper .category-product-caption-section table img {
  max-width: 400px;
  width: 100%;
}

#wrapper .category-product-genre-section .c-table01.new-tpl,
#wrapper .category-product-caption-section .c-table01.new-tpl {
  table-layout: fixed;
}
#wrapper .category-product-genre-section .c-table01.new-tpl th,
#wrapper .category-product-genre-section .c-table01.new-tpl td,
#wrapper .category-product-caption-section .c-table01.new-tpl th,
#wrapper .category-product-caption-section .c-table01.new-tpl td {
  width: 209px;
  text-align: center;
}
#wrapper .category-product-genre-section .c-table01.new-tpl th:not(:first-child),
#wrapper .category-product-genre-section .c-table01.new-tpl td:not(:first-child),
#wrapper .category-product-caption-section .c-table01.new-tpl th:not(:first-child),
#wrapper .category-product-caption-section .c-table01.new-tpl td:not(:first-child) {
  min-width: 209px;
}
#wrapper .category-product-genre-section .c-table01.new-tpl td:first-child,
#wrapper .category-product-caption-section .c-table01.new-tpl td:first-child {
  background: #EBE6FF;
}
#wrapper .category-product-genre-section .c-table01.new-tpl img,
#wrapper .category-product-caption-section .c-table01.new-tpl img {
  width: 100%;
  max-width: 80px;
  max-height: none;
  height: auto;
}
#wrapper .category-product-genre-section .c-table01.new-tpl thead th:not(:first-child),
#wrapper .category-product-caption-section .c-table01.new-tpl thead th:not(:first-child) {
  background: #fff;
}
#wrapper .category-product-genre-section .c-table01.new-tpl thead a,
#wrapper .category-product-caption-section .c-table01.new-tpl thead a {
  text-decoration: none;
}

.p-product-detail .product-item-swiper .img.is-no-image::before,
.p-product-detail .thumb-wrapper .thumb-media.is-no-image::before {
  content: none;
}

.c-product-list > li .thumb.is-no-image::after {
  content: none;
}

.home-notice-section {
  margin: 20px 0;
  position: relative;
  z-index: 10;
}
.home-notice-section .mv__head-more {
  position: relative;
  background: #E9E9E9;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 10px 20px 10px 50px;
  font-weight: bold;
  border-radius: 5px;
}
.home-notice-section .mv__head-more:before {
  background: url(../img/common/ico_alert_gray.svg) no-repeat center center/contain;
  content: "";
  position: absolute;
  left: 15px;
  top: 11px;
  width: 24px;
  height: 24px;
}
.home-notice-section .mv__head-more.orderNote {
  background: #ffe9e9;
  color: #ED0D32;
  margin-top: 10px;
}
.home-notice-section .mv__head-more.orderNote:before {
  background: url(../img/common/ico_alert_red.svg) no-repeat center center/contain;
}
.home-notice-section .mv__head-more .newsTitle {
  width: calc(100% - 150px);
}
.home-notice-section .mv__head-more .other {
  color: #9F9F9F;
  font-size: 14px;
  font-weight: normal;
  width: 150px;
  text-align: right;
}
.home-notice-section .mv__head-more .maybe-already {
  font-size: 12px;
  display: block;
}
.home-notice-section .mv__head-more .unread {
  font-size: 12px;
  margin-left: 10px;
}

.review-input-category {
  line-height: 44px;
}

#social-login-wrap {
  gap: 40px;
}
#social-login-wrap .social-login-btn-wrap {
  margin-top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.mobile-footer-menu-buttons {
  display: none !important;
}

#wrapper.column-header-page {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  overflow: hidden;
}
#wrapper.column-header-page .c-column-footer {
  overflow: visible;
}
#wrapper.column-header-page .global-navigation .tags .nav-btn02 {
  letter-spacing: 0.04em;
}

.p-column-top .pickup-swiper .foot .tags {
  padding-left: 0;
  list-style: none;
}

.p-column .tag-list {
  padding-left: 0;
  list-style: none;
}
.p-column .tag-list .nav-btn {
  color: #333;
}

.global-navigation .tags {
  padding-left: 0;
  list-style: none;
}

.p-column .global-navigation .tags,
.p-column-list .c-column-list {
  padding-left: 0;
  list-style: none;
}

.p-column-list .c-column-list > li > a {
  color: #333;
}

.c-paging-area .num {
  color: #333;
}

#wrapper.column-article .c-column-header {
  background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
  background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
}

article.article.type-post.post,
.p-column-list {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
}

article.article.type-post.post {
  padding-top: 120px;
  padding-left: 40px;
  padding-right: 40px;
  max-width: 1080px;
  margin: auto;
}
article.article.type-post.post .wp-block-list li a {
  color: #8776D0;
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
  text-underline-offset: 2px;
}
article.article.type-post.post .article-header {
  margin-top: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid #8776D0;
  margin-bottom: 20px;
}
article.article.type-post.post .article-header .entry-title {
  padding: 0;
  margin: 0;
}
article.article.type-post.post .article-header .date-tags {
  margin-bottom: 0;
}
article.article.type-post.post .article-header .date-tags .post-date {
  margin-right: 0;
  padding: 0;
  font-size: 14px;
  display: block;
}
article.article.type-post.post .article-header .date-tags .post-date + .post-date {
  margin-top: 10px;
}
article.article.type-post.post .article-header .date-tags .post-date .entry-date {
  margin-left: 0;
}
article.article.type-post.post .entry-categories-tags {
  margin-top: 20px;
}
article.article.type-post.post .entry-categories-tags .entry-categories {
  display: block;
}
article.article.type-post.post .columns-thumb {
  margin-block: 30px;
  text-align: center;
}
article.article.type-post.post .entry-content {
  margin-top: 40px;
}
article.article.type-post.post #toc .toc-content > ol > li > a {
  font-weight: bold;
}
article.article.type-post.post #toc_container {
  display: block;
  position: relative;
  max-width: 470px;
  margin: 0 auto 60px;
  padding: 20px 30px;
  background: #f9f9f9;
  border: 1px solid #aaa;
  width: auto;
}
article.article.type-post.post #toc_container .toc_title {
  display: block;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 15px;
  line-height: 1.4;
}
article.article.type-post.post #toc_container ul {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
article.article.type-post.post #toc_container ul li {
  font-size: 14px;
}
article.article.type-post.post #toc_container ul ul {
  margin-left: 20px;
}
article.article.type-post.post #toc_container.is-collapse {
  height: 250px;
  position: relative;
  overflow: hidden;
}
article.article.type-post.post #toc_container.is-collapse::after {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 0;
  width: 100%;
  height: 100px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(60%, rgb(249, 249, 249)), to(rgb(249, 249, 249)));
  background: linear-gradient(180deg, transparent 0%, rgb(249, 249, 249) 60%, rgb(249, 249, 249) 100%);
}
article.article.type-post.post #toc_container .btn-toggle {
  display: inline-block;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 1rem;
  z-index: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 100px;
  margin: 0 auto;
  padding: 5px 10px;
  font-size: 14px;
  color: #8776D0;
  cursor: pointer;
  border: none;
  border-radius: 4rem;
  background: #F0F0F0;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
article.article.type-post.post .author-area {
  margin-top: 40px;
}
article.article.type-post.post .author-area .author-ttl {
  margin-bottom: 20px;
  padding: 0;
  border: none;
  padding-left: 40px;
  position: relative;
}
article.article.type-post.post .author-area .author-ttl::before {
  background: #8776D0;
  -webkit-mask: url(../img/common/ico_user.svg) no-repeat center center/contain;
          mask: url(../img/common/ico_user.svg) no-repeat center center/contain;
  content: "";
  display: block;
  width: 31px;
  height: 31px;
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  margin: auto;
}
article.article.type-post.post .author-area .column-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #333;
}
article.article.type-post.post .author-area .column-wrap p {
  margin-bottom: 0;
}
article.article.type-post.post .author-area .column-wrap .img {
  width: 120px;
}
article.article.type-post.post .author-area .column-wrap .txt-area {
  width: calc(100% - 120px);
  padding-left: 16px;
}
article.article.type-post.post .author-area .column-wrap .txt-area .name {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 4px;
}
article.article.type-post.post .author-area .column-wrap .txt-area .detail {
  font-size: 15px;
}
article.article.type-post.post .entry-tags {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
article.article.type-post.post .entry-tags .tag-link {
  margin-right: 0;
}

.under-entry-content {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 60px;
  max-width: 1080px;
  margin: auto;
}
.under-entry-content .related-entries {
  margin-bottom: 0;
}
.under-entry-content .related-entries .related-entries,
.under-entry-content .related-entries .related-list {
  margin-bottom: 0;
}
.under-entry-content .rect-mini-card .related-entry-card-wrap {
  background: #fff;
  border-radius: 8px;
  border: 1px solid #EBEBEB;
  padding: 16px;
}
.under-entry-content article.e-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.under-entry-content article.e-card .related-entry-card-thumb {
  margin-bottom: 3px;
  float: inherit;
  width: 120px;
  margin: 0;
}
.under-entry-content article.e-card .related-entry-card-content {
  margin-left: 0;
  width: calc(100% - 120px);
  padding-left: 10px;
  padding-bottom: 0;
}
.under-entry-content article.e-card .related-entry-card-title {
  margin-bottom: 0;
}
.under-entry-content + .c-column-footer {
  margin-top: -20px;
}

/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.p-staff-recommend {
  padding-bottom: 80px;
}
.p-staff-recommend .mv-section {
  margin-top: 30px;
}
.p-staff-recommend .main-ttl {
  text-align: center;
  margin: 39px auto 30px;
}
.p-staff-recommend .lead {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 41px;
}
.p-staff-recommend .item-list-area {
  background: #034b92;
  padding: 37px 39px 80px;
}
.p-staff-recommend .item-list-area .item-ttl {
  margin-bottom: 41px;
}
.p-staff-recommend .item-list-area .item-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.p-staff-recommend .item-list-area .item-list + .item-ttl {
  margin-top: 39px;
}

/* -----------------------------------------------
* search Module
* searchページ用
-------------------------------------------------- */
.p-search .js--result .wrap {
  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;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
.p-search .js--result .controls {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 5px 25px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-search .js--result .controls .select-box:nth-child(1) {
  width: 160px;
}
.p-search .js--result .controls .select-box:nth-child(2) {
  width: 220px;
}
.p-search .js--result .controls select {
  padding-top: 11px;
  padding-bottom: 11px;
  width: 100% !important;
  font-size: 16px !important;
}
.p-search .down-search-area {
  background: #F6F4FF;
  border-radius: 6px;
  margin: 30px auto 20px;
}
.p-search .down-search-area .down-search-head {
  cursor: pointer;
  font-size: 18px;
  font-weight: bold;
  padding: 12px 30px;
  position: relative;
}
.p-search .down-search-area .down-search-head::before, .p-search .down-search-area .down-search-head::after {
  background: #8776D0;
  content: "";
  height: 2px;
  width: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-search .down-search-area .down-search-head::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-search .down-search-area .down-search-head.is-open::after {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.p-search .down-search-area .down-search-body {
  padding: 0 30px 20px;
  display: none;
}
.p-search .down-search-area .down-search-body .inn-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: min(60px, 4.1666666667vw);
}
.p-search .down-search-area .down-search-body .label-box {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
}
.p-search .down-search-area .down-search-body .label-ttl {
  font-size: 16px;
  font-weight: bold;
}
.p-search .down-search-area .down-search-body .checkbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 20px;
}
.p-search .down-search-area .down-search-body .checkbox input[type=checkbox] {
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
}
.p-search .down-search-area .down-search-body .checkbox .text {
  font-size: 16px;
  font-weight: 400;
  display: inline-block;
  position: relative;
  padding-left: 34px;
}
.p-search .down-search-area .down-search-body .checkbox .text::before {
  border-radius: 4px;
  position: absolute;
  top: 1px;
  left: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #777777;
  background: #fff;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-search .down-search-area .down-search-body .checkbox .text::after {
  background: url(../img/common/ico-check.svg) no-repeat center center/contain;
  position: absolute;
  top: 8px;
  left: 4px;
  margin: auto;
  width: 16px;
  height: 11px;
  content: "";
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-search .down-search-area .down-search-body .checkbox input:checked + span::after {
  opacity: 1;
}
.p-search .down-search-area .down-search-body .input-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 12px;
  position: relative;
}
.p-search .down-search-area .down-search-body .input-wrap input {
  background: #fff;
  border: 1px solid #737373;
  border-radius: 6px;
  max-width: 130px;
  padding: 7px 7px 6px 20px;
}
.p-search .down-search-area .down-search-body .input-area {
  position: relative;
}
.p-search .down-search-area .down-search-body .input-area::before {
  content: "￥";
  position: absolute;
  top: 0;
  left: 7px;
  bottom: 0;
  margin: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.sitemap {
  margin-top: 60px;
}
.sitemap__row {
  padding: 16px 0;
  border-bottom: 1px solid #e5e7eb;
}
.sitemap__row:first-child {
  border-top: 1px solid #e5e7eb;
}
.sitemap__parent {
  font-size: 20px;
}
.sitemap__parent .c-arrow {
  position: relative;
  padding: 4px 0 4px 24px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.sitemap__parent .c-arrow::before, .sitemap__parent .c-arrow::after {
  right: auto;
  left: 0;
  top: 8px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  width: 12px;
}
.sitemap__parent .c-arrow::after {
  top: -8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.sitemap__parent a {
  color: inherit;
  background-color: transparent;
}
.sitemap__parent--category {
  font-size: 20px;
}
.sitemap__children {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  padding-left: 16px;
  gap: 10px 20px;
  margin-top: 10px;
}
.sitemap__child {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 17px;
}
.sitemap__child .c-arrow {
  padding: 4px 0 4px 20px;
  position: relative;
}
.sitemap__child .c-arrow::before, .sitemap__child .c-arrow::after {
  right: auto;
  left: 0;
  top: 18px;
  bottom: auto;
  width: 10px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.sitemap__child .c-arrow::after {
  top: 12px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

/* -----------------------------------------------
* redit_search
* redit_searchページ用
-------------------------------------------------- */
.redit_search .pt-40 {
  margin-top: 40px;
}
.redit_search .c-section .contents table:not([class]) {
  width: 100%;
}
.redit_search .c-section .contents table:not([class]) thead {
  text-align: left;
}
.redit_search .txt.bold {
  font-weight: bold;
}
.redit_search .search-area {
  width: 70%;
  background: #F6F4FF;
  border-radius: 10px;
  padding: 50px 30px;
  margin: 20px auto 0;
}
.redit_search .search-area .search-input-area {
  width: 100%;
}
.redit_search .search-area .txt {
  text-align: center;
}

/* -----------------------------------------------
* new-main-category Module
* new-main-categoryページ用
-------------------------------------------------- */
.new-main-category .category-thumb .thumb {
  margin-bottom: 20px;
}
.new-main-category .purple {
  color: #8776D0;
}
.new-main-category .new-tpl_shape-list li a {
  height: 100%;
}
.new-main-category .c-table01 .thumb td a {
  display: inline-block;
  font-weight: bold;
  margin-bottom: 10px;
}
.new-main-category .new-tpl_anchor-link.mt-20 {
  margin-top: 10px;
}
.new-main-category .new-tpl_anchor-wrap.small .anchor-list li a .img {
  max-width: 24px;
}
.new-main-category .new-tpl_comment-box {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 30px;
  margin-top: 20px;
}
.new-main-category .new-tpl_comment-box .item-info {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 59px;
  width: 55.26%;
}
.new-main-category .new-tpl_comment-box .item-info .txt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
}
.new-main-category .new-tpl_comment-box .item-info .txt-wrap .c-rate-wrap .star {
  height: 30px;
  width: 30px;
}
.new-main-category .new-tpl_comment-box .item-info .ttl {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 8px;
}
.new-main-category .new-tpl_comment-box .item-info .star-wrap {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 37px;
}
.new-main-category .new-tpl_comment-box .item-info .point {
  font-size: 20px;
  font-weight: bold;
}
.new-main-category .new-tpl_comment-box .item-info .txt {
  font-size: 20px;
  margin-top: 11px;
}
.new-main-category .new-tpl_comment-box .item-info .img img {
  min-width: 100px;
}
.new-main-category .new-tpl_comment-box .item-info .c-btn03.register-btn {
  margin-left: 0;
  width: 290px;
}
.new-main-category .new-tpl_comment-box .comment-wrap {
  width: 44.74%;
}
.new-main-category .new-tpl_comment-box .comment-wrap .c-btn03 {
  margin-top: 30px;
  width: 100%;
}
.new-main-category .new-tpl_comment-box .comment-list li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
}
.new-main-category .new-tpl_comment-box .comment-list li + li {
  margin-top: 30px;
}
.new-main-category .new-tpl_comment-box .comment-list .star-wrap {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
}
.new-main-category .new-tpl_comment-box .c-btn03 {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin: auto auto 0;
}
.new-main-category .new-tpl_flex.mt-17 {
  margin-top: 17px;
}
.new-main-category .new-tpl_flex .txt-wrap * + p.note {
  color: #777;
  margin-top: 0;
}
.new-main-category .new-tpl_flex .w-103 table th:first-child, .new-main-category .new-tpl_flex .w-103 table td:first-child {
  width: 103px;
}
.new-main-category .new-tpl_flex .w-255.center th {
  text-align: center !important;
}
.new-main-category .new-tpl_flex .w-255.center td:first-child {
  text-align: center;
}
.new-main-category .new-tpl_flex .w-255 table th:first-child, .new-main-category .new-tpl_flex .w-255 table td:first-child {
  width: 255px;
}
.new-main-category .new-tpl_flex table .w-280 {
  display: block;
  margin: auto;
  max-width: 280px;
}
.new-main-category .new-tpl_flex table th {
  color: #8776D0;
}
.new-main-category .new-tpl_flex table th, .new-main-category .new-tpl_flex table td {
  font-weight: 400;
  font-size: 15px;
  padding: 9px 12px !important;
}
.new-main-category .new-tpl_flex .center {
  text-align: center !important;
}
.new-main-category .new-tpl_flex .info-box p {
  font-size: 14px;
  line-height: 1.3;
}
.new-main-category .c-section .contents h3.mt-20 {
  margin-top: 20px;
}
.new-main-category .info-box {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 10px;
  border: 1px solid #D9D9D9;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
  padding: 15px 19px;
  margin-top: 20px;
}
.new-main-category .info-box .ico img {
  max-width: 33px;
}
.new-main-category .info-box p {
  margin-top: 0 !important;
}
.new-main-category .department-wrap {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 38px;
  margin-top: 20px;
}
.new-main-category .department-wrap .l-left {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
}
.new-main-category .department-wrap .ico img {
  max-width: 70px;
}
.new-main-category .department-wrap .ttl {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}
.new-main-category .department-wrap a {
  background: #EBE6FF;
  border-radius: 100px;
  display: inline-block;
  color: #8776D0;
  font-size: 16px;
  padding: 2px 15px 4px;
}
.new-main-category .department-wrap .l-right p {
  font-size: 16px;
  line-height: 1.1875;
}
.new-main-category .new-tpl_purpose-list.reference a {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 15px;
  padding: 16px 60px 16px 16px;
  height: 100%;
}
.new-main-category .new-tpl_purpose-list.reference .txt {
  padding: 0;
  line-height: 1.2222222222;
  margin-bottom: 3px;
}
.new-main-category .new-tpl_purpose-list.reference .sub-txt {
  font-size: 16px;
  line-height: 1.1875;
}
.new-main-category .new-tpl_purpose-list.reference .ico img {
  max-height: 30px;
}
.new-main-category .type-list a {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  padding: 10px 30px !important;
}
.new-main-category .type-list img {
  max-width: 40px;
}
.new-main-category .column-section .c-ttl02 {
  padding: 6px 0 17px 30px;
  border-bottom: 1px dashed #777777;
}
.new-main-category .column-section .c-ttl02::after {
  height: calc(100% - 9px);
}
.new-main-category .column-section .c-btn03 {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-left: auto;
  width: 345px;
}
.new-main-category .column-section .c-arrow::before, .new-main-category .column-section .c-arrow::after {
  width: 14px;
}
.new-main-category .column-section .c-arrow::before {
  top: 9px;
}
.new-main-category .column-section .c-arrow::after {
  top: -8px;
}
.new-main-category .column-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
  margin-top: 30px;
  margin-bottom: 30px;
}
.new-main-category .column-list a {
  border: 1px solid #EBEBEB;
  border-radius: 10px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  padding: 30px 19px;
}
.new-main-category .column-list a .txt {
  display: block;
  font-size: 16px;
  line-height: 1.1875;
  margin-top: 0;
}
.new-main-category .column-list a .day {
  display: block;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2142857143;
  margin-top: 27px;
  text-align: right;
}
.new-main-category .column-list a .img {
  overflow: hidden;
  max-width: 150px;
}
.new-main-category .column-list a .img img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 14px;
  }
  body {
    position: relative;
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
  }
  input,
  select,
  textarea {
    font-size: 16px !important;
  }
  .select-box select {
    font-size: 18px !important;
  }
  .select-box.item-num::before {
    right: 9px;
    width: 8px;
  }
  .select-box.item-num::after {
    width: 8px;
    right: 4px;
  }
  main {
    padding-top: 115px;
  }
  .c-header.has-campaign + main {
    padding-top: 145px;
  }
  .c-header.has-campaign.campaign-row-2 + main {
    padding-top: 165px;
  }
  #wrapper {
    min-width: 320px;
  }
  .inner-block {
    padding-left: 15px;
    padding-right: 15px;
  }
  .pc {
    display: none !important;
  }
  .c-header .main-header {
    padding: 10px;
    height: 115px;
  }
  .c-header .main-header .header-cont {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    gap: 7px;
  }
  .c-header .main-header .header-cont + .header-cont {
    margin-top: -5px;
  }
  .c-header .main-header .c-ico-list.sp > li:nth-child(2) img {
    position: relative;
    left: -1px;
  }
  .c-header .nav-block {
    margin-left: -15px;
    width: calc(100% + 30px);
  }
  .c-header .menu-modal .top-wrap .btns > li > a {
    padding: 7px 10px;
  }
  .c-header .menu-modal .top-wrap .btns > li.wide:not(.ico-user) > a {
    padding: 5px 10px;
  }
  .header-campaign-area {
    border-radius: 0 0 10px 10px;
  }
  .header-campaign-area .header-campaign-area-inner {
    border-radius: 0 0 10px 10px;
    gap: 0 14px;
    padding: 4px 0 5px;
  }
  .header-campaign-area .ttl {
    gap: 10px;
  }
  .header-campaign-area .ico {
    width: 16px;
    position: relative;
    height: 16px;
  }
  .global-navigation {
    margin: 20px 0 10px;
    padding: 0;
    background: #fff;
  }
  .global-navigation .inner-block {
    padding: 0;
  }
  .global-navigation .tags {
    gap: 0;
    border-bottom: 1px solid #EBEBEB;
  }
  .global-navigation .tags > li:not(.is-cat) .c-tags-outer {
    padding: 0;
    gap: 0;
  }
  .global-navigation .tags > li:not(.is-cat) .c-tags-outer > li {
    width: 100%;
  }
  .global-navigation .tags > li:not(.is-cat) .c-tags-outer > li .nav-btn {
    min-height: auto;
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #EBEBEB;
    padding: 10px 40px 11px 30px;
    line-height: 1.2222222222;
    font-size: 18px;
  }
  .global-navigation .tags > li:not(.is-cat) .c-tags-outer > li .nav-btn::before, .global-navigation .tags > li:not(.is-cat) .c-tags-outer > li .nav-btn::after {
    right: 24px;
  }
  #pagetop {
    width: 50px;
    height: 50px;
    bottom: 100px;
    right: 10px;
  }
  .c-footer {
    padding: 20px 0 100px;
  }
  .c-footer .top-wrap {
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-footer .logo {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .c-footer .c-ico-list {
    gap: 20px;
  }
  .c-footer .foot-nav {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    font-size: 16px;
    gap: 10px 20px;
    margin: 20px auto;
    text-align: center;
  }
  .c-ttl01 {
    margin-top: 45px;
    font-size: 24px;
    line-height: 1.2083333333;
  }
  .c-ttl01.new-tpl {
    margin-top: 0 !important;
  }
  .c-ttl02 {
    font-size: 20px;
    padding: 0 0 0 15px;
    line-height: 1.5;
  }
  .c-ttl02::after {
    width: 6px;
  }
  .c-section .contents h3, .c-ttl03 {
    border-radius: 15px;
    width: 100%;
    line-height: 1.25;
    font-size: 16px;
    padding: 5px 15px;
  }
  .c-ttl04 {
    margin-bottom: 20px;
  }
  .js--favorite {
    width: 21px;
    height: 19px;
  }
  .search-input-area {
    height: 35px;
    width: 100%;
  }
  .search-input-area input {
    padding: 0 40px 1px 13px;
    line-height: 34px;
    font-size: 16px;
  }
  .search-input-area input::-webkit-input-placeholder {
    font-size: 14px;
  }
  .search-input-area input::-moz-placeholder {
    font-size: 14px;
  }
  .search-input-area input:-ms-input-placeholder {
    font-size: 14px;
  }
  .search-input-area input::-ms-input-placeholder {
    font-size: 14px;
  }
  .search-input-area input::placeholder {
    font-size: 14px;
  }
  .search-input-area .search-suggest-box {
    border-radius: 8px;
    top: calc(100% + 6px);
  }
  .search-input-area .search-suggest-box button {
    padding: 9px 13px;
    font-size: 14px;
  }
  .search-input-area .search-keyword-list {
    display: none;
  }
  .search-input-area .search-keyword-list {
    gap: 4px 10px;
    top: calc(100% + 6px);
    padding: 0 4px;
    font-size: 12px;
  }
  .c-arrow::after, .c-arrow::before {
    right: 15px;
  }
  .c-arrow.active::after, .c-arrow.active::before {
    right: 38px;
  }
  .c-arrow.active::after {
    right: 29px;
  }
  .c-arrow.active {
    background: #F6F4FF;
    color: #333;
  }
  .c-arrow.active::after, .c-arrow.active::before {
    background: #8776D0;
  }
  .c-arrow.is-active.is-active::after, .c-arrow.is-active.is-active::before {
    right: 10px;
  }
  .c-arrow.js--toggle-btn.active::after, .c-arrow.js--toggle-btn.active::before {
    right: 10px;
  }
  .c-arrow .aco-btn::after, .c-arrow .aco-btn::before {
    right: 15px;
  }
  .c-arrow .aco-btn.active::after, .c-arrow .aco-btn.active::before {
    right: 10px;
  }
  .txt {
    font-size: 16px;
  }
  .link-txt {
    margin-top: 10px;
    font-size: 16px;
  }
  .c-news-list > li > a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 20px 35px 20px 10px;
    gap: 5px;
  }
  .c-news-list > li > a::after, .c-news-list > li > a::before {
    right: 5px;
  }
  .c-news-list .date {
    width: 100%;
  }
  .c-news-list .news-ttl {
    width: 100%;
  }
  .c-ico-list > li {
    width: 50px;
    height: 50px;
  }
  .c-product-display-area {
    margin-top: 20px;
    margin-right: -15px;
  }
  .c-product-display-area.paging-list .c-product-list {
    gap: 20px 25px;
  }
  .c-product-list {
    padding-bottom: 15px;
    gap: 20px;
  }
  .c-product-list > li {
    width: 160px;
  }
  .c-product-list > li > a:not(.evaluation, .c-btn03)::after {
    top: 10px;
    padding-bottom: 1px;
  }
  .c-product-list > li .thumb {
    padding: 15px;
  }
  .c-product-list > li .thumb .ico {
    right: 10px;
    bottom: 10px;
  }
  .c-product-list > li .product-ttl {
    margin-top: 10px;
  }
  .c-product-list > li .info .is-stock {
    margin-top: 7px;
    font-size: 16px;
  }
  .c-product-list > li .evaluation {
    margin-top: 10px;
    gap: 5px;
  }
  .c-product-list > li .txt {
    -webkit-line-clamp: 4;
  }
  .c-product-list .c-btn03.cart {
    margin-top: 10px;
  }
  .c-rate-wrap {
    width: 92px;
  }
  .c-rate-wrap .star {
    width: 16px;
    height: 16px;
  }
  .c-tags-outer {
    gap: 10px 7px;
    padding: 6px 10px 20px;
    -webkit-box-shadow: none;
            box-shadow: none;
    max-width: 100vw;
    top: 0;
    position: relative;
  }
  .c-tags-outer > li {
    width: calc((100% - 7px) / 2);
  }
  .c-tags-outer > li:nth-child(3n+2) .tags-inner {
    left: 0;
  }
  .c-tags-outer > li:nth-child(3n) .tags-inner {
    left: 0;
  }
  .c-tags-outer > li:nth-child(2n) .tags-inner {
    left: calc(-100% - 7px);
  }
  .c-tags-outer > li:nth-child(2n+1) .tags-inner {
    border-radius: 0 8px 8px 8px;
  }
  .c-tags-outer > li:nth-child(2n+2) .tags-inner {
    border-radius: 8px 0px 8px 8px;
  }
  .c-tags-outer .tags-inner {
    width: calc(200% + 7px);
  }
  .c-tags-outer .tags-inner .link-list {
    gap: 1px;
  }
  .c-tags-outer .tags-inner .link-list > li {
    width: 100%;
  }
  .c-tags-outer .tags-inner .link-list > li .c-arrow {
    padding: 12px 10px 11px;
  }
  .c-tags-outer .tags-inner .link-list > li .c-arrow::after, .c-tags-outer .tags-inner .link-list > li .c-arrow::before {
    right: 10px;
  }
  .breadcrumb {
    padding-left: 25px;
    margin-top: 55px;
  }
  .breadcrumb a, .breadcrumb span {
    font-size: 16px;
  }
  .breadcrumb .ico-img {
    width: 15px;
    height: 15px;
    left: -25px;
  }
  .breadcrumb.new-tpl {
    margin-top: 21px;
  }
  .c-section.wide {
    margin-top: 50px;
  }
  .c-section.new-tpl {
    margin-top: 23px;
  }
  .c-section .c-ttl02.js--toggle-btn {
    margin-top: 0;
    padding: 0 35px 9px 15px;
  }
  .c-section .c-ttl02.js--toggle-btn .ico {
    right: 0;
    bottom: 10px;
  }
  .c-section .c-ttl02.js--toggle-btn::after {
    top: 0;
    height: calc(100% - 9px);
  }
  .c-section .contents p:not(.article-txt) {
    font-size: 16px;
  }
  .c-section .contents ul li {
    font-size: 16px;
  }
  .c-section .contents .img-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
  .c-section .contents .img-box p {
    width: 100%;
  }
  .c-section .contents .img-box .img {
    width: 100%;
  }
  .c-section .contents .img-box > div:not([class]) {
    width: 100%;
  }
  .c-section .contents .related-column__thumb {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 90px;
        -ms-flex: 0 0 90px;
            flex: 0 0 90px;
    width: 90px;
  }
  .c-section .contents .related-column__title {
    font-size: 13px;
  }
  .c-section .contents table:not([class]) th.new-tpl_link .img, .c-section .contents table:not([class]) td.new-tpl_link .img, .c-section .contents table.new-tpl th.new-tpl_link .img, .c-section .contents table.new-tpl td.new-tpl_link .img, .c-section .contents table.js--scrollable th.new-tpl_link .img, .c-section .contents table.js--scrollable td.new-tpl_link .img {
    margin: 0 auto;
  }
  .c-table-box {
    margin-top: 25px;
  }
  .c-table01 th,
  .c-table01 td {
    max-width: 209px;
  }
  .c-table01 th,
  .c-table01 td {
    font-size: 16px;
  }
  .c-table01 th:first-child,
  .c-table01 td:first-child {
    width: 127px;
    min-width: 127px;
    max-width: 127px;
  }
  .c-table01.new-tpl tr.thumb td:not(:first-child) {
    padding-inline: 25px;
  }
  .c-table01-is-half th,
  .c-table01-is-half td {
    font-size: 16px;
  }
  .c-table01-is-half.new-tpl tr.thumb td:not(:first-child) {
    padding-inline: 25px;
  }
  .c-paging-area {
    margin-top: 40px;
    max-width: 100%;
    gap: 5px;
    padding: 4px 20px;
  }
  .c-paging-area .prev,
  .c-paging-area .next {
    font-size: 16px;
  }
  .c-paging-area .prev::before, .c-paging-area .prev::after,
  .c-paging-area .next::before,
  .c-paging-area .next::after {
    top: 9px;
  }
  .c-paging-area .prev::after,
  .c-paging-area .next::after {
    top: -5px;
  }
  .c-paging-area .num {
    font-size: 20px;
    padding-bottom: 0;
    margin: 0 4px;
  }
  .c-paging-area .dots {
    margin: 0 2px;
  }
  .c-purple-card {
    padding: 20px 10px;
    margin-top: 25px;
  }
  .c-purple-card.login-note {
    margin-top: 60px;
  }
  .c-purple-card.login-note .c-btn03 {
    max-width: 100%;
    padding: 15px 20px;
  }
  .c-purple-card.login-note > p {
    font-size: 16px;
  }
  .c-copy-wrap {
    width: 100%;
  }
  .c-copy-wrap .code {
    font-size: 16px;
  }
  .c-copy-wrap .js--copy,
  .c-copy-wrap .js--coupon-apply {
    font-size: 16px;
  }
  .c-copy-wrap.coupon .code {
    font-size: 18px;
    width: 225px;
    padding: 10px;
  }
  .c-copy-wrap.coupon .js--copy {
    font-size: 16px;
    padding: 7px 11px 8px 8px;
  }
  .c-copy-wrap.coupon img {
    width: 25px;
  }
  .c-modal {
    padding: 0;
  }
  .c-modal .modal__inner {
    max-width: calc(100% - 30px);
  }
  .c-register-select .btn-wrap .c-btn.mail .ico {
    background-size: 26px 20px;
  }
  .c-register-select .btn-wrap .ico {
    height: 30px;
    width: 30px;
  }
  .c-register-select.login-page-register .ttl {
    font-size: 24px;
    margin-top: 30px;
  }
  .c-register-select.login-page-register .btn-wrap .c-btn {
    margin-inline: auto;
  }
  .c-register-select.register-page-head {
    margin-top: 45px;
  }
  .c-register-select.register-page-head .btn-wrap {
    margin-top: 20px;
  }
  .p-login .c-ttl01 {
    margin-top: 20px;
  }
  .p-login .c-contact-wrap .q-wrap + .q-wrap, .p-login .c-contact-wrap .q-wrap + .q-outer-wrap {
    margin-top: 20px;
  }
  .p-login .c-contact-wrap .submit-btn-wrap {
    margin-top: 25px;
  }
  .p-login #social-login-wrap {
    gap: 10px;
  }
  .c-form-flow-img {
    margin-top: 15px;
  }
  .c-cat-modal-wrap .cat-modal {
    border-radius: 0;
    bottom: inherit;
    top: 65px;
    max-height: unset;
    height: calc(var(--vh, 1vh) * 100 - 65px);
  }
  .c-cat-modal-wrap .cat-modal .cat-modal-inner {
    padding: 20px 10px 12px;
  }
  .c-cat-modal-wrap .cat-modal .ttl {
    padding-left: 10px;
    text-align: left;
  }
  .c-cat-modal-wrap .c-btn02 .ico.blank {
    -webkit-mask: url(../img/common/ico_blank_sp.svg) no-repeat center/contain;
            mask: url(../img/common/ico_blank_sp.svg) no-repeat center/contain;
  }
  .c-related-article {
    padding-inline: 20px;
  }
  .c-related-article .article-txt {
    line-height: 1.5;
  }
  .new-tpl_anchor-wrap .anchor-list {
    gap: 10px 7px;
  }
  .new-tpl_anchor-wrap .anchor-list li a {
    padding-block: 6px 19px;
    gap: 2px;
    padding-inline: 5px;
    min-width: 80px;
  }
  .new-tpl_anchor-wrap .anchor-list li a::before, .new-tpl_anchor-wrap .anchor-list li a::after {
    width: 13px;
    height: 2px;
    bottom: 9px;
  }
  .new-tpl_anchor-wrap .anchor-list li a::before {
    right: 9px;
  }
  .new-tpl_anchor-wrap .anchor-list li a::after {
    left: 9px;
  }
  .new-tpl_anchor-wrap .anchor-list li a .img {
    max-width: 30px;
    max-height: 30px;
  }
  .new-tpl_anchor-wrap .anchor-list li a .txt {
    font-size: 14px;
  }
  .new-tpl_anchor-wrap.small .anchor-list {
    gap: 10px 8px;
  }
  .new-tpl_anchor-wrap.small .anchor-list li {
    width: calc((100% - 40px) / 6);
  }
  .new-tpl_anchor-wrap.small .anchor-list li a {
    padding-block: 10px 24px;
    gap: 4px;
    padding-inline: 4px;
    min-width: auto;
  }
  .new-tpl_anchor-wrap.small .anchor-list li a .img {
    max-width: 24px;
    max-height: 24px;
  }
  .new-tpl_anchor-wrap.small .anchor-list li a::before, .new-tpl_anchor-wrap.small .anchor-list li a::after {
    width: 13px;
    height: 2px;
    bottom: 9px;
  }
  .new-tpl_anchor-wrap.small .anchor-list li a::before {
    right: 9px;
  }
  .new-tpl_anchor-wrap.small .anchor-list li a::after {
    left: 9px;
  }
  .new-tpl_point-wrap {
    padding: 10px;
  }
  .new-tpl_point-wrap .point-list {
    gap: 7px;
  }
  .new-tpl_point-wrap .point-list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-block: 11px 7px;
    gap: 6px;
  }
  .new-tpl_point-wrap .point-list li .img {
    max-width: 63px;
    max-height: 50px;
  }
  .new-tpl_point-wrap .point-list li .txt {
    font-size: 15px;
    min-height: 36px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1;
  }
  .new-tpl_product-anchor-list {
    gap: 8px;
    margin-top: 0;
  }
  .new-tpl_product-anchor-list li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3px;
    padding: 7px 10px 20px 10px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: auto;
  }
  .new-tpl_product-anchor-list li a::before, .new-tpl_product-anchor-list li a::after {
    top: inherit;
    width: 13px;
    height: 2px;
  }
  .new-tpl_product-anchor-list li a::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    left: 0;
    right: 9px;
    bottom: 10px;
  }
  .new-tpl_product-anchor-list li a::after {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    right: 0;
    bottom: 10px;
    left: 9px;
  }
  .new-tpl_product-anchor-list li a .img {
    max-width: 30px;
    height: 30px;
  }
  .new-tpl_product-anchor-list li a .txt {
    font-size: 14px;
    line-height: 1.071;
  }
  .new-tpl_anchor-link {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: repeat(2, auto);
    gap: 10px 20px;
    padding: 20px 35px 20px 25px;
  }
  .new-tpl_anchor-link .img {
    width: 30px;
    height: 30px;
  }
  .new-tpl_anchor-link .bold {
    font-size: 20px;
    line-height: 1.2;
  }
  .new-tpl_anchor-link .txt {
    grid-area: 2/1/3/3;
    font-size: 15px;
  }
  .new-tpl_anchor-link::before, .new-tpl_anchor-link::after {
    width: 17px;
    height: 2px;
    right: 12px;
  }
  .new-tpl_anchor-link::before {
    bottom: 11px;
  }
  .new-tpl_anchor-link::after {
    top: 11px;
  }
  .new-tpl_purpose-list {
    gap: 10px;
    margin-top: 18px;
  }
  .new-tpl_purpose-list li a {
    padding: 19px 112px 20px 15px;
    min-height: 100px;
  }
  .new-tpl_purpose-list li a::before, .new-tpl_purpose-list li a::after {
    width: 17px;
    height: 2px;
    right: 12px;
  }
  .new-tpl_purpose-list li a::before {
    bottom: 11px;
  }
  .new-tpl_purpose-list li a::after {
    top: 11px;
  }
  .new-tpl_purpose-list li a .txt {
    padding-top: 0;
    padding-left: 30px;
  }
  .new-tpl_purpose-list li a .txt::before {
    width: 24px;
    height: 24px;
    bottom: 0;
    margin: auto;
  }
  .new-tpl_purpose-list li a .purpose-icon {
    width: 24px;
    height: 24px;
    bottom: 0;
    margin: auto;
  }
  .new-tpl_purpose-list li a.custom-icon .txt {
    min-height: 24px;
  }
  .new-tpl_purpose-list li a.no-icon .pro-wrap {
    padding-left: 0;
  }
  .new-tpl_purpose-list li a.yen .txt::before {
    width: 21px;
    height: 21px;
  }
  .new-tpl_purpose-list li a .pro-wrap {
    padding-right: 0;
    padding-left: 30px;
    margin-top: 1px;
  }
  .new-tpl_purpose-list li a .pro-wrap .img {
    position: absolute;
    right: 32px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
  }
  .new-tpl_purpose-list li a .pro-wrap .name {
    margin-top: 0;
    font-size: 16px;
  }
  .new-tpl_shape-list {
    gap: 10px 5px;
  }
  .new-tpl_shape-list li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 9px 2px 21px;
    gap: 8px;
  }
  .new-tpl_shape-list li .img {
    max-width: 80px;
    max-height: 80px;
  }
  .new-tpl_shape-list li .name {
    line-height: 1.1;
  }
  .new-tpl_shape-list li .txt {
    margin-top: 0;
    text-align: center;
    line-height: 1.3;
  }
  .new-tpl_review-box .total-wrap .lead {
    font-size: 18px;
  }
  .new-tpl_review-box .total-wrap .rate {
    font-size: 25px;
    margin-top: 10px;
  }
  .new-tpl_review-box .total-wrap .total {
    font-size: 15px;
    margin-top: 10px;
  }
  .new-tpl_review-box .total-wrap .c-rate-wrap {
    width: 162px;
    margin-top: 10px;
  }
  .new-tpl_review-box .total-wrap .c-rate-wrap .star {
    width: 30px;
    height: 30px;
  }
  .new-tpl_review-box .l-right {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
  }
  .new-tpl_review-box .star-list li + li {
    margin-top: 6px;
  }
  .new-tpl_review-box .star-list .star-wrap {
    gap: 10px;
    width: 167px;
  }
  .new-tpl_review-box .star-list .bar-wrap .bar {
    height: 14px;
    width: calc(100% - 53px);
  }
  .new-tpl_review-box .star-list .percent {
    width: 70px !important;
    margin-left: 0;
  }
  .new-tpl_review-box .star-list .percent .num {
    font-size: 17px;
  }
  .new-tpl_review-box .c-rate-wrap {
    width: 108px;
  }
  .new-tpl_review-box .c-rate-wrap .star {
    width: 20px;
    height: 20px;
  }
  .new-tpl_link-list .inn ul {
    margin-top: 19px;
  }
  .new-tpl_link-list .inn .link-list {
    width: 100%;
    max-width: 278px;
  }
  .new-tpl_link-list .inn .link-list li a {
    max-width: 278px;
    min-width: inherit;
    width: 100%;
  }
  .new-tpl_link-list .inn .link {
    margin-top: 17px;
  }
  .new-tpl_article .c-table01:not(.table-full-wide) {
    width: 100%;
  }
  .new-tpl_article .new-tpl_shape-list li .txt {
    margin-top: 0 !important;
  }
  .js--toggle-btn .ico {
    right: 10px;
  }
  .nav-btn::after, .nav-btn::before {
    right: 24px;
  }
  .nav-btn:not(.js--toggle-btn) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .nav-btn02 {
    font-weight: 500;
    border-radius: 0;
    font-size: 18px;
    line-height: 1.2222222222;
    padding: 10px 50px 12px 20px;
  }
  .nav-btn02::after, .nav-btn02::before {
    height: 2px;
    right: 24px;
    width: 16px;
    top: 10px;
  }
  .nav-btn02::after {
    top: -10px;
  }
  .nav-btn02.active::before {
    right: 30px;
  }
  .nav-btn02.active::after {
    right: 20px;
  }
  .c-btn02 {
    width: 100%;
    font-size: 16px;
    gap: 8px;
    padding: 4px 10px;
    margin-top: 50px;
    max-width: 330px;
    margin-right: auto;
    min-height: 50px;
  }
  .c-btn02 .ico {
    width: 20px;
  }
  .c-btn02.sp-min-40 {
    min-height: 40px;
  }
  .c-btn02.google .ico {
    width: 35px;
  }
  .c-btn02.google {
    padding-left: 20px;
    padding-right: 20px;
    max-width: 280px;
  }
  .c-btn02.line {
    max-width: 280px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .c-btn03 {
    width: 100%;
    font-size: 16px;
    gap: 8px;
    padding: 4px 10px;
    max-width: 330px;
    min-height: 50px;
  }
  .c-btn03.sp-min-40 {
    min-height: 40px;
  }
  .c-btn03.review .ico {
    top: 1px;
  }
  .c-btn03.confirm-btn, .c-btn03.submit-btn, .c-btn03.back-btn {
    padding: 15px 20px;
  }
  .c-btn03.confirm-btn.cart, .c-btn03.submit-btn.cart, .c-btn03.back-btn.cart {
    padding: 5px 20px;
  }
  .c-btn03.cart.large {
    width: 100%;
    margin-top: 20px;
  }
  .c-btn03.register-btn {
    padding: 15px 20px;
  }
  .c-btn03.continue-btn {
    padding: 15px 20px;
  }
  .c-btn03.line {
    padding: 5px 20px;
  }
  .c-btn03.procedure-btn {
    padding: 15px 20px;
  }
  .c-btn03.yellow {
    padding: 14px 14px 14px;
  }
  .c-btn03.back-top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-btn04 img {
    height: 28px;
  }
  .c-btn04 {
    line-height: 1.1666666667;
    font-size: 12px;
    padding: 6px;
    width: 120px;
    gap: 5px;
  }
  .c-btn04 img {
    width: 30px;
    height: 28px;
  }
  .c-btn04::after, .c-btn04::before {
    right: 7px;
    width: 9px;
    top: 5px;
  }
  .c-btn04::after {
    top: -7px;
  }
  .c-btn05 {
    margin-top: 30px;
    width: 100%;
    font-size: 18px;
    gap: 8px;
    padding: 15px 10px;
    max-width: 325px;
    margin-right: auto;
  }
  .c-btn05::after, .c-btn05::before {
    right: 29px;
  }
  .home-front {
    padding-bottom: 60px;
  }
  .home-front .home-ttl {
    margin-bottom: 30px;
  }
  .home-front .top-banner-section + .inner-block {
    margin-top: 32px;
  }
  .home-front .top-banner-section .main-swiper {
    margin-top: 10px;
    padding-bottom: 0;
  }
  .home-front .top-banner-section .main-swiper .swiper-slide {
    width: 305px;
    max-width: calc(100vw - 40px);
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination-bullet {
    opacity: 1 !important;
    background: #fff;
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #8776D0;
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination-bullet::after {
    display: none;
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination-bullet .note {
    display: none;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev,
  .home-front .top-banner-section .main-swiper .swiper-button-next {
    width: 48px;
    top: 0;
    height: 48px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev::before, .home-front .top-banner-section .main-swiper .swiper-button-prev::after,
  .home-front .top-banner-section .main-swiper .swiper-button-next::before,
  .home-front .top-banner-section .main-swiper .swiper-button-next::after {
    width: 2px;
    height: 18px;
    top: 12px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev::after,
  .home-front .top-banner-section .main-swiper .swiper-button-next::after {
    top: -12px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev {
    left: calc(50% - 160px);
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev::after {
    top: 12px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev::before {
    top: -12px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-next {
    right: calc(50% - 160px);
  }
  .home-front .recommend-category-list::before {
    top: -117px;
    width: 235px;
    height: 238px;
    right: -80px;
  }
  .home-front .recommend-category-list::after {
    bottom: 31px;
    width: 248px;
    height: 220px;
    left: -90px;
  }
  .home-front .recommend-category-list .img-box {
    border-radius: 10px 0 0 10px;
  }
  .home-front .recommend-category-list .txt-box::before, .home-front .recommend-category-list .txt-box::after {
    right: 26px;
  }
  .home-front .recommend-category-list .txt-box .inner {
    width: 100%;
  }
  .home-front .recommend-category-list .txt-box .ttl {
    font-size: 22px;
  }
  .home-front .recommend-category-list .txt-box .txt {
    margin-top: 10px;
    font-size: 16px;
  }
  .home-front .top-ranking-section .raking-tag-wrap {
    margin-bottom: 5px;
    margin-right: -15px;
  }
  .home-front .top-ranking-section .ranking-tags {
    gap: 5px;
  }
  .home-front .top-ranking-section .ranking-tags > li > button {
    min-width: 160px;
  }
  .home-front .top-ranking-section .c-product-display-area {
    margin-top: 0;
  }
  .home-front .cat-modal-wrap .cat-modal {
    border-radius: 0;
    bottom: inherit;
    top: 65px;
    max-height: unset;
    height: calc(var(--vh, 1vh) * 100 - 65px);
  }
  .home-front .cat-modal-wrap .cat-modal .cat-modal-inner {
    padding: 20px 10px 12px;
  }
  .home-front .cat-modal-wrap .cat-modal .ttl {
    padding-left: 10px;
    text-align: left;
  }
  .home-front .cat-modal-wrap .c-btn02 .ico.blank {
    -webkit-mask: url(../img/common/ico_blank_sp.svg) no-repeat center/contain;
            mask: url(../img/common/ico_blank_sp.svg) no-repeat center/contain;
  }
  .new-home-front .coupon-wrap .img img {
    max-width: 99px;
  }
  .new-home-front .coupon-wrap .txt-wrap {
    grid-template-columns: auto 1fr;
    gap: 22px;
  }
  .new-home-front .coupon-wrap .coupon-ttl {
    font-size: 18px;
    line-height: 1.25;
  }
  .new-home-front .coupon-wrap .c-btn03 {
    min-height: 40px;
    margin-inline: auto;
  }
  .new-home-front .scroll-area {
    margin-inline: calc(50% - 50vw);
  }
  .new-home-front .search-list {
    padding-inline: 20px;
  }
  .new-home-front .search-list a {
    padding: 11px 4px 17px;
  }
  .new-home-front .search-list .txt {
    line-height: 1.2;
  }
  .new-home-front .info-wrap a {
    padding: 14px 20px 14px;
  }
  .new-home-front .info-wrap a:nth-child(2), .new-home-front .info-wrap a:nth-child(3) {
    padding-top: 16px;
  }
  .new-home-front .info-wrap .ico {
    margin: 0 auto 2px;
  }
  .new-home-front .info-wrap .txt {
    margin-top: 7px;
  }
  .p-product .c-ttl01 {
    margin-top: 30px;
  }
  .p-product .category-thumb {
    margin-top: 30px;
  }
  .p-product .category-thumb .thumb {
    margin-top: 12px;
  }
  .p-product .category-thumb .thumb + .txt {
    margin-top: 26px;
  }
  .p-product .category-thumb .sub-thumb {
    margin-top: 12px;
    padding: 20px;
    gap: 20px;
    display: block;
  }
  .p-product .category-thumb .sub-thumb .txt {
    width: 100%;
  }
  .p-product .category-thumb .sub-thumb .img {
    float: right;
    padding: 10px;
    margin-left: 10px;
    width: 100px;
    height: 100px;
  }
  .p-product .type-list {
    gap: 10px;
  }
  .p-product .type-list > li {
    font-weight: 500;
  }
  .p-product .type-list > li .c-arrow {
    padding: 15px 35px 15px 20px;
  }
  .p-product .type-list > li {
    width: 100%;
  }
  .p-product .type-list > li h3 {
    font-weight: 500;
  }
  .p-product .js--result .wrap {
    margin-bottom: 20px;
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-product .js--result .wrap.new-tpl {
    gap: 15px;
  }
  .p-product .js--result .wrap.new-tpl .controls {
    margin-top: 5px;
  }
  .p-product .js--result .controls select {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 14px !important;
  }
  .p-product .js--result .controls .select-box:nth-child(1) {
    width: 120px;
  }
  .p-product .js--result .controls .select-box:nth-child(2) {
    width: calc(100% - 145px);
    max-width: 200px;
  }
  .p-product .faq-section .faq-list > li .row.q-row {
    padding: 19px 40px 19px 50px;
  }
  .p-product .faq-section .faq-list > li .row.a-row {
    padding: 19px 20px 19px 50px;
  }
  .p-product .faq-section .faq-list > li .row.a-row .txt::after {
    top: 0;
  }
  .p-product .faq-section .faq-list > li .txt {
    font-size: 14px;
  }
  .p-product .faq-section .faq-list > li .txt::after {
    width: 41px;
    left: -50px;
    height: 35px;
  }
  .p-product .review-section {
    margin-top: 40px;
  }
  .p-product .img-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
  .p-product .img-box p {
    width: 100%;
  }
  .p-product .img-box .img {
    width: 100%;
  }
  .p-product .product-box {
    margin-top: 20px;
    padding: 20px 20px 30px;
    grid-template-columns: 1fr;
  }
  .p-product .product-box .img-block {
    margin-top: 13px;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
    text-align: center;
    grid-row: 2/3;
  }
  .p-product .product-box .ttl {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    grid-row: 1/2;
    padding-left: 0;
  }
  .p-product .product-box .txt-block {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
    padding-left: 0;
  }
  .p-product .product-box .txt-block .txt {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    padding-bottom: 2px;
  }
  .p-product .product-box .txt-block .price {
    margin-top: 16px;
  }
  .p-product .product-box .txt-block .c-btn03 {
    margin-top: 23px;
    padding: 11px 10px;
  }
  .p-product .review-block {
    margin-top: 20px;
  }
  .p-product .review-block .wrap-parts {
    width: 100%;
  }
  .p-product .review-block .wrap-parts:nth-child(1) {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-product .review-block .wrap-parts:nth-child(2) {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    margin-top: 30px;
  }
  .p-product .review-block .c-btn03 {
    margin-right: auto;
  }
  .p-product .review-block + .review-block {
    margin-top: 50px;
  }
  .p-product .review-block .review-wrap {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-product .review-block .c-review-list {
    gap: 0;
    width: calc(100% + 30px);
    margin-left: -15px;
  }
  .p-product .review-block .c-review-list > li {
    width: 100%;
    border-radius: 0;
    border-left: none;
    border-right: none;
    padding: 20px 15px;
  }
  .p-product .review-block .c-review-list .balloon {
    font-size: 16px;
  }
  .p-product .review-block .c-review-list .head .name {
    font-size: 16px;
  }
  .p-product .review-block .c-review-list .head .date {
    font-size: 16px;
    margin-top: 12px;
  }
  .p-product .review-block .c-review-list .body {
    margin-top: 24px;
  }
  .p-product .review-block .c-review-list .foot {
    margin-top: 22px;
  }
  .p-product .js--result + .c-section {
    margin-top: 60px;
  }
  .p-product-detail > .inner-block {
    padding-top: 10px;
  }
  .p-product-detail .breadcrumb {
    margin-bottom: 5px;
  }
  .p-product-detail .breadcrumb a,
  .p-product-detail .breadcrumb span {
    font-size: 14px;
  }
  .p-product-detail .bg-red-box + .product-anchor-menu {
    margin-top: 20px;
  }
  .p-product-detail .product-anchor-menu {
    margin-top: -5px;
  }
  .p-product-detail .product-anchor-menu__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 8px;
  }
  .p-product-detail .product-anchor-menu__label {
    font-size: 14px;
    margin: 1px 0 -1px;
  }
  .p-product-detail .select-box select {
    font-size: 16px !important;
  }
  .p-product-detail .c-balloon {
    top: -15px;
    font-size: 16px;
    padding: 4px 10px 8px;
    line-height: 1.125;
    max-width: 200px;
  }
  .p-product-detail .c-balloon::before {
    height: 10px;
    width: 12px;
    bottom: -9px;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    border-top: 10px solid #8776D0;
  }
  .p-product-detail .c-balloon.adjust {
    max-width: calc(100% - 20px);
    padding: 6px 15px;
    min-width: 200px;
  }
  .p-product-detail .c-cart-wrap:not(.small) .c-btn03 {
    margin: auto;
    width: 100%;
    max-width: 310px;
  }
  .p-product-detail .c-cart-wrap .num-wrap {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap .unit {
    letter-spacing: 0.02em;
  }
  .p-product-detail .c-cart-wrap .price-wrap {
    gap: 15px;
  }
  .p-product-detail .c-cart-wrap .price-wrap .price .expectation-point {
    font-size: 13px;
  }
  .p-product-detail .c-cart-wrap + .c-cart-wrap {
    margin-top: 15px;
  }
  .p-product-detail .c-cart-wrap.small .unit {
    font-size: 12px;
    width: 50px;
  }
  .p-product-detail .c-cart-wrap.small .unit .num {
    font-size: 18px;
  }
  .p-product-detail .l-product .img-area .main-wrap {
    max-width: 375px;
  }
  .p-product-detail .product-item-swiper img,
  .p-product-detail .product-item-swiper video {
    height: 100%;
    width: 100%;
  }
  .p-product-detail .swiper-pagination {
    padding: 3px 6px 4px;
    min-width: 54px;
  }
  .p-product-detail .l-right .c-rate-wrap {
    width: 108px;
  }
  .p-product-detail .l-right .c-rate-wrap .star {
    height: 20px;
    width: 20px;
  }
  .p-product-detail .l-right .product-head {
    margin: 0 0 8px;
  }
  .p-product-detail .l-right .info {
    gap: 7px 10px;
  }
  .p-product-detail .l-right .item-ttl {
    font-size: 24px;
    width: 100%;
  }
  .p-product-detail .l-right .review-link {
    font-size: 14px;
  }
  .p-product-detail .l-right .tag-list {
    margin-bottom: 10px;
  }
  .p-product-detail .l-right .credit-list {
    margin-bottom: 15px;
    gap: 2px 16px;
  }
  .p-product-detail .l-right .bg-red-box {
    padding: 15px 20px;
  }
  .p-product-detail .l-right .bg-red-box p {
    font-size: 14px;
  }
  .p-product-detail .l-right .bg-red-box .restock-summary-list {
    font-size: 14px;
  }
  .p-product-detail .l-right .bg-red-box > details > summary {
    font-size: 14px;
  }
  .p-product-detail .l-right .border-box {
    margin-top: 35px;
  }
  .p-product-detail .l-right .border-box .inn {
    padding: 10px 15px 30px;
  }
  .p-product-detail .l-right .border-box .inn.bg-purple {
    padding-left: 17px;
    padding-right: 17px;
  }
  .p-product-detail .l-right .border-box .inn.l-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 28px;
    padding-top: 20px;
  }
  .p-product-detail .l-right .border-box .inn.l-wrap .wrap {
    width: 100%;
  }
  .p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li {
    line-height: 1.1875;
  }
  .p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li::before {
    top: 6px;
  }
  .p-product-detail .l-right .border-box.in-balloon .inn ul:not(.features-list) li + li {
    margin-top: 20px;
  }
  .p-product-detail .l-right .border-box.bg-purple {
    margin-top: 45px;
  }
  .p-product-detail .l-right .border-box.bg-purple .inn {
    padding: 30px 10px 10px;
  }
  .p-product-detail .l-right .c-dot-list li {
    line-height: 1.1875;
  }
  .p-product-detail .l-right .c-dot-list li::before {
    top: 6px;
  }
  .p-product-detail .l-right .c-dot-list li + li {
    margin-top: 20px;
  }
  .p-product-detail .l-right .bg-ttl {
    padding: 17px 10px 18px;
  }
  .p-product-detail .l-right .item-name.purple {
    line-height: 1.2;
    font-size: 20px;
    padding: 2px 10px;
  }
  .p-product-detail .l-right .item-name {
    font-size: 16px;
    padding: 5px 10px;
  }
  .p-product-detail .l-right .slash-balloon {
    gap: 5px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    margin: 20px auto 0;
    padding-left: 0;
  }
  .p-product-detail .l-right .slash-balloon::before, .p-product-detail .l-right .slash-balloon::after {
    height: 20px;
  }
  .p-product-detail .l-right .slash-balloon::before {
    left: -30px;
  }
  .p-product-detail .l-right .slash-balloon::after {
    right: -5px;
  }
  .p-product-detail .l-right .slash-balloon .ico img {
    max-height: 17px;
  }
  .p-product-detail .l-right .slash-balloon .inn {
    padding: 0 20px 0 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .p-product-detail .l-right .features-list {
    gap: 7px;
  }
  .p-product-detail .l-right .features-list li {
    padding: 10px 7px 7px;
  }
  .p-product-detail .l-right .features-list li:last-child img {
    width: 50px;
  }
  .p-product-detail .l-right .features-list .ico {
    height: 50px;
  }
  .p-product-detail .l-right .features-list .ttl {
    height: 36px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1.2;
    font-size: 15px;
    margin-top: 6px;
  }
  .p-product-detail .recommend-box {
    padding: 20px 12px;
  }
  .p-product-detail .purchase-txt {
    margin-top: 8px;
  }
  .p-product-detail .review-box .l-left {
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
  }
  .p-product-detail .review-box .l-wrap {
    gap: 18px;
    margin-bottom: 8px;
  }
  .p-product-detail .review-box .l-wrap .inn {
    font-size: 15px;
  }
  .p-product-detail .review-box .l-wrap .inn + .inn::before {
    height: 18px;
    left: -9px;
  }
  .p-product-detail .review-box .star-list li + li {
    margin-top: 6px;
  }
  .p-product-detail .review-box .star-list .star-wrap {
    gap: 10px;
    width: 167px;
  }
  .p-product-detail .review-box .star-list .bar-wrap .bar {
    height: 14px;
    width: calc(100% - 53px);
  }
  .p-product-detail .review-box .star-list .percent {
    width: 53px;
    margin-left: 0;
  }
  .p-product-detail .review-box .star-list .percent .num {
    font-size: 17px;
  }
  .p-product-detail .review-box .c-rate-wrap {
    width: 108px;
  }
  .p-product-detail .review-box .c-rate-wrap .star {
    width: 20px;
    height: 20px;
  }
  .p-product-detail .review-box .graph-wrap .balloon {
    font-size: 14px;
    padding: 10px 15px 10px 20px;
    line-height: 1.3;
  }
  .p-product-detail .review-box .graph-wrap .balloon::before, .p-product-detail .review-box .graph-wrap .balloon::after {
    left: -10px;
    width: 10px;
    height: 10px;
  }
  .p-product-detail .review-box .graph-wrap .balloon::before {
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-right: 10px solid #FFD220;
  }
  .p-product-detail .review-box .graph-wrap .balloon::after {
    left: -8px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-right: 10px solid #fff;
  }
  .p-product-detail .review-box .graph-wrap .balloon .large {
    font-size: 16px;
  }
  .p-product-detail .c-circle-graph {
    font-size: 18px;
    width: 110px;
    height: 110px;
  }
  .p-product-detail .c-circle-graph .num {
    font-size: 30px;
  }
  .p-product-detail .c-circle-graph .unit {
    top: 6px;
  }
  .p-product-detail .review-block {
    margin-top: 30px;
  }
  .p-product-detail .review-block .c-review-list {
    margin-top: 30px;
  }
  .p-product-detail .c-paging-area {
    margin-top: 30px;
  }
  .p-product-detail .category-list {
    margin-top: 20px;
  }
  .p-product-detail .category-list a {
    font-size: 16px;
  }
  .p-product-detail .faq-section .faq-list {
    margin-top: 0;
  }
  .p-product-detail .faq-section .faq-list > li .row.a-row {
    padding-top: 7px;
  }
  .p-product-detail .faq-section h3 {
    margin-top: 20px;
  }
  .p-product-detail .faq-section h3:first-child {
    margin-top: 20px;
  }
  .p-product-detail .faq-section .a-row {
    border-top: none !important;
  }
  .p-product-detail .js--result + .c-section {
    margin-top: 50px;
  }
  .p-product-detail .review-section, .p-product-detail .js--result, .p-product-detail .faq-section {
    margin-top: 50px;
  }
  .p-product-detail .c-modal .modal__inner {
    max-width: calc(100% - 30px);
    width: 100%;
  }
  .p-product-detail .fixed-btn-wrap {
    bottom: 100px;
    width: 380px;
    max-width: calc(100% - 10px);
  }
  .p-product-detail .fixed-btn-wrap .c-btn03 {
    margin-top: 0;
  }
  .p-product-detail .toc-area {
    -webkit-transform: inherit;
            transform: inherit;
  }
  .p-product-detail .toc-btn .inn {
    font-size: 16px;
  }
  .p-product-detail .toc-wrap {
    min-width: 300px;
  }
  .p-maker .alphabet-list {
    margin-top: 20px;
    gap: 10px 16px;
  }
  .p-maker .alphabet-list > li.wide {
    width: 104px;
  }
  .p-maker .maker-list {
    margin-top: 45px;
  }
  .p-maker .maker-list > li + li {
    margin-top: 35px;
  }
  .p-maker .maker-list-inner {
    margin-top: 20px;
    gap: 20px;
  }
  .p-maker .c-ttl03 {
    padding-left: 25px;
  }
  .p-maker-detail .info-block {
    margin-top: 15px;
  }
  .p-maker-detail .info-block .txt {
    padding: 20px 15px;
  }
  .p-maker-detail .top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 28px;
  }
  .p-maker-detail .top .img {
    margin: 0 auto;
  }
  .p-maker-detail .top .data-list {
    width: 100%;
  }
  .p-maker-detail .top .data-list dt,
  .p-maker-detail .top .data-list dd {
    font-size: 16px;
  }
  .p-event .event-list {
    margin-top: 20px;
  }
  .p-event .event-list > li .info {
    margin-top: 10px;
  }
  .p-event .event-list > li .date {
    font-size: 16px;
  }
  .p-event .event-list > li + li {
    margin-top: 50px;
  }
  .p-point .top {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-point .top .ttl {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-point .top .ttl .note {
    font-size: 16px;
  }
  .p-point .top .ttl .min {
    margin: 5px 0;
    display: inline-block;
    font-size: 14px;
  }
  .p-point .point-list {
    margin-top: 15px;
  }
  .p-point .point-list > li {
    padding: 10px;
  }
  .p-point .point-list > li .ex {
    margin-top: 2px;
  }
  .p-contact .txt + .txt {
    margin-top: 20px;
  }
  .p-contact .txt {
    margin-top: 30px;
  }
  .p-contact .note-box {
    padding: 24px 10px 25px 20px;
    margin-top: 40px;
  }
  .p-contact .note-box .note {
    margin-top: 20px;
    line-height: 1.2;
  }
  .p-contact .note-box .lead {
    display: block;
    width: 100%;
    font-size: 16px;
  }
  .p-contact .note-box .lead img {
    margin-right: 3px;
    margin-top: 3px;
  }
  .p-contact .result {
    font-size: 16px;
  }
  .p-contact-finish {
    padding-bottom: 60px;
  }
  .p-contact-finish .txt-box.left .txt {
    text-align: left;
  }
  .p-contact-finish .wrap {
    margin-top: 40px;
  }
  .p-contact-finish .wrap .ico {
    margin-bottom: 20px;
  }
  .p-contact-finish .wrap .c-btn03.back-top {
    margin-top: 66px;
  }
  .txt + form .c-contact-wrap {
    margin-top: 60px;
  }
  .c-contact-wrap {
    margin-top: 25px;
  }
  .c-contact-wrap .q-wrap + .q-wrap, .c-contact-wrap .q-wrap + .q-outer-wrap {
    margin-top: 45px;
  }
  .c-contact-wrap .q-wrap.double + .double {
    margin-top: 25px;
  }
  .c-contact-wrap .q-wrap.double .required-mark {
    margin-left: 20px;
    position: relative;
    top: 0;
  }
  .c-contact-wrap .q-wrap .required-mark {
    position: relative;
  }
  .c-contact-wrap .q-wrap .label-note {
    margin-top: 0;
    display: inline-block;
    margin-left: 10px;
  }
  .c-contact-wrap .q-wrap .container {
    gap: 12px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-contact-wrap .q-wrap .input-area.more-mini input, .c-contact-wrap .q-wrap .input-area.more-mini .select-box {
    max-width: 90px;
  }
  .c-contact-wrap .q-wrap .input-area.twin {
    gap: 25px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child {
    width: 100%;
    max-width: 100%;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child select {
    width: 130px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child::after {
    right: auto;
    left: 108px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child::before {
    right: auto;
    left: 97px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child .unit {
    right: auto;
    left: 140px;
  }
  .c-contact-wrap .q-wrap .input-area .txt-unit {
    font-size: 16px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox]),
  .c-contact-wrap select,
  .c-contact-wrap textarea {
    padding: 9px 10px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox])::-webkit-input-placeholder, .c-contact-wrap select::-webkit-input-placeholder, .c-contact-wrap textarea::-webkit-input-placeholder {
    font-size: 14px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox])::-moz-placeholder, .c-contact-wrap select::-moz-placeholder, .c-contact-wrap textarea::-moz-placeholder {
    font-size: 14px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox]):-ms-input-placeholder, .c-contact-wrap select:-ms-input-placeholder, .c-contact-wrap textarea:-ms-input-placeholder {
    font-size: 14px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox])::-ms-input-placeholder, .c-contact-wrap select::-ms-input-placeholder, .c-contact-wrap textarea::-ms-input-placeholder {
    font-size: 14px;
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox])::placeholder,
  .c-contact-wrap select::placeholder,
  .c-contact-wrap textarea::placeholder {
    font-size: 14px;
  }
  .c-contact-wrap textarea {
    padding: 15px 10px;
  }
  .c-contact-wrap select {
    padding: 7px 45px 8px 10px;
  }
  .c-contact-wrap select[name=contact-type-genre], .c-contact-wrap select[name=contact-type-detail] {
    font-size: 14px !important;
    padding: 10px 45px 11px 10px;
  }
  .c-contact-wrap .radio-wrap .input-area {
    margin-top: 12px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .c-contact-wrap .radio-wrap label {
    font-size: 16px;
  }
  .c-contact-wrap .select-box .star-disp {
    height: calc(100% - 15px);
    top: 7px;
  }
  .c-contact-wrap .check-wrap label .label {
    padding-left: 34px;
  }
  .c-contact-wrap .file-container input[type=file] {
    padding: 0;
  }
  .c-contact-wrap .file-container .container {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .c-contact-wrap .file-container .wrap label {
    width: 130px;
    padding: 14px 10px 16px;
    font-size: 16px;
  }
  .c-contact-wrap .file-container .wrap label img {
    margin-right: 5px;
    width: 22px;
    height: 18px;
  }
  .c-contact-wrap .file-container .wrap .name {
    padding: 14px 20px;
    width: calc(100% - 130px);
  }
  .c-contact-wrap .file-container .wrap.uploaded {
    width: calc(100% - 92px);
  }
  .c-contact-wrap .submit-btn-wrap {
    margin-top: 50px;
  }
  .c-contact-wrap .submit-btn-wrap .wrap .btn-ttl {
    font-size: 16px;
  }
  .c-contact-wrap .submit-btn-wrap .wrap + .wrap {
    margin-top: 23px;
  }
  .c-contact-wrap .q-outer-wrap + .q-wrap {
    margin-top: 45px;
  }
  .c-contact-wrap .q-outer-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
  }
  .c-contact-wrap .q-outer-wrap .q-wrap {
    margin-top: 0;
  }
  .c-contact-wrap .q-outer-wrap .q-wrap:first-child {
    max-width: calc(100% - 131px);
  }
  .c-contact-wrap .q-outer-wrap .q-wrap:first-child input, .c-contact-wrap .q-outer-wrap .q-wrap:first-child .select-box {
    max-width: 180px;
  }
  .c-contact-wrap .q-outer-wrap .q-wrap:nth-child(2) {
    width: 116px;
  }
  .c-contact-wrap.part-confirm {
    padding-bottom: 35px;
  }
  .c-form-flow {
    margin-top: 15px;
  }
  .c-form-flow > li {
    display: block;
    text-align: center;
    height: 70px;
    border-radius: 0 35px 35px 0;
    gap: 5px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    font-size: 14px;
    padding: 30px 8px 0 0;
  }
  .c-form-flow > li .num {
    width: 20px;
    margin-right: 0;
    font-size: 14px;
    height: 20px;
    position: absolute;
    top: 5px;
    left: 0;
    right: 8px;
    margin: auto;
  }
  .c-form-flow > li .phase {
    height: 32px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    vertical-align: middle;
    line-height: 1.1428571429;
    max-width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-form-flow > li:first-child {
    width: calc(25% + 16px);
    padding: 30px 20px 1px 10px;
    border-radius: 10px 35px 35px 10px;
  }
  .c-form-flow > li:first-child .num {
    right: 10px;
  }
  .c-form-flow + .c-ttl011 {
    margin-op: 30px;
  }
  .c-form-flow + .head-ttl-block {
    margin-top: 20px;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 25px;
    margin-bottom: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .c-form-flow + .head-ttl-block .c-ttl01 {
    width: 100%;
    margin-top: 0;
  }
  .c-form-flow + .head-ttl-block .link-wrap {
    font-size: 16px;
  }
  .c-form-flow.three-phase > li {
    padding: 30px 20px 0 10px;
  }
  .c-form-flow.three-phase > li .num {
    right: 10px;
  }
  .c-form-flow.three-phase > li:first-child {
    padding: 30px 20px 1px;
    width: calc(33.3333333333% + 16px);
  }
  .c-form-flow.three-phase > li:first-child .num {
    right: 0;
  }
  .c-form-flow.three-phase > li:last-child {
    width: calc(33.3333333333% - 16px);
  }
  .p-faq .search-input-area {
    margin-top: 20px;
    width: 100%;
    height: 44px;
  }
  .p-faq .search-input-area input {
    font-size: 16px;
    padding: 0 64px 0 14px;
  }
  .p-faq .search-input-area input::-webkit-input-placeholder {
    font-size: 16px;
  }
  .p-faq .search-input-area input::-moz-placeholder {
    font-size: 16px;
  }
  .p-faq .search-input-area input:-ms-input-placeholder {
    font-size: 16px;
  }
  .p-faq .search-input-area input::-ms-input-placeholder {
    font-size: 16px;
  }
  .p-faq .search-input-area input::placeholder {
    font-size: 16px;
  }
  .p-faq .search-input-area .ico img {
    top: -1px;
  }
  .p-faq .error-txt {
    max-width: none;
  }
  .p-faq .faq-list {
    margin: 30px -15px 0 -15px;
  }
  .p-faq .faq-list > li .q-row .faq-ttl {
    line-height: 1.25;
  }
  .p-faq .faq-list > li .q-row .faq-ttl::before {
    right: -33px;
  }
  .p-faq .faq-list > li .q-row .faq-ttl::after {
    right: -23px;
  }
  .p-faq .faq-list > li .a-row .answer {
    font-size: 16px;
  }
  .p-faq .faq-list > li .a-row .answer::after {
    top: -7px;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list .q-row .faq-ttl::before {
    right: -33px;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list .q-row .faq-ttl::after {
    right: -23px;
  }
  .p-faq.p-notice .faq-list {
    margin-right: 0;
    margin-left: 0;
  }
  .p-faq.p-notice .faq-list li .a-row {
    padding-left: 20px;
    padding-right: 20px;
  }
  .has-campaign + .p-order .cmp-wrap {
    top: 144px;
  }
  .p-order .cmp-wrap {
    top: 114px;
    padding-top: 10px;
  }
  .p-order .cmp-link {
    padding: 4px 10px 10px;
    gap: 6px;
  }
  .p-order .cmp-link .txt-wrap {
    width: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0;
  }
  .p-order .cmp-link .txt-wrap .cmp-ttl {
    font-size: 16px;
  }
  .p-order .cmp-link .txt-wrap .date {
    line-height: 1.1666666667;
    font-size: 12px;
  }
  .c-order-lists {
    margin-top: 23px;
  }
  .c-order-lists > li {
    padding: 20px 9px 10px;
  }
  .c-order-lists .record-wrap {
    margin-left: 5px;
  }
  .c-order-lists .record-wrap .status {
    width: 80px;
    height: 30px;
    font-size: 16px;
    margin-left: 8px;
  }
  .c-order-lists .cards {
    margin-top: 10px;
  }
  .c-order-lists .cards .card + .card {
    margin-top: 10px;
  }
  .c-order-lists .cards .container {
    display: block;
  }
  .c-order-lists .cards .container .thumb {
    width: 120px;
    height: 120px;
  }
  .c-order-lists .cards .txt-wrap .ttl {
    -webkit-line-clamp: 4;
  }
  .c-order-lists .cards .txt-wrap .wrap {
    margin-top: 23px;
    display: block;
  }
  .c-order-lists .cards .txt-wrap .review-box {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 20px 15px 10px 20px;
    width: calc(100% + 10px);
    margin: 12px -5px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-order-lists .cards .txt-wrap .review-box .txt {
    width: 100%;
    max-width: none;
    font-size: 14px;
    margin-top: 7px;
    -webkit-line-clamp: 2;
  }
  .c-order-lists .cards .txt-wrap .review-box .more {
    margin-right: 5px;
    margin-top: 7px;
    display: block;
  }
  .c-order-lists .cards .btn-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-order-lists .detail-card {
    margin-top: 40px;
  }
  .c-order-lists .detail-card .js--toggle-btn {
    padding: 17px 30px;
    font-size: 16px;
  }
  .c-order-lists .detail-card .js--toggle-btn .ico {
    right: 20px;
  }
  .c-order-lists .detail-card .order-products .ttl {
    -webkit-line-clamp: 4;
  }
  .c-order-lists .detail-card .order-products .track .lead {
    font-size: 16px;
  }
  .c-order-lists .detail-card .order-products .track .c-copy-wrap {
    min-width: auto;
  }
  .c-order-lists .detail-card .order-products .track .link-txt {
    margin-top: 20px;
  }
  .c-order-lists .detail-card .order-products .price {
    margin: 16px 0 18px;
  }
  .c-order-lists .detail-card .order-infos .card {
    padding: 20px;
    margin: 0 9px;
  }
  .c-order-lists .detail-card .order-infos .card .ttl {
    font-size: 16px;
  }
  .c-order-lists .detail-card .order-infos .card .address {
    font-size: 16px;
  }
  .c-order-lists .detail-card .price-list {
    font-size: 16px;
  }
  .c-order-lists .detail-card .price-list > dt:nth-last-child(-n+2)::after, .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
    left: -20px;
    width: calc(100% + 20px);
  }
  .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
    left: 0;
    width: calc(100% + 20px);
  }
  .c-order-lists .method {
    margin: 20px 0 0;
  }
  .c-order-lists .method .c-tabs .js--tab {
    padding: 7px 4px;
    font-size: 16px;
  }
  .c-order-lists .method .c-tab-box {
    padding: 20px;
  }
  .c-order-lists .method .c-tab-box .c-btn02 {
    width: 100%;
    margin-top: 25px;
    padding: 14px 10px 16px;
  }
  .c-order-lists .method .c-tab-box .c-btn02.change-payment {
    font-size: 16px;
  }
  .c-order-lists .method .c-tab-box .table {
    margin-top: 35px;
    width: 100%;
  }
  .c-order-lists .method .c-tab-box .table > dt, .c-order-lists .method .c-tab-box .table > dd {
    font-size: 16px;
  }
  .c-order-lists .method .c-tab-box .table > dt {
    padding: 10px 10px 11px;
    width: 100%;
  }
  .c-order-lists .method .c-tab-box .table > dd {
    border-left: none;
    width: 100%;
    padding: 20px 10px 21px;
  }
  .c-order-lists .method .c-tab-box .table > dd:not(:nth-child(-n+2)) {
    border-top: none;
  }
  .p-static .ttl-wrap {
    margin-top: 45px;
  }
  .p-static .index-wrap a::before {
    font-size: 14px;
  }
  .p-static .side-index-wrap {
    top: 160px;
    max-height: calc(100vh - 260px);
  }
  .p-static .side-index-wrap .side-inner-wrap {
    width: 170px;
  }
  .p-static .side-index-wrap .side-inner > li {
    padding: 8px 10px;
  }
  .p-static .side-index-wrap .side-inner a {
    font-size: 14px;
  }
  .p-static article h2 {
    margin-top: 50px;
    font-size: 20px;
    padding: 0 0 0 15px;
    line-height: 1.5;
  }
  .p-static article h2::after {
    width: 6px;
  }
  .p-static article h3 {
    border-radius: 15px;
    font-size: 16px;
    padding: 6px 15px;
  }
  .p-static article ul:not(.flow-list):not(.block-list) > li::after {
    top: 7px;
  }
  .p-static article ol > li::after {
    font-size: 14px;
  }
  .p-static article img {
    max-width: 100%;
  }
  .p-static article h2 + h3 {
    margin-top: 20px;
  }
  .p-static article .flow-list {
    margin-top: 20px;
  }
  .p-static article .flow-list p::after {
    font-size: 14px;
  }
  .p-static article .block-list {
    gap: 10px;
  }
  .p-static article .block-list > li {
    width: 100%;
  }
  .p-static article .block-list > li .ttl {
    margin-bottom: 10px;
  }
  .p-cart .c-section.wide {
    margin-top: 54px;
  }
  .p-cart .c-section.wide .c-ttl04 {
    margin-bottom: 15px;
  }
  .p-cart .c-section {
    margin-top: 45px;
  }
  .p-cart .submit-btn-wrap {
    margin-top: 30px;
  }
  .p-cart .no-cart {
    margin-top: 20px;
  }
  .p-cart .no-cart p {
    font-size: 16px;
  }
  .p-cart .no-cart .c-btn03 {
    margin-top: 35px;
  }
  .p-cart .fixed-btn-wrap {
    bottom: 100px;
    width: 380px;
    max-width: calc(100% - 10px);
  }
  .p-cart .fixed-btn-wrap .c-btn03 {
    margin-top: 0;
  }
  .p-cart .cart-outer-wrap .cart-list > li {
    padding: 20px 30px 25px 20px;
  }
  .p-cart .cart-outer-wrap .cart-list .product-ttl {
    -webkit-line-clamp: 4;
  }
  .p-cart .cart-outer-wrap .cart-list .price-wrap {
    max-width: 180px;
    gap: 0;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 12px;
  }
  .p-cart .cart-outer-wrap .cart-list .info {
    margin-top: 14px;
  }
  .p-cart .cart-outer-wrap .cart-list .select-box select {
    font-size: 16px !important;
  }
  .p-cart .cart-outer-wrap .cart-list .js--cart-delete-btn {
    margin-top: 10px;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-purple-card {
    font-size: 16px;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap {
    margin-top: 40px;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap + .submit-btn-wrap {
    margin-top: 32px;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .q-wrap .container {
    gap: 20px;
  }
  .p-cart .cart-inner-wrap .c-contact-wrap.part-input + .c-section {
    margin-top: 60px;
  }
  .p-cart .ttl-block {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 20px;
  }
  .p-cart .ttl-block .point-wrap {
    font-size: 16px;
  }
  .p-cart .point-list {
    padding-left: 10px;
    gap: 25px 75px;
  }
  .p-cart .point-list .radio.parallel {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-cart .point-list .radio .point-input {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: 100%;
    padding-left: 44px;
  }
  .p-cart .point-list .radio .point-input input {
    width: calc(100% - 71px);
    max-width: 220px;
  }
  .p-cart .point-list .radio .point-input .unit {
    font-size: 16px;
  }
  .p-cart .coupon-list > li {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-cart .coupon-list .txt-box {
    width: 100%;
  }
  .p-cart .coupon-list .c-copy-wrap {
    width: 100%;
  }
  .p-cart .coupon-input {
    margin-top: 30px;
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-cart .coupon-input input[type=text] {
    padding: 6px 10px 8px;
    width: 100%;
  }
  .p-cart .coupon-input input[type=text]::-webkit-input-placeholder {
    font-size: 16px;
  }
  .p-cart .coupon-input input[type=text]::-moz-placeholder {
    font-size: 16px;
  }
  .p-cart .coupon-input input[type=text]:-ms-input-placeholder {
    font-size: 16px;
  }
  .p-cart .coupon-input input[type=text]::-ms-input-placeholder {
    font-size: 16px;
  }
  .p-cart .coupon-input input[type=text]::placeholder {
    font-size: 16px;
  }
  .p-cart .coupon-input .c-btn02 {
    max-width: 345px;
    width: 100%;
  }
  .p-cart .used-coupon-area {
    padding: 15px 10px;
  }
  .p-cart .used-coupon-area .coupon-list > li {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .p-cart .used-coupon-area .coupon-list > li .cancel-btn > button {
    width: 80px;
  }
  .p-cart .option-list {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-cart .option-list .radio-inner-wrap {
    width: 100%;
  }
  .p-cart .option-list .radio-inner-wrap .bank-note {
    font-size: 16px;
  }
  .p-cart .option-list .radio {
    width: 100%;
  }
  .p-cart.p-contact-finish .txt {
    text-align: left;
  }
  .p-cart ~ .c-cat-modal-wrap {
    display: none;
  }
  .p-cart .c-btn03.confirm-btn.cart, .p-cart .c-btn03.submit-btn.cart, .p-cart .c-btn03.back-btn.cart {
    padding: 10px 20px;
  }
  .p-cart .c-form-flow, .p-cart .c-form-flow-img, .p-procedure .c-form-flow, .p-procedure .c-form-flow-img {
    margin-top: 20px;
  }
  .p-cart .c-form-flow + .c-ttl01, .p-cart .c-form-flow-img + .c-ttl01, .p-procedure .c-form-flow + .c-ttl01, .p-procedure .c-form-flow-img + .c-ttl01 {
    margin-top: 45px;
  }
  .p-cart .wrap .c-btn03, .p-procedure .wrap .c-btn03 {
    margin-top: 35px;
    min-height: 50px;
  }
  .p-shopping {
    padding-bottom: 60px;
  }
  .p-shopping .c-contact-wrap .q-wrap .label-note {
    display: block;
    margin-top: 7px;
    margin-left: 0;
  }
  .p-shopping .c-contact-wrap .q-wrap .required-mark.js--mark-change {
    right: 32px;
  }
  .p-shopping .c-contact-wrap .q-wrap .required-mark.js--mark-change.adjust {
    right: 70px;
  }
  .p-shopping .file-area .link-txt {
    margin-top: 10px;
  }
  .p-shopping .file-area .link-txt .txt {
    font-size: 14px;
  }
  .p-shopping .c-contact-wrap .file-container .uploaded {
    width: 100%;
  }
  .p-procedure .wrap {
    margin-top: 30px;
  }
  .p-procedure .wrap .ico {
    margin-bottom: 32px;
  }
  .p-procedure .txt-box {
    margin-top: 45px;
  }
  .p-procedure .txt-box .txt {
    text-align: left;
  }
  .p-procedure .txt.attention {
    margin-top: 35px;
    text-align: center;
  }
  .p-procedure .bank-info {
    margin: 32px 0 40px;
  }
  .p-procedure .bank-info .serial {
    font-size: 16px;
  }
  .p-procedure .table {
    margin-top: 30px;
    width: 100%;
  }
  .p-procedure .table > dt, .p-procedure .table > dd {
    font-size: 16px;
  }
  .p-procedure .table > dt {
    padding: 10px 10px;
    width: 100%;
  }
  .p-procedure .table > dd {
    border-left: none;
    width: 100%;
    padding: 20px 10px 21px;
  }
  .p-procedure .table > dd:not(:nth-child(-n+2)) {
    border-top: none;
  }
  .p-procedure .lower-txt .lead {
    margin-top: 38px;
  }
  .p-procedure .lower-txt p {
    text-align: left;
    font-size: 16px;
  }
  .p-procedure .lower-txt p + p {
    margin-top: 10px;
  }
  .p-procedure .lower-txt p + p + p {
    margin-top: 20px;
  }
  .p-procedure .submit-btn-wrap .c-btn03.back-top {
    margin-top: 40px;
  }
  .p-procedure .agency-block {
    margin-top: 45px;
  }
  .p-procedure .agency-block .txt {
    margin-right: 8px;
    width: calc(100% + 8px);
  }
  .p-procedure .agency-block .c-agency-link {
    font-size: 16px;
    font-weight: 500;
  }
  .p-procedure .window-block {
    margin-top: 40px;
    padding: 20px;
  }
  .p-procedure .window-block .window-inner {
    padding: 30px 15px;
  }
  .p-procedure .window-block .layer:first-child .txt {
    text-align: left;
  }
  .p-procedure .window-block .layer:nth-child(2) {
    margin-top: 25px;
  }
  .p-procedure .window-block .layer:nth-child(2) .txt {
    margin-top: 30px;
    text-align: center;
  }
  .p-procedure .window-block .layer:nth-child(2) .txt + .txt {
    margin-top: 20px;
  }
  .p-shopping-confirm .submit-btn-wrap {
    margin-top: 40px;
  }
  .p-shopping-confirm .c-ttl04 {
    margin-bottom: 25px;
  }
  .p-shopping-confirm .c-ttl04.sp-purple {
    margin-bottom: 12px;
    color: #8776D0;
    font-size: 20px;
  }
  .p-shopping-confirm .confirm-product-list {
    margin-top: 20px;
  }
  .p-shopping-confirm .confirm-product-list .c-ttl04 {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .p-cart .c-btn02, .p-cart .c-btn03, .p-procedure .c-btn02, .p-procedure .c-btn03, .p-shopping .c-btn02, .p-shopping .c-btn03, .p-procedure .c-btn02, .p-procedure .c-btn03, .p-shopping-confirm .c-btn02, .p-shopping-confirm .c-btn03 {
    font-weight: 500;
  }
  .p-mypage > .inner-block {
    padding-top: 15px;
  }
  .p-mypage .rank-area .name-ttl {
    margin-bottom: 5px;
  }
  .p-mypage .rank-area .point-txt {
    margin-bottom: 1px;
  }
  .p-mypage .rank-area .limited-point {
    margin-bottom: 2px;
  }
  .p-mypage .rank-area .ico {
    max-width: 50px;
  }
  .p-mypage .menu-area .btn:nth-child(1) .ico {
    margin-left: 2px;
  }
  .p-mypage .menu-area .btn:nth-child(1) .ico img {
    max-height: 43.2px;
  }
  .p-mypage .menu-area .btn:nth-child(2) .ico {
    margin-left: 2px;
  }
  .p-mypage .menu-area .btn:nth-child(2) .ico img {
    max-height: 30px;
    left: 1px;
  }
  .p-mypage .menu-area .btn:nth-child(3) .ico {
    position: relative;
    left: -1px;
  }
  .p-mypage .menu-area .btn:nth-child(3) .ico img {
    max-height: 45px;
    width: 39px;
    position: relative;
    top: -1px;
    margin-left: 2px;
  }
  .p-mypage .menu-area .btn:nth-child(4) .ico {
    position: relative;
    left: -1px;
  }
  .p-mypage .menu-area .btn:nth-child(4) .ico img {
    max-height: 39px;
    margin-left: 1px;
  }
  .p-mypage .menu-area .num {
    padding-left: 3px;
    right: -23px;
    top: -14px;
  }
  .p-mypage .menu-area .menu-ttl {
    line-height: 1.2;
  }
  .p-mypage .menu-area .menu-txt {
    font-size: 16px;
    line-height: 1.1875;
  }
  .p-mypage .menu-link-list a::before {
    height: 23px;
    width: 13px;
    right: 22px;
  }
  .p-mypage .menu-link-list > li:nth-child(1) .ico img {
    margin-top: 1px;
    height: 32px;
  }
  .p-mypage .menu-link-list > li:nth-child(2) .ico img {
    width: 32px;
    height: 27px;
    margin-left: 0;
    position: relative;
    top: -1px;
  }
  .p-mypage .menu-link-list > li:nth-child(3) .ico img {
    width: 30px;
    position: relative;
    top: 1px;
  }
  .p-mypage .menu-link-list > li:nth-child(4) .ico img {
    width: 30px;
  }
  .p-mypage .menu-link-list .ico {
    width: 35px;
  }
  .p-column-top {
    padding-bottom: 45px;
  }
  .p-column-top .main-block {
    padding: 12px 0 62px;
  }
  .p-column-top .main-block::after {
    background: linear-gradient(77deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
    width: 130.6666666667vw;
    height: 130.6666666667vw;
  }
  .p-column-top .main-block span:nth-child(1) {
    margin-top: 0;
    font-size: 22px;
  }
  .p-column-top .main-block span:nth-child(2) {
    font-size: 60px;
  }
  .p-column-top .main-block span:nth-child(3) {
    margin-top: 10px;
    font-size: 24px;
  }
  .p-column-top .main-block span:nth-child(4) {
    margin-top: 22px;
    margin-bottom: 2rem;
    line-height: 1.5;
    font-size: 18px;
  }
  .p-column-top .c-section#section01 {
    margin-top: 40px;
  }
  .p-column-top .c-section#section02::after {
    bottom: -70px;
    width: 248px;
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
    height: 220px;
    left: auto;
    right: -80px;
  }
  .p-column-top .c-section {
    margin-top: 40px;
  }
  .p-column-top .c-section#section02 {
    margin-top: 50px;
  }
  .p-column-top .c-section#section02 .c-btn05 {
    margin-top: 58px;
  }
  .p-column-top .c-section#section03 {
    margin-top: 60px;
  }
  .p-column-top .pickup-swiper .foot .tags, .p-column-top .newest-swiper .foot .tags {
    gap: 10px;
  }
  .p-column-top .pickup-swiper .foot .tags > li, .p-column-top .newest-swiper .foot .tags > li {
    font-size: 13px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev,
  .p-column-top .pickup-swiper .swiper-button-next, .p-column-top .newest-swiper .swiper-button-prev,
  .p-column-top .newest-swiper .swiper-button-next {
    width: 48px;
    top: 0;
    height: 48px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev::before, .p-column-top .pickup-swiper .swiper-button-prev::after,
  .p-column-top .pickup-swiper .swiper-button-next::before,
  .p-column-top .pickup-swiper .swiper-button-next::after, .p-column-top .newest-swiper .swiper-button-prev::before, .p-column-top .newest-swiper .swiper-button-prev::after,
  .p-column-top .newest-swiper .swiper-button-next::before,
  .p-column-top .newest-swiper .swiper-button-next::after {
    width: 2px;
    height: 18px;
    top: 12px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev::after,
  .p-column-top .pickup-swiper .swiper-button-next::after, .p-column-top .newest-swiper .swiper-button-prev::after,
  .p-column-top .newest-swiper .swiper-button-next::after {
    top: -12px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev, .p-column-top .newest-swiper .swiper-button-prev {
    left: 12px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev::after, .p-column-top .newest-swiper .swiper-button-prev::after {
    top: 12px;
  }
  .p-column-top .pickup-swiper .swiper-button-prev::before, .p-column-top .newest-swiper .swiper-button-prev::before {
    top: -12px;
  }
  .p-column-top .pickup-swiper .swiper-button-next, .p-column-top .newest-swiper .swiper-button-next {
    right: 12px;
  }
  .p-column-top .pickup-swiper .swiper-pagination, .p-column-top .newest-swiper .swiper-pagination {
    padding-left: 0;
    bottom: -29px;
  }
  .p-column-top .pickup-swiper .swiper-pagination-bullet, .p-column-top .newest-swiper .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    margin: 0 5px;
  }
  .p-column-top .pickup-swiper {
    background: url(../img/column/book_sp.svg) no-repeat center/cover;
    aspect-ratio: 368/307;
    margin: 30px auto 0;
    max-width: 528px;
    padding: 20px 15px 30px;
  }
  .p-column-top .pickup-swiper .ttl {
    padding: 0;
  }
  .p-column-top .pickup-swiper .foot {
    padding: 0;
  }
  .p-column-top .pickup-swiper .thumb {
    width: 370px;
  }
  .p-column-top .pickup-swiper .swiper-slide > a {
    padding: 0 7px 0 11px;
  }
  .p-column-top .pickup-swiper .swiper-slide > a .inner {
    display: block;
    padding-top: 30px;
  }
  .p-column-top .newest-swiper .swiper-slide {
    width: 270px;
  }
  .p-column-top .newest-swiper .swiper-pagination {
    bottom: 0;
  }
  .p-column-top .newest-swiper .swiper {
    padding: 30px 0;
  }
  .p-column-top .c-btn05::before {
    height: 24px;
    width: 15px;
    right: 15px;
  }
  .p-column-list {
    padding-bottom: 40px;
  }
  .p-column-list.phase-before {
    padding-bottom: 60px;
  }
  .p-column-list.phase-before::before {
    top: auto;
    bottom: -15px;
  }
  .p-column-list.phase-before + .c-column-footer {
    margin-top: -20px;
  }
  .p-column-list .controls {
    margin-top: 20px;
  }
  .p-column-list .c-column-list > li .txt-wrap .ttl {
    font-size: 16px;
  }
  .p-column-list .c-ttl-column {
    line-height: 1.2;
    padding-left: 27px;
    margin-top: 25px;
    gap: 10px;
    font-size: 20px;
  }
  .p-column-list .c-ttl-column .word {
    line-height: 1.2;
  }
  .p-column-list .c-ttl-column .word::after {
    width: 18px;
    height: 27px;
    left: -27px;
  }
  .p-column-list .c-ttl-column.type02 {
    padding-left: 33px;
  }
  .p-column-list .c-ttl-column.type02 .word::after {
    width: 26px;
    height: 26px;
    left: -33px;
  }
  .p-column-list .c-phase-list {
    margin-top: 20px;
  }
  .p-column-list .c-phase-list .lead {
    padding: 1px 0 3px;
    font-size: 16px;
  }
  .p-column-list .c-phase-list .img {
    height: 70px;
  }
  .p-column-list .c-phase-list > li {
    width: min(115px, 30.6666666667vw);
  }
  .p-column-list .c-phase-list > li.active .lead::after {
    left: 5px;
  }
  .p-column-list .c-phase-list > li:nth-child(1) .lead {
    width: min(130px, 34.6666666667vw);
  }
  .p-column-list .c-phase-list > li:nth-child(1) .img img {
    margin-left: 12px;
    width: 21px;
    height: 58px;
  }
  .p-column-list .c-phase-list > li:nth-child(2) .lead {
    left: -15px;
    width: min(140px, 37.3333333333vw);
    padding-left: 5px;
  }
  .p-column-list .c-phase-list > li:nth-child(2) .img img {
    width: 47px;
  }
  .p-column-list .c-phase-list > li:nth-child(3) .lead {
    width: min(130px, 34.6666666667vw);
    left: -15px;
  }
  .p-column-list .c-phase-list > li:nth-child(3) .img img {
    width: 39px;
    margin-right: 10px;
  }
  .p-column-list .c-phase-list.fourth .img {
    height: 65px;
  }
  .p-column-list .c-phase-list.fourth > li {
    width: min(86.25px, 23vw);
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(1) .lead {
    width: min(95px, 25.3333333333vw);
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(2) .lead {
    width: min(100px, 26.6666666667vw);
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(3) .lead {
    width: min(100px, 26.6666666667vw);
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(3) .img img {
    margin-left: 10px;
    width: 37px;
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(4) .lead {
    left: -5px;
    width: min(92px, 24.5333333333vw);
  }
  .p-column-list .c-phase-list.fourth > li:nth-child(4) .img img {
    width: 39px;
    margin-right: 10px;
  }
  .p-column-list .tag-list.q-list {
    margin-top: 30px;
  }
  .p-column-list .tag-list.q-list > li .nav-btn {
    height: 50px;
    max-height: 50px;
    min-height: 50px;
    padding: 5px 40px 5px 20px;
  }
  .c-column-header {
    background: -webkit-gradient(linear, left top, right top, from(#D5E0FF), color-stop(40%, #DFDBFF), color-stop(83%, #F2E6FF));
    background: linear-gradient(90deg, #D5E0FF 0%, #DFDBFF 40%, #F2E6FF 83%);
  }
  .c-column-header .header-menu {
    top: 0;
  }
  .c-column-header .main-header .logo > a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-column-header .main-header .menu-area {
    position: absolute;
    right: 14px;
    top: 8px;
  }
  .c-column-header .main-header .menu-area .header-menu {
    margin-left: 4px;
    margin-right: 0;
  }
  .c-column-header .main-header .menu-area .c-btn04::before {
    height: 15px;
    width: 8px !important;
    right: 7px;
  }
  .c-column-header .search-input-area input {
    line-height: 33px;
    padding: 0 40px 2px 18px;
  }
  .c-column-header .menu-modal .close {
    right: 10px;
  }
  .c-column-header .menu-modal .nav-btn02 {
    padding-bottom: 12px;
    letter-spacing: 0.2em;
  }
  .c-column-header .menu-modal .nav-btn02::after, .c-column-header .menu-modal .nav-btn02::before {
    right: 20px;
  }
  .c-column-header .menu-modal .bot-wrap .c-btn04 {
    gap: 8px;
  }
  .c-column-footer {
    padding: 63px 0 30px;
    overflow: hidden;
    background: transparent;
  }
  .c-column-footer::after {
    background: url(../img/column/footer_bg_sp.png.webp) no-repeat center center/cover;
    position: absolute;
    content: "";
    z-index: -1;
    top: 0;
    width: 130.6666666667vw;
    height: 130.6666666667vw;
    left: -15.3333333333vw;
    border-radius: 50%;
  }
  .c-column-footer .top-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 30px;
  }
  .c-column-footer .c-btn04 {
    gap: 8px;
  }
  .p-column .tag-list {
    margin-top: 30px;
    gap: 10px 7px;
  }
  .p-column .tag-list > li {
    width: calc((100% - 7px) / 2);
  }
  .p-column .tag-list .nav-btn {
    padding-right: 29px;
    padding-left: 9px;
  }
  .p-column .tag-list.q-list .nav-btn {
    height: 60px;
    max-height: 60px;
    padding: 10px 40px 10px 65px;
  }
  .p-column .c-paging-area {
    margin-top: 40px;
  }
  .c-bg-wrap.top .c-column-header:not(.is-collar) {
    background: transparent;
  }
  .c-bg-wrap::before {
    content: none;
  }
  #wrapper .modal-line-login-notice .modal__cont,
  #wrapper .modal-register-line-notice .modal__cont {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 15px;
    padding-left: 18px;
    padding-top: 18px;
    margin-top: 90px;
  }
  #wrapper .modal-line-login-notice .modal__ttl,
  #wrapper .modal-register-line-notice .modal__ttl {
    font-size: 16px;
  }
  #wrapper .modal-line-login-notice .modal__body,
  #wrapper .modal-register-line-notice .modal__body {
    font-size: 12px;
  }
  #wrapper .modal-line-login-notice .modal__list li,
  #wrapper .modal-register-line-notice .modal__list li {
    font-size: 11px;
  }
  #wrapper .modal-line-login-notice .modal__agree-btn,
  #wrapper .modal-register-line-notice .modal__agree-btn {
    min-height: 40px;
    padding-top: 9px;
  }
  #wrapper .category-product-caption-section table img {
    max-width: 192px;
  }
  .home-notice-section .mv__head-more {
    padding: 10px 15px 10px 40px;
  }
  .home-notice-section .mv__head-more:before {
    top: 10px;
    left: 10px;
    width: 20px;
    height: 20px;
  }
  .home-notice-section .mv__head-more .newsTitle {
    width: 100%;
  }
  .home-notice-section .mv__head-more .other {
    font-size: 12px;
    width: 100%;
  }
  #wrapper .modal-checkout .c-btn03,
  #wrapper .modal-register .c-btn03 {
    line-height: 40px;
    min-height: 40px;
  }
  #wrapper .modal-checkout .c-btn03.register-btn,
  #wrapper .modal-register .c-btn03.register-btn {
    line-height: 1;
  }
  #social-login-wrap {
    gap: 20px;
  }
  #social-login-wrap .social-login-btn-wrap {
    gap: 20px;
  }
  body:not(.has-foot-float-wrap) #chatplusview.closed.headless #outline #eye_catcher {
    bottom: 94px;
  }
  article.article.type-post.post {
    padding-inline: 20px;
  }
  article.article.type-post.post .article-header {
    margin-top: 30px;
  }
  article.article.type-post.post .article-header .date-tags {
    margin-top: 15px;
  }
  article.article.type-post.post .entry-content {
    margin-top: 30px;
  }
  article.article.type-post.post .author-area .column-wrap .img {
    width: 100px;
  }
  article.article.type-post.post .author-area .column-wrap .txt-area {
    width: calc(100% - 100px);
  }
  article.article.type-post.post .author-area .column-wrap .txt-area .name {
    font-size: 16px;
  }
  article.article.type-post.post .author-area .column-wrap .txt-area .detail {
    font-size: 14px;
  }
  .under-entry-content {
    padding-inline: 20px;
  }
  .p-staff-recommend {
    padding-bottom: 40px;
  }
  .p-staff-recommend .mv-section {
    margin-top: 13px;
    margin-left: -15px;
    width: calc(100% + 30px);
  }
  .p-staff-recommend .main-ttl {
    margin: 35px auto 18px;
  }
  .p-staff-recommend .main-ttl img {
    max-height: 68px;
  }
  .p-staff-recommend .lead {
    margin: 0 auto 38px;
    max-width: calc(100% - 21px);
  }
  .p-staff-recommend .item-list-area {
    padding: 20px 10px 40px;
    margin-left: -15px;
    width: calc(100% + 30px);
  }
  .p-staff-recommend .item-list-area .item-ttl {
    margin-bottom: 20px;
  }
  .p-staff-recommend .item-list-area .item-list + .item-ttl {
    margin-top: 20px;
  }
  .p-search .js--result .controls {
    width: 100%;
  }
  .p-search .js--result .controls .select-box:nth-child(1) {
    width: 120px;
  }
  .p-search .js--result .controls .select-box:nth-child(2) {
    width: calc(100% - 145px);
    max-width: 200px;
  }
  .p-search .js--result .controls select {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 14px !important;
  }
  .p-search .down-search-area .down-search-head {
    padding: 12px 25px 11px;
  }
  .p-search .down-search-area .down-search-body {
    padding: 19px 23px 24px;
  }
  .p-search .down-search-area .down-search-body .inn-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 26px;
  }
  .p-search .down-search-area .down-search-body .label-box {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .p-search .down-search-area .down-search-body .checkbox {
    gap: 40px;
  }
  .p-search .down-search-area .down-search-body .checkbox .text::after {
    width: 17px;
    height: 11px;
    top: 8px;
    left: 4px;
  }
  .p-search .down-search-area .down-search-body .input-area::before {
    bottom: -3px;
  }
  .sitemap {
    margin-top: 30px;
  }
  .sitemap__row {
    padding: 10px 0;
  }
  .sitemap__parent {
    font-size: 16px;
  }
  .sitemap__parent .c-arrow {
    padding: 4px 20px 4px 25px;
  }
  .sitemap__child {
    width: calc(50% - 10px);
    font-size: 14px;
  }
  .sitemap__child .c-arrow {
    padding: 4px 20px 4px 20px;
  }
  .new-main-category .c-ttl04 {
    font-size: 20px;
  }
  .new-main-category .new-tpl_comment-box .item-info .txt-wrap .c-rate-wrap {
    gap: 2px;
    width: 108px;
  }
  .new-main-category .new-tpl_comment-box .item-info .txt-wrap .c-rate-wrap .star {
    height: 20px;
    width: 20px;
  }
  .new-main-category .new-tpl_comment-box .item-info .ttl {
    font-size: 16px;
    margin-bottom: 6px;
  }
  .new-main-category .new-tpl_comment-box .item-info .star-wrap {
    gap: 9px;
  }
  .new-main-category .new-tpl_comment-box .item-info .point {
    font-size: 18px;
  }
  .new-main-category .new-tpl_comment-box .item-info .txt {
    font-size: 15px;
    margin-top: 6px;
  }
  .new-main-category .new-tpl_comment-box .item-info .img img {
    min-width: 110px;
    max-width: 110px;
  }
  .new-main-category .new-tpl_comment-box .item-info .c-btn03.register-btn {
    padding: 9px 20px;
    margin-top: 9px;
    width: 100%;
    min-height: 30px;
  }
  .new-main-category .new-tpl_comment-box .comment-wrap .c-btn03 {
    padding-block: 10px;
    margin-top: 18px;
    min-height: 40px;
  }
  .new-main-category .new-tpl_comment-box .comment-list li + li {
    margin-top: 20px;
  }
  .new-main-category .new-tpl_flex .w-103 table th:first-child, .new-main-category .new-tpl_flex .w-103 table td:first-child {
    width: inherit;
    min-width: 118px;
  }
  .new-main-category .new-tpl_flex .w-103 table th:not(:first-child), .new-main-category .new-tpl_flex .w-103 table td:not(:first-child) {
    min-width: 200px;
  }
  .new-main-category .new-tpl_flex .w-255 table th:first-child, .new-main-category .new-tpl_flex .w-255 table td:first-child {
    width: 140px;
  }
  .new-main-category .new-tpl_flex .c-table-box {
    text-align: left;
  }
  .new-main-category .new-tpl_flex .sp-center {
    text-align: center;
  }
  .new-main-category .department-wrap {
    grid-template-columns: 100%;
    gap: 20px;
    margin-top: 16px;
  }
  .new-main-category .type-list a {
    font-size: 18px !important;
    gap: 12px;
    padding: 10px 19px !important;
  }
  .new-main-category .type-list img {
    max-width: 28px;
  }
  .new-main-category .column-section .c-btn03 {
    max-width: 100%;
    width: 100%;
  }
  .new-main-category .column-list a {
    padding: 20px 15px 20px 20px;
    gap: 10px;
  }
  .new-main-category .column-list a .day {
    margin-top: 6px;
  }
  .new-main-category .column-list a .img {
    max-width: 120px;
  }
  .new-main-category .anchor-list.column-3 li {
    width: calc((100% - 16px) / 3) !important;
  }
}
@media only screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
  .select-box:not(.filled):hover::before, .select-box:not(.filled):hover::after {
    top: calc(50% + 4px);
  }
  .inner-block {
    padding-left: 40px;
    padding-right: 40px;
    max-width: 1280px;
  }
  a,
  a::before,
  a::after,
  button,
  button::before,
  button::after {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .ib-pc {
    display: inline-block;
  }
  .sp {
    display: none !important;
  }
  .c-header .menu-modal .top-wrap .btns > li > a:hover {
    opacity: 0.7;
  }
  .c-header .menu-modal .top-wrap .btns > li img {
    height: 18px;
    position: relative;
    top: -1px;
  }
  .c-header .menu-modal .top-wrap .btns > li img.ico-favorite {
    width: 18px;
  }
  .header-campaign-area .header-campaign-area-inner:hover {
    opacity: 0.7;
  }
  #pagetop:hover {
    -webkit-box-shadow: 0 0 20px #adadad;
            box-shadow: 0 0 20px #adadad;
  }
  .c-footer .foot-nav a:hover::after {
    width: 100%;
  }
  .search-input-area .search-suggest-box button:hover {
    background: #F6F4FF;
    color: #8776D0;
  }
  .search-input-area .search-keyword-list a:hover {
    opacity: 0.75;
  }
  .search-input-area .ico:hover {
    opacity: 0.7;
  }
  .c-arrow:hover {
    background: #F6F4FF;
  }
  .link-txt .txt:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-ico-list > li > a:hover {
    opacity: 0.7;
  }
  .c-product-list > li > a:not(.evaluation, .c-btn03):hover .thumb img,
  .c-product-list > li > a:not(.evaluation, .c-btn03):hover .thumb video {
    scale: 1.1;
  }
  .c-product-list > li > a:not(.evaluation, .c-btn03):hover.hover-disable .thumb img,
  .c-product-list > li > a:not(.evaluation, .c-btn03):hover.hover-disable .thumb video {
    scale: 1;
  }
  .c-product-list > li .evaluation:hover {
    opacity: 0.7;
  }
  .c-tags-outer {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .c-tags-outer::after {
    position: absolute;
    content: "";
    background: #fff;
    height: 12px;
    width: 19px;
    top: -12px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-clip-path: polygon(50% 0, 0 100%, 100% 100%);
            clip-path: polygon(50% 0, 0 100%, 100% 100%);
  }
  .c-tags-outer > li:nth-child(3n+1) .tags-inner {
    border-radius: 0 8px 8px 8px;
  }
  .c-tags-outer > li:nth-child(3n+2) .tags-inner {
    border-radius: 8px;
  }
  .c-tags-outer > li:nth-child(3n+3) .tags-inner {
    border-radius: 8px 0px 8px 8px;
  }
  .c-tags-outer .tags-inner .link-list > li .c-arrow:hover {
    background: #fff;
  }
  .c-tags-outer .tags-inner .link-list > li .c-arrow:hover::after, .c-tags-outer .tags-inner .link-list > li .c-arrow:hover::before {
    right: 11px;
  }
  .breadcrumb a:hover::before {
    opacity: 0;
  }
  .breadcrumb a:not(:last-child):hover, .breadcrumb span:not(:last-child):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-section .c-ttl02.js--toggle-btn:hover {
    background: #F6F4FF;
  }
  .c-section .contents a:not([class]):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-section .contents .related-column__inner:hover .related-column__title {
    text-decoration: underline;
  }
  .c-section .contents table:not([class]) th.new-tpl_link a, .c-section .contents table:not([class]) td.new-tpl_link a, .c-section .contents table.new-tpl th.new-tpl_link a, .c-section .contents table.new-tpl td.new-tpl_link a, .c-section .contents table.js--scrollable th.new-tpl_link a, .c-section .contents table.js--scrollable td.new-tpl_link a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  .c-section .contents table:not([class]) th.new-tpl_link, .c-section .contents table:not([class]) td.new-tpl_link, .c-section .contents table.new-tpl th.new-tpl_link, .c-section .contents table.new-tpl td.new-tpl_link, .c-section .contents table.js--scrollable th.new-tpl_link, .c-section .contents table.js--scrollable td.new-tpl_link {
    width: 350px !important;
  }
  .c-section .contents table:not([class]) th.new-tpl_link span, .c-section .contents table:not([class]) td.new-tpl_link span, .c-section .contents table.new-tpl th.new-tpl_link span, .c-section .contents table.new-tpl td.new-tpl_link span, .c-section .contents table.js--scrollable th.new-tpl_link span, .c-section .contents table.js--scrollable td.new-tpl_link span {
    display: block;
    width: 160px;
  }
  .c-table01 thead th:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .c-table01 thead a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .c-table01-is-half thead th:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .c-table01-is-half thead a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .c-paging-area .prev:hover,
  .c-paging-area .next:hover {
    opacity: 0.7;
  }
  .c-paging-area .prev.disactive:hover,
  .c-paging-area .next.disactive:hover {
    opacity: 1;
  }
  .c-paging-area .num:not(.active):hover {
    background: #F6F4FF;
  }
  .c-copy-wrap .js--copy:hover,
  .c-copy-wrap .js--coupon-apply:hover {
    opacity: 0.7;
  }
  .c-modal .back-btn:hover {
    background: #E9E5FF;
  }
  .c-register-select .btn-wrap .c-btn:hover {
    color: #8776D0;
  }
  .c-register-select .btn-wrap.no-hover-action .c-btn:hover {
    background: none;
  }
  .c-register-select.login-page-register .btn-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-register-select.login-page-register .btn-wrap .c-btn {
    min-height: 40px;
    margin: 0 10px;
  }
  .c-register-select.register-page-head {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
  .c-register-select.register-page-head .btn-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    gap: 10px;
  }
  .c-register-select.register-page-head .btn-wrap .c-btn {
    width: 240px;
  }
  .c-register-select.register-page-head .btn-wrap .c-btn + .c-btn {
    margin-top: 0;
  }
  .c-related-article .article-txt a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .new-tpl_review-box .star-list .star-wrap .ref:not(.no-hover):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .new-tpl_article .c-table01:not(.table-full-wide) {
    min-width: 50%;
  }
  .nav-btn02.active:hover {
    background: #8776D0;
  }
  .nav-btn02.c-arrow:hover {
    background: #AEA2E6;
    color: #fff;
  }
  .nav-btn02.c-arrow:hover::before, .nav-btn02.c-arrow:hover:after {
    background: #fff;
  }
  .c-btn02:hover {
    color: #8776D0;
    background: #fff;
  }
  .c-btn02:hover .ico {
    background: #8776D0;
  }
  .c-btn02.google .inn {
    padding-right: 20px;
  }
  .c-btn02.google {
    padding: 3px 20px 5px;
    margin: auto;
  }
  .c-btn02.google:hover .ico {
    background: transparent;
  }
  .c-btn02.line:hover {
    color: #06C755;
  }
  .c-btn02.line:hover .ico {
    background: transparent;
    -webkit-filter: brightness(0) saturate(100%) invert(57%) sepia(42%) saturate(5187%) hue-rotate(110deg) brightness(103%) contrast(95%);
            filter: brightness(0) saturate(100%) invert(57%) sepia(42%) saturate(5187%) hue-rotate(110deg) brightness(103%) contrast(95%);
  }
  .c-btn03:not(:disabled):hover {
    -webkit-box-shadow: 0 0 0 #fff;
            box-shadow: 0 0 0 #fff;
    -webkit-transform: translateY(4px);
            transform: translateY(4px);
    color: #8776D0;
    background: #fff;
  }
  .c-btn03.review:hover {
    color: #fff;
    background: #F9B21A;
  }
  .c-btn03.confirm-btn:hover, .c-btn03.submit-btn:hover, .c-btn03.back-btn:hover {
    color: #F9B21A;
  }
  .c-btn03.cart:not(:disabled):hover {
    color: #fff;
    background: #C81A37;
  }
  .c-btn03.back-btn:hover {
    color: #777777;
  }
  .c-btn03.register-btn:hover {
    color: #fff;
    background: #8776D0;
  }
  .c-btn03.continue-btn:hover {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    background: #F9B21A;
    border-color: #F9B21A;
    color: #fff;
  }
  .c-btn03.line:hover {
    color: #06C755;
  }
  .c-btn03.procedure-btn:hover {
    color: #C81A37;
  }
  .c-btn03.procedure-btn:hover::before, .c-btn03.procedure-btn:hover::after {
    background: #C81A37;
  }
  .c-btn03.yellow:hover {
    color: #fff;
    background: #F9B21A;
  }
  .c-btn04:hover {
    background: #8776D0;
  }
  .c-btn04:hover::after, .c-btn04:hover::before {
    right: 5px;
  }
  .c-btn05:hover {
    color: #8776D0;
    background: #fff;
  }
  .c-btn05:hover .ico {
    background: #8776D0;
  }
  .c-btn05:hover::after, .c-btn05:hover::before {
    background: #8776D0;
  }
  .home-front .top-banner-section .main-swiper .swiper-slide > a:hover {
    opacity: 0.7;
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 16px;
    bottom: 0;
  }
  .home-front .top-banner-section .main-swiper .swiper-pagination-bullet {
    opacity: 1 !important;
    margin: 0;
    padding: 17px 0 23px;
    width: 140px;
    display: block;
    height: 56px;
    text-align: center;
    background: transparent;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-prev:hover,
  .home-front .top-banner-section .main-swiper .swiper-button-next:hover {
    opacity: 0.7;
  }
  .home-front .recommend-category-list li > a:hover {
    -webkit-box-shadow: 0 0 20px #dddddd;
            box-shadow: 0 0 20px #dddddd;
  }
  .home-front .recommend-category-list .img-box img {
    -o-object-position: right center;
       object-position: right center;
  }
  .home-front .top-ranking-section .ranking-tags > li > button:hover {
    background: #F6F4FF;
  }
  .new-home-front .coupon-wrap:hover {
    background: #fff;
  }
  .new-home-front .coupon-wrap:hover .c-btn03 {
    -webkit-box-shadow: 0 0 0 #fff;
            box-shadow: 0 0 0 #fff;
    -webkit-transform: translateY(4px);
            transform: translateY(4px);
    color: #8776D0;
    background: #fff;
  }
  .new-home-front .coupon-wrap:hover .c-btn03::before, .new-home-front .coupon-wrap:hover .c-btn03::after {
    background: #8776D0;
  }
  .new-home-front .coupon-wrap .c-btn03 {
    font-size: 18px;
  }
  .new-home-front .coupon-wrap .c-btn03::before, .new-home-front .coupon-wrap .c-btn03::after {
    right: 18px;
  }
  .new-home-front .search-list a:hover {
    background: #F6F4FF;
  }
  .new-home-front .info-wrap a:hover {
    background: #fff;
  }
  .p-product .faq-section .faq-list > li .row.q-row:hover {
    background: #F6F4FF;
  }
  .p-product .faq-section .faq-list > li a:not([class]):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product .review-block .review-wrap.wi-max {
    width: 100%;
  }
  .p-product .review-block .c-review-list .foot .js--review-btn:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product .c-table01 td a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product-detail .product-anchor-menu__link:hover {
    background: #F6F4FF;
  }
  .p-product-detail .l-product .swiper-button-prev, .p-product-detail .l-product .swiper-button-next {
    display: none;
  }
  .p-product-detail .l-right .review-link:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product-detail .l-right .bg-red-box .underline:hover {
    text-decoration: none;
  }
  .p-product-detail .l-right .features-list li:last-child img {
    width: 75px;
    height: auto;
  }
  .p-product-detail .recommend-box .box-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 17px 15px;
  }
  .p-product-detail .recommend-box .box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 calc(50% - 8px);
        -ms-flex: 1 1 calc(50% - 8px);
            flex: 1 1 calc(50% - 8px);
    min-width: 0;
  }
  .p-product-detail .recommend-box .box + .box {
    margin-top: 0;
  }
  .p-product-detail .count-txt {
    max-width: 400px;
  }
  .p-product-detail .review-section {
    margin-top: 35px;
  }
  .p-product-detail .review-box .star-list .star-wrap .ref:not(.no-hover):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product-detail .review-block .c-ttl03 {
    padding-inline: 30px;
  }
  .p-product-detail .category-list a:hover {
    background: #fff;
  }
  .p-product-detail .category-list a.no-collar:hover {
    background: #EBE6FF;
  }
  .p-product-detail .faq-section a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-product-detail .fixed-btn-wrap .c-btn03:hover {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
    -webkit-box-shadow: 0 0 0 #fff;
            box-shadow: 0 0 0 #fff;
  }
  .p-product-detail .toc-btn:hover {
    background: #fff;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .p-product-detail .toc-btn:hover .inn {
    color: #8776D0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .p-product-detail .toc-wrap {
    max-height: calc(100vh - 200px);
    bottom: 20px;
    margin: auto;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    width: 100%;
    min-width: 300px;
  }
  .p-product-detail .toc-wrap .toc-list a .inn:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .p-product-detail .toc-bg {
    display: none;
  }
  .p-maker .alphabet-list > li a:hover {
    background: #8776D0;
    color: #fff;
  }
  .p-maker .maker-list-inner > li > a:hover {
    opacity: 0.7;
  }
  .p-event .event-list > li > a:hover .ttl::after {
    opacity: 0;
  }
  .p-event .event-list > li > a:hover .thumb {
    -webkit-box-shadow: 0 0 15px #cfcfcf;
            box-shadow: 0 0 15px #cfcfcf;
  }
  .p-point .point-list > li .ex {
    line-height: 1.2307692308;
    margin-top: 5px;
  }
  .p-contact .note-box {
    text-align: center;
  }
  .p-contact .link-wrap:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-contact-finish .txt-box .txt.sp-margin {
    margin-top: 0;
  }
  .c-contact-wrap .q-wrap .error-txt.narrow {
    margin-top: 0;
  }
  .c-contact-wrap .q-wrap .input-area.twin input {
    width: calc(50% - 20px);
  }
  .c-contact-wrap input:not([type=radio]):not([type=checkbox]):disabled,
  .c-contact-wrap select:disabled,
  .c-contact-wrap textarea:disabled {
    padding-left: 16px;
  }
  .c-contact-wrap .check-wrap {
    margin-top: 10px;
  }
  .c-contact-wrap .file-container .wrap:hover {
    opacity: 0.7;
  }
  .c-contact-wrap .file-add-btn:hover {
    background: #8776D0;
    color: #fff;
  }
  .c-contact-wrap .file-add-btn:hover .ico {
    background: #fff;
  }
  .c-contact-wrap .file-add-btn:hover .ico::after, .c-contact-wrap .file-add-btn:hover .ico::before {
    background: #8776D0;
  }
  .c-contact-wrap .file-delete-btn:hover {
    opacity: 0.7;
  }
  .c-contact-wrap.part-input .q-wrap:not(.radio-wrap):not(.filled):not(.double) .input-area {
    min-height: 44px;
  }
  .c-contact-wrap.part-input .q-wrap:not(.radio-wrap):not(.filled):not(.double) .label-area .contact-label {
    margin-top: 10px;
  }
  .c-contact-wrap.part-input .q-wrap:not(.radio-wrap):not(.filled):not(.double) .label-area .required-mark {
    top: 12px;
  }
  .c-contact-wrap.part-input .q-wrap:not(.radio-wrap):not(.filled):not(.double) .label-area.adjust .contact-label {
    margin-top: 15px;
  }
  .c-contact-wrap.part-input .q-wrap:not(.radio-wrap):not(.filled):not(.double) .label-area.adjust .required-mark {
    top: 17px;
  }
  .c-contact-wrap.part-confirm .q-wrap .label-area .contact-label {
    margin-top: 0;
  }
  .p-faq .anchor-list > li > a:hover {
    opacity: 0.7;
  }
  .p-faq .faq-list > li .q-row:hover {
    background: #F6F4FF;
  }
  .p-faq .a-row a:hover {
    -webkit-text-decoration: transparent;
            text-decoration: transparent;
  }
  .p-order .cmp-link .txt-wrap .cmp-ttl:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-order-lists-area .ttl a:hover {
    opacity: 0.7;
  }
  .c-order-lists .cards .container .thumb > a:hover {
    opacity: 0.7;
  }
  .c-order-lists .cards .txt-wrap .review-box .more:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-order-lists .detail-card .js--toggle-btn:hover {
    background: #F6F4FF;
  }
  .c-order-lists .detail-card .order-products > li + li {
    margin-top: 5px;
  }
  .c-order-lists .detail-card .order-products .thumb > a:hover {
    opacity: 0.7;
  }
  .p-static .date > p {
    text-align: right;
  }
  .p-static .index-wrap {
    min-width: 480px;
  }
  .p-static .index-wrap a:hover {
    opacity: 0.7;
  }
  .p-static .side-index-wrap .index-ttl:hover {
    opacity: 0.7;
  }
  .p-static .side-index-wrap .side-inner a:hover {
    opacity: 0.7;
  }
  .p-static article a:not(.btn):hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-static article .btn:hover {
    background: #fff;
    color: #8776D0;
  }
  .p-cart .no-cart p {
    text-align: center;
  }
  .p-cart .fixed-btn-wrap .c-btn03:hover {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
    -webkit-box-shadow: 0 0 0 #fff;
            box-shadow: 0 0 0 #fff;
  }
  .p-cart .cart-outer-wrap .cart-list .js--cart-delete-btn:hover {
    background: #8776D0;
    color: #fff;
    border-color: #8776D0;
  }
  .p-cart .cart-outer-wrap .cart-list .js--cart-delete-btn:hover .ico {
    background: #fff;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .label-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .label-area .required-mark {
    position: relative;
    margin-left: 25px;
    top: 0 !important;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-contact-wrap .label-area .contact-label {
    margin-top: 0 !important;
  }
  .p-cart .coupon-list .txt-box .ttl > a:hover {
    opacity: 0.7;
  }
  .p-cart .used-coupon-area .coupon-list > li .cancel-btn > button:hover {
    opacity: 0.7;
  }
  .p-procedure .pc-ib {
    display: inline-block;
  }
  .p-procedure .bank-info .serial {
    max-width: 450px;
    margin: 0 auto;
  }
  .p-procedure .lower-txt a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-procedure .agency-block .c-agency-link:hover {
    background: #fff;
    color: #C81A37;
  }
  .p-procedure .agency-block .c-agency-link:hover::before, .p-procedure .agency-block .c-agency-link:hover::after {
    background: #C81A37;
  }
  .p-mypage .rank-area button:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-mypage .menu-area .btn:hover {
    border-color: #8776D0;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .p-mypage .tracking-area .tracking-txt a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .p-mypage .menu-link-list a:hover {
    background: #F6F4FF;
  }
  .p-column-top .pickup-swiper .swiper-button-prev:hover,
  .p-column-top .pickup-swiper .swiper-button-next:hover, .p-column-top .newest-swiper .swiper-button-prev:hover,
  .p-column-top .newest-swiper .swiper-button-next:hover {
    opacity: 0.7;
  }
  .p-column-top .pickup-swiper .swiper-slide > a:hover {
    opacity: 0.7;
  }
  .p-column-list .c-column-list::after {
    display: none;
  }
  .p-column-list .c-column-list > li > a:hover {
    opacity: 0.7;
    border: 1px solid #8776D0;
  }
  #social-login-wrap .c-btn02.google {
    padding: 5px 20px 8px;
  }
  #social-login-wrap .c-btn02.google .ico {
    width: 25px;
    height: 25px;
  }
  #social-login-wrap .c-btn02.line .ico {
    width: 44px;
    height: 34px;
  }
  article.article.type-post.post .article-header .main-ttl-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  article.article.type-post.post .article-header .entry-title {
    width: calc(100% - 150px);
  }
  article.article.type-post.post .article-header .date-tags {
    width: 150px;
    padding-left: 10px;
  }
  .sitemap .c-arrow:hover {
    background: transparent;
    color: #8776d0;
  }
  .new-main-category .c-ttl04 {
    margin-bottom: 17px;
  }
  .new-main-category .c-ttl04 + .txt {
    margin-top: 15px;
    line-height: 1.4;
  }
  .new-main-category .new-tpl_anchor-wrap.small .anchor-list li a {
    min-width: 190px;
  }
  .new-main-category .new-tpl_comment-box .item-info .txt-wrap {
    margin-top: -9px;
  }
  .new-main-category .new-tpl_comment-box .item-info .txt-wrap .c-rate-wrap {
    width: 162px;
  }
  .new-main-category .new-tpl_comment-box .item-info .img {
    text-align: center;
    width: 160px;
  }
  .new-main-category .new-tpl_comment-box .item-info .img img {
    width: 100px;
  }
  .new-main-category .new-tpl_comment-box .c-btn03:hover::before, .new-main-category .new-tpl_comment-box .c-btn03:hover::after {
    background-color: #fff;
  }
  .new-main-category .new-tpl_flex table {
    table-layout: fixed;
    width: 100%;
  }
  .new-main-category .new-tpl_purpose-list.reference a {
    min-height: 100px;
  }
  .new-main-category .column-section .c-btn03:hover::before, .new-main-category .column-section .c-btn03:hover::after {
    background-color: #fff;
  }
  .new-main-category .column-list a:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1380px) {
  .c-header .main-header {
    padding: 25px 20px;
  }
  .c-header .main-header .header-cont {
    gap: 15px;
  }
  .search-input-area {
    width: 300px;
    font-size: 16px;
  }
  .search-input-area input {
    padding: 0 40px 1px 15px;
  }
  .search-input-area input::-webkit-input-placeholder {
    font-size: 15px;
  }
  .search-input-area input::-moz-placeholder {
    font-size: 15px;
  }
  .search-input-area input:-ms-input-placeholder {
    font-size: 15px;
  }
  .search-input-area input::-ms-input-placeholder {
    font-size: 15px;
  }
  .search-input-area input::placeholder {
    font-size: 15px;
  }
  .c-column-header .search-input-area input::-webkit-input-placeholder {
    font-size: 16px;
  }
  .c-column-header .search-input-area input::-moz-placeholder {
    font-size: 16px;
  }
  .c-column-header .search-input-area input:-ms-input-placeholder {
    font-size: 16px;
  }
  .c-column-header .search-input-area input::-ms-input-placeholder {
    font-size: 16px;
  }
  .c-column-header .search-input-area input::placeholder {
    font-size: 16px;
  }
}
@media only screen and (max-width: 1380px) {
  .c-header .main-header .logo {
    width: 176px;
  }
  .search-input-area .ico {
    right: 8px;
    width: 32px;
  }
  .search-input-area .ico img {
    width: 24px;
    height: 24px;
  }
  .c-ico-list {
    gap: 10px;
  }
  .p-mypage .tracking-area .search-input-area .ico {
    right: 20px;
    width: 50px;
  }
  .c-column-header .main-header .search-input-area .ico {
    right: 18px;
    width: 50px;
  }
  .c-column-header .main-header .search-input-area .ico img {
    width: 29px;
    height: 29px;
  }
}
@media only screen and (max-width: 1380px) and (max-width: 767px) {
  .c-header .main-header .logo {
    width: 146px;
  }
  .search-input-area .ico {
    height: 35px;
    right: 8px;
    width: 35px;
  }
  .search-input-area .ico img {
    top: 0;
    width: 20px;
    height: 20px;
  }
  .c-column-header .main-header .search-input-area .ico {
    height: 35px;
    right: 8px;
    width: 35px;
  }
  .c-column-header .main-header .search-input-area .ico img {
    top: -1px;
    width: 20px;
    height: 20px;
  }
}
@media only screen and (max-width: 1120px) {
  .c-header .main-header .c-ico-list > li {
    width: 50px;
    height: 50px;
  }
  .c-header .main-header .menu-area {
    padding: 0;
    background: transparent;
  }
  .c-header .main-header .menu-area .ico {
    display: none;
  }
  .c-header .main-header .menu-area .ico.outer:not(.login) {
    display: none;
  }
  .c-header .main-header .menu-area .info {
    display: none;
  }
  .c-header .menu-modal.pc {
    right: -10px;
    top: 66px;
  }
  .c-header .menu-modal.pc::after {
    right: 16px;
  }
  .header-menu {
    margin-left: 0;
    margin-right: -5px;
  }
  .c-news-list {
    margin-top: 30px;
  }
  .c-ico-list > li .num {
    top: -5px;
    right: -5px;
  }
  .c-cat-modal-wrap .cat-modal .c-tags-outer {
    width: 860px;
  }
  .new-tpl_review-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 40px;
  }
  .new-tpl_review-box .total-wrap::before {
    content: none;
  }
  .new-tpl_review-box .star-list .bar-wrap {
    width: calc(100% - 220px);
  }
  .nav-btn {
    padding: 16px 30px 16px 10px;
  }
  .home-front .cat-modal-wrap .cat-modal .c-tags-outer {
    width: 860px;
  }
  .p-product-detail .c-cart-wrap.sold-out.small {
    gap: 10px;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .price-wrap {
    gap: 15px;
  }
  .p-product-detail .l-product {
    display: block;
  }
  .p-product-detail .l-product .img-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    margin: 32px 0 15px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p-product-detail .l-product .main-wrap {
    width: 400px;
  }
  .p-product-detail .thumb-wrapper {
    max-width: 400px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    width: calc(100% - 400px);
  }
  .p-product-detail .review-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 40px;
  }
  .p-product-detail .review-box .star-list .bar-wrap {
    width: calc(100% - 220px);
  }
  .p-product-detail .review-box .graph-wrap {
    max-width: 600px;
    margin: 0 auto;
  }
  .p-shopping .cart-outer-wrap .cart-infos {
    width: 320px;
  }
  .p-column-top .c-section#section01::before {
    right: -120px;
  }
  .p-column-top .c-section#section05::before {
    right: -120px;
  }
  .p-column-list::before {
    right: -120px;
  }
  .p-column-list::after {
    left: -120px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 374px) {
  .c-header .menu-modal .top-wrap .btns > li > a {
    font-size: 12px;
    gap: 5px;
  }
  .global-navigation .tags > li:not(.is-cat) .c-tags-outer > li .nav-btn {
    font-size: 16px;
  }
  .c-product-display-area.paging-list .c-product-list {
    gap: 20px;
  }
  .c-paging-area .num {
    font-size: 16px;
    width: 24px;
    height: 24px;
  }
  .c-copy-wrap.coupon .code {
    font-size: 16px;
  }
  .c-copy-wrap.coupon .js--copy {
    font-size: 14px;
    padding: 7px 6px 9px;
  }
  .c-copy-wrap.coupon img {
    width: 20px;
  }
  .c-btn02 {
    margin-top: 30px;
  }
  .c-btn05 {
    margin-top: 30px;
  }
  .home-front .home-ttl {
    margin-bottom: 20px;
  }
  .home-front .top-ranking-section .ranking-tags > li > button {
    font-size: 14px;
    min-width: 140px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child select {
    width: 110px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child::after {
    left: 88px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child::before {
    left: 77px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box:first-child .unit {
    left: 115px;
  }
  .c-form-flow > li {
    font-size: 12px;
    padding: 30px 5px 0 0;
  }
  .c-form-flow > li .num {
    right: 5px;
  }
  .c-form-flow > li:first-child {
    padding: 30px 10px 1px 5px;
  }
  .c-form-flow > li:first-child .num {
    right: 5px;
  }
  .p-order .cmp-link {
    padding: 4px 5px 10px;
  }
  .p-order .cmp-link .txt-wrap .date {
    font-size: 11px;
  }
  .c-order-lists .cards .txt-wrap .review-box {
    width: 100%;
    margin: 12px 0 0;
    padding: 20px 10px 10px;
  }
  .c-order-lists .detail-card .order-infos .card {
    margin: 0 5px;
    padding: 20px 10px;
  }
  .c-order-lists .detail-card .price-list > dt:nth-last-child(-n+2)::after, .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
    left: -10px;
    width: calc(100% + 10px);
  }
  .c-order-lists .detail-card .price-list > dd:nth-last-child(-n+2)::after {
    left: 0;
    width: calc(100% + 10px);
  }
  .c-order-lists .method .c-tab-box {
    padding: 20px 10px;
  }
  .p-cart .cart-outer-wrap .cart-list > li {
    gap: 10px;
    padding: 20px 10px 25px;
  }
  .p-cart .cart-outer-wrap .cart-list .info {
    font-size: 13px;
  }
  .p-procedure .agency-block .txt {
    text-align: left;
  }
  .p-procedure .window-block {
    padding: 15px 10px;
  }
  .p-procedure .window-block .window-inner {
    padding: 20px 10px;
  }
}
@media only screen and (max-width: 374px) {
  .c-header .menu-modal .top-wrap .btns > li.wide > a {
    font-size: 16px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box {
    max-width: 110px;
  }
  .c-order-lists .cards .card {
    padding: 18px 10px 30px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 370px) {
  .header-campaign-area .header-campaign-area-inner {
    gap: 0 8px;
  }
  .header-campaign-area .ttl {
    gap: 3px;
    font-size: 13px;
  }
}
@media only screen and (max-width: 370px) {
  .header-campaign-area .date {
    font-size: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 920px) {
  .global-navigation .inner-block {
    padding: 0 20px;
  }
  .p-product .product-box .ttl {
    padding-left: 40px;
  }
  .p-product .product-box .txt-block {
    padding-left: 40px;
  }
  .c-contact-wrap .file-container .container {
    gap: 10px;
  }
  .c-contact-wrap .file-container .wrap label {
    font-size: 16px;
    padding: 12px 8px;
    width: 134px;
  }
  .c-contact-wrap .file-container .wrap .name {
    font-size: 16px;
    padding: 12px;
    width: calc(100% - 134px);
  }
  .c-contact-wrap .file-container .wrap.uploaded {
    width: calc(100% - 90px);
  }
  .p-shopping .c-contact-wrap .file-container .uploaded {
    width: 100%;
  }
}
@media only screen and (max-width: 1240px) {
  .global-navigation .tags > li {
    position: static;
    width: calc((100% - 25px) / 3);
  }
  .global-navigation .tags > li:first-child .c-tags-outer::after {
    left: calc((100% - 25px) / 3 / 2);
  }
  .global-navigation .tags > li:nth-child(2) .c-tags-outer {
    left: 0;
    right: 0;
    margin: auto;
  }
  .global-navigation .tags > li:nth-child(3) .c-tags-outer {
    left: 0;
  }
  .global-navigation .tags > li:nth-child(3) .c-tags-outer::after {
    left: auto;
    right: calc((100% - 25px) / 6);
  }
  .p-column {
    padding-top: 0;
  }
}
@media only screen and (max-width: 1240px) and (max-width: 767px) {
  .global-navigation .tags > li {
    border-top: 1px solid #EBEBEB;
    width: 100%;
  }
  .global-navigation .tags > li:nth-child(2) .c-tags-outer {
    width: 100%;
  }
  .p-column {
    padding-top: 120px;
  }
}
@media only screen and (max-width: 1120px) and (max-width: 767px) {
  .header-menu {
    top: 1px;
    margin-right: 4px;
  }
  .c-news-list {
    margin-top: 20px;
  }
  .c-cat-modal-wrap .cat-modal .c-tags-outer {
    max-width: none;
    width: 100%;
    padding-top: 26px;
  }
  .new-tpl_review-box {
    gap: 18px;
    padding: 20px 13px 28px;
  }
  .new-tpl_review-box .star-list .bar-wrap {
    width: calc(100% - 167px);
  }
  .nav-btn {
    line-height: 1.25;
    min-height: 54px;
    padding: 4px 40px 4px 12px;
  }
  .home-front .cat-modal-wrap .cat-modal .c-tags-outer {
    max-width: none;
    width: 100%;
    padding-top: 26px;
  }
  .p-product-detail .review-box {
    gap: 22px;
    padding: 20px 13px 28px;
  }
  .p-product-detail .review-box .star-list .bar-wrap {
    width: calc(100% - 167px);
  }
  .p-product-detail .review-box .graph-wrap {
    padding: 0 10px 0 5px;
    margin-top: 0;
    gap: 15px;
  }
  .p-column-top .c-section#section01::before {
    top: auto;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    bottom: -145px;
    width: 235px;
    height: 238px;
    right: -115px;
  }
  .p-column-top .c-section#section05::before {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    width: 235px;
    height: 238px;
    right: auto;
    left: -70px;
    top: calc(50% - 70px);
  }
  .p-column-list::before {
    top: calc(50% - 70px);
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    width: 235px;
    height: 238px;
    right: -95px;
  }
  .p-column-list::after {
    top: 250px;
    width: 248px;
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
    height: 220px;
    left: -150px;
  }
}
@media only screen and (max-width: 349px) {
  .foot-float-wrap .foot-float-list {
    padding: 0 5px;
  }
  .p-product .js--result .controls {
    gap: 5px 10px;
  }
  .p-contact-finish .txt-box .txt {
    font-size: 14px;
  }
  .p-cart .coupon-list .c-copy-wrap .code {
    font-size: 16px;
  }
  .p-cart .option-list .radio label {
    padding-left: 39px;
  }
  .p-mypage .tracking-area .search-input-area input::-webkit-input-placeholder {
    font-size: 20px;
  }
  .p-mypage .tracking-area .search-input-area input::-moz-placeholder {
    font-size: 20px;
  }
  .p-mypage .tracking-area .search-input-area input:-ms-input-placeholder {
    font-size: 20px;
  }
  .p-mypage .tracking-area .search-input-area input::-ms-input-placeholder {
    font-size: 20px;
  }
  .p-mypage .tracking-area .search-input-area input::placeholder {
    font-size: 20px;
  }
}
@media only screen and (max-width: 920px) {
  .br-921 {
    display: none;
  }
  .p-column-list .c-column-list > li > a {
    gap: 10px;
    padding: 19px 15px 19px 20px;
  }
  .c-column-header .main-header .inner-block {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 1280px) {
  .c-product-display-area.paging-list .c-product-list > li {
    width: calc((100% - 75px) / 4);
  }
  .p-product-detail .c-cart-wrap:not(.small) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-product-detail .c-cart-wrap:not(.small) .c-btn03 {
    margin-left: 0;
  }
  .p-product-detail .c-cart-wrap.small {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-product-detail .c-cart-wrap.small .num-wrap {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.small .c-btn03 {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .num-wrap {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .c-btn03 {
    width: 100%;
  }
  .p-shopping .cart-outer-wrap {
    gap: 15px;
  }
  .p-shopping .cart-outer-wrap .cart-inner-wrap {
    width: calc(100% - 355px);
  }
  .p-column .global-navigation .tags {
    gap: 10px;
  }
  .p-column .global-navigation .tags > li {
    width: calc((100% - 30px) / 4);
  }
}
@media only screen and (max-width: 1280px) and (max-width: 954px) {
  .c-product-display-area.paging-list .c-product-list > li {
    width: calc((100% - 50px) / 3);
  }
}
@media only screen and (max-width: 1280px) and (max-width: 954px) and (max-width: 560px) {
  .c-product-display-area.paging-list .c-product-list > li {
    width: calc((100% - 25px) / 2);
  }
}
@media only screen and (max-width: 1280px) and (max-width: 954px) and (max-width: 560px) and (max-width: 374px) {
  .c-product-display-area.paging-list .c-product-list > li {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1240px) {
  .c-tags-outer {
    width: 100%;
    top: calc(100% - 43px);
  }
  .nav-btn02::after, .nav-btn02::before {
    right: 16px;
  }
  .c-bg-wrap::before {
    height: 237px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1240px) and (max-width: 1120px) {
  .c-tags-outer {
    padding: 18px 15px 20px;
  }
}
@media (any-hover: hover) {
  .c-section .contents table.new-tpl tr td:first-child a:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .new-tpl_anchor-wrap .anchor-list li a:hover {
    background: #E9E5FF;
  }
  .new-tpl_anchor-wrap .anchor-list li a:hover::before, .new-tpl_anchor-wrap .anchor-list li a:hover::after {
    bottom: 14px;
  }
  .new-tpl_anchor-wrap.small .anchor-list li a:hover::before, .new-tpl_anchor-wrap.small .anchor-list li a:hover::after {
    bottom: 11px;
  }
  .new-tpl_product-anchor-list li a:hover {
    background: #E9E5FF;
  }
  .new-tpl_product-anchor-list li a:hover::before, .new-tpl_product-anchor-list li a:hover::after {
    right: 22px;
  }
  .new-tpl_anchor-link:hover {
    background: #E9E5FF;
  }
  .new-tpl_anchor-link:hover::before, .new-tpl_anchor-link:hover::after {
    right: 72px;
  }
  .new-tpl_purpose-list li a:hover::before, .new-tpl_purpose-list li a:hover::after {
    right: 20px;
  }
  .new-tpl_shape-list li a:hover {
    /* ここではホバー効果なし */
    /* background: $purple04; */
  }
  .new-tpl_link-list .inn .link-list li a:hover {
    color: #8776D0;
  }
  .new-tpl_link-list .inn .link-list li a:hover::before, .new-tpl_link-list .inn .link-list li a:hover::after {
    right: -3px;
  }
  .new-tpl_link-list .inn .link:hover::before {
    -webkit-transform: translateX(3px);
            transform: translateX(3px);
  }
  .c-btn03.buy-detail-btn.c-arrow:hover::before, .c-btn03.buy-detail-btn.c-arrow:hover::after {
    background: #8776D0;
  }
  .c-contact-wrap .file-container .each-delete-btn:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  article.article.type-post.post .wp-block-list li a:hover {
    text-decoration: underline;
  }
  article.article.type-post.post .author-area .column-wrap:hover {
    text-decoration: none;
    opacity: 0.7;
  }
  .under-entry-content .rect-mini-card .related-entry-card-wrap:hover {
    opacity: 0.7;
    border: 1px solid #8776D0;
  }
  .p-staff-recommend .item-list-area .item-list a:hover {
    opacity: 0.8;
  }
}
@media only screen and (max-width: 1100px) {
  .c-section .contents .new-tpl_flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
  .new-tpl_point-wrap .point-list li {
    width: calc((100% - 16px) / 2);
  }
  .new-tpl_product-anchor-list li {
    width: calc((100% - 10px) / 2);
  }
  .new-tpl_link-list .inn {
    width: calc((100% - 10px) / 2);
    max-width: 400px;
  }
  .p-column-top .pickup-swiper .pickup-balloon {
    top: min(21px, 1.9090909091vw);
  }
  .p-column-top .pickup-swiper .pickup-balloon img, .p-column-top .pickup-swiper .pickup-balloon source {
    width: min(176px, 16vw);
    vertical-align: top;
  }
  .new-main-category .column-list {
    grid-template-columns: 100%;
    gap: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 1101px) {
  .c-section .contents .new-tpl_flex .txt-wrap {
    width: calc((100% - 15px) * 635 / 1185);
  }
  .c-section .contents .new-tpl_flex .img {
    width: calc((100% - 15px) * 550 / 1185);
  }
}
@media only screen and (max-width: 767px) and (max-width: 480px) {
  .c-paging-area {
    max-width: none;
    padding: 4px 10px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% + 10px);
    margin-left: -5px;
  }
  .c-contact-wrap .file-container .wrap.uploaded {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) and (max-width: 600px) {
  .new-tpl_anchor-wrap.small .anchor-list li {
    width: calc((100% - 24px) / 4);
  }
}
@media only screen and (min-width: 481px) {
  .new-tpl_anchor-wrap.small .anchor-list li a .br-480 {
    display: none;
  }
}
@media only screen and (max-width: 1100px) and (max-width: 767px) {
  .new-tpl_point-wrap .point-list li {
    width: calc((100% - 21px) / 4);
  }
  .new-tpl_product-anchor-list li {
    width: calc((100% - 16px) / 3);
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .new-tpl_link-list .inn {
    width: 100%;
    padding-block: 18px;
  }
  .p-column-top .pickup-swiper .pickup-balloon img, .p-column-top .pickup-swiper .pickup-balloon source {
    width: 120px;
  }
  .p-column-top .pickup-swiper .pickup-balloon {
    top: 15px;
  }
}
@media only screen and (max-width: 1300px) {
  .new-tpl_purpose-list li {
    width: calc((100% - 12px) / 2);
    max-width: 450px;
  }
  .new-tpl_shape-list li {
    width: calc((100% - 12px) / 2);
    max-width: 450px;
  }
}
@media only screen and (max-width: 1300px) and (max-width: 767px) {
  .new-tpl_purpose-list li {
    width: 100%;
  }
  .new-tpl_shape-list li {
    width: calc((100% - 5px) / 2);
  }
}
@media only screen and (max-width: 767px) and (max-width: 364px) {
  .new-tpl_review-box .star-list .percent {
    font-size: 15px;
    width: 60px !important;
  }
}
@media only screen and (max-width: 1120px) and (max-width: 767px) and (max-width: 374px) {
  .nav-btn {
    font-size: 14px;
    padding: 4px 30px 4px 10px;
  }
}
@media only screen and (min-width: 827px) {
  .c-btn02.line {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 826px) {
  .c-btn02.line {
    padding: 0 20px;
    margin: auto;
    max-width: 280px;
  }
}
@media only screen and (min-width: 1281px) {
  .home-front .top-banner-section .main-swiper .swiper-button-prev {
    left: calc(50vw - 590px);
  }
  .home-front .top-banner-section .main-swiper .swiper-button-next {
    right: calc(50vw - 590px);
  }
}
@media only screen and (max-width: 767px) and (max-width: 345px) {
  .home-front .top-banner-section .main-swiper .swiper-button-prev {
    left: 20px;
  }
  .home-front .top-banner-section .main-swiper .swiper-button-next {
    right: 20px;
  }
}
@media only screen and (max-width: 980px) {
  .home-front .recommend-category-list {
    width: calc(100% + 40px);
    margin-right: -40px;
  }
  .home-front .recommend-category-list li > a {
    min-height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .home-front .recommend-category-list .img-box,
  .home-front .recommend-category-list .txt-box {
    width: 100%;
  }
  .home-front .recommend-category-list .txt-box {
    background: transparent;
    margin-top: 10px;
    border-radius: 0;
  }
  .c-contact-wrap .q-wrap .input-area.triple {
    gap: 46px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box .unit {
    right: -21px;
  }
  .p-faq .faq-list > li .q-row {
    padding-left: 60px;
  }
  .p-faq .faq-list > li .q-row::after {
    left: 0;
  }
  .p-faq .faq-list > li .a-row {
    padding-left: 40px;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list {
    padding-left: 0;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list .a-row {
    padding-right: 40px;
  }
  .p-faq .faq-list > li:nth-child(n+10) .q-row {
    padding-left: 69px;
  }
  .p-faq.p-notice .faq-list li .q-row {
    padding-left: 70px;
  }
  .p-faq.p-notice .faq-list li .q-row .img-box {
    left: 20px;
  }
  .c-order-lists-area .layout-981 {
    display: none;
  }
  .c-order-lists .cards .txt-wrap {
    max-width: none;
    width: 100%;
  }
  .c-order-lists .cards .txt-wrap .outer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .c-order-lists .cards .txt-wrap .inner {
    width: calc(100% - 205px);
    margin-right: 15px;
  }
  .c-order-lists .cards .txt-wrap .note-txt {
    text-align: center;
    margin-top: 22px;
  }
  .c-order-lists .detail-card .js--toggle-target .outer-wrap {
    gap: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-order-lists .detail-card .order-products > li + li {
    position: relative;
  }
  .c-order-lists .detail-card .order-products > li + li::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: linear-gradient(to right, #D9D9D9 2px, transparent 2px);
    background-repeat: repeat-x;
    background-size: 4px 1px;
  }
  .c-order-lists .detail-card .order-products .track {
    max-width: 340px;
    margin-top: 18px;
  }
  .c-order-lists .detail-card .order-infos .card + .card {
    margin-top: 10px;
  }
  .p-cart .cart-outer-wrap .cart-infos {
    width: 100%;
  }
  .p-cart .cart-outer-wrap .cart-infos .btn-wrap {
    margin-top: 30px;
  }
  .p-column-top .pickup-swiper .ttl, .p-column-top .newest-swiper .ttl {
    font-size: 22px;
    margin-top: 15px;
  }
  .p-column-top .pickup-swiper .foot, .p-column-top .newest-swiper .foot {
    margin-top: 10px;
  }
  .p-column .tag-list.q-list {
    gap: 20px;
  }
  .p-column .tag-list.q-list > li {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 980px) and (max-width: 767px) {
  .home-front .recommend-category-list {
    width: calc(100% + 15px);
    margin-right: -15px;
  }
  .home-front .recommend-category-list .txt-box {
    padding: 0 40px 0 0;
  }
  .home-front .recommend-category-list .txt-box::before, .home-front .recommend-category-list .txt-box::after {
    width: 2px;
    height: 17px;
    top: -11px;
    bottom: 0;
    margin: auto;
  }
  .home-front .recommend-category-list .txt-box::after {
    top: 11px;
  }
  .c-contact-wrap .q-wrap .input-area.triple {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 20px 56px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box .unit {
    right: -26px;
    font-size: 16px;
  }
  .p-faq .faq-list > li .q-row {
    padding: 15px 45px 15px 75px;
  }
  .p-faq .faq-list > li .q-row::after {
    top: 10px;
    left: 15px;
    font-size: 16px;
  }
  .p-faq .faq-list > li .a-row {
    padding: 17px 30px 18px 55px;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list {
    padding-left: 10px;
  }
  .p-faq .faq-list > li .a-row.faq-inner-list .a-row {
    padding: 17px 30px 18px 55px;
  }
  .p-faq .faq-list > li:nth-child(n+10) .q-row {
    padding-left: 83px;
  }
  .c-order-lists .cards .txt-wrap {
    margin-top: 0;
  }
  .c-order-lists .cards .txt-wrap .inner {
    width: calc(100% - 135px);
  }
  .p-column-top .pickup-swiper .ttl, .p-column-top .newest-swiper .ttl {
    font-size: 16px;
    line-height: 1.1875;
    margin-top: 8px;
    -webkit-line-clamp: 3;
  }
  .p-column-top .pickup-swiper .foot, .p-column-top .newest-swiper .foot {
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.2307692308;
  }
  .p-column .tag-list.q-list {
    gap: 10px;
  }
  .p-column .tag-list.q-list > li {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1120px) {
  .home-front .recommend-category-list .txt-box {
    padding: 0 40px 0 30px;
  }
  .home-front .recommend-category-list .txt-box::before, .home-front .recommend-category-list .txt-box::after {
    right: 16px;
    width: 18px;
    top: 11px;
  }
  .home-front .recommend-category-list .txt-box::after {
    top: -11px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1080px) {
  .home-front .recommend-category-list .txt-box .txt {
    margin-top: 10px;
  }
  .c-contact-wrap .q-wrap .input-area.twin {
    gap: 20px;
  }
  .c-contact-wrap .q-wrap .input-area.twin input {
    width: calc(50% - 10px);
  }
  .c-contact-wrap.part-confirm .q-wrap .label-area {
    width: 200px;
  }
  .c-contact-wrap.part-confirm .q-wrap .input-area {
    width: calc(100% - 220px);
  }
  .p-column-list .c-column-list > li > a {
    gap: 10px;
  }
  .p-column .tag-list {
    gap: 30px 20px;
  }
  .p-column .tag-list > li {
    width: calc((100% - 60px) / 4);
  }
}
@media only screen and (max-width: 840px) {
  .new-home-front .coupon-wrap {
    grid-template-columns: 100%;
    gap: 7px;
    padding: 12px 20px 12px 25px;
    margin-bottom: 31px;
  }
}
@media only screen and (min-width: 900px) {
  .new-home-front .coupon-wrap .c-btn03 {
    margin-right: 0;
    width: 330px;
    margin-left: auto;
  }
}
@media only screen and (max-width: 1230px) {
  .new-home-front .scroll-area {
    overflow-x: auto;
    padding-bottom: 10px;
  }
  .new-home-front .scroll-area::-webkit-scrollbar {
    height: 4px;
    border-radius: 100px;
    position: relative;
    z-index: 5;
  }
  .new-home-front .scroll-area::-webkit-scrollbar-track {
    background-color: #F5F5F5;
    border-radius: 100px;
  }
  .new-home-front .scroll-area::-webkit-scrollbar-thumb {
    background-color: #8776D0;
    border-radius: 100px;
  }
  .new-home-front .scroll-area .search-list {
    min-width: 1135px;
  }
}
@media only screen and (max-width: 1230px) and (max-width: 767px) {
  .new-home-front .scroll-area .search-list {
    min-width: 1060px;
  }
}
@media only screen and (max-width: 1030px) {
  .new-home-front .info-wrap {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 11px 6px;
  }
  .new-home-front .info-wrap a:nth-child(1) {
    grid-area: 1/1/2/3;
  }
  .new-home-front .info-wrap a:nth-child(2) {
    grid-area: 2/1/3/2;
  }
  .new-home-front .info-wrap a:nth-child(3) {
    grid-area: 2/2/3/3;
  }
}
@media only screen and (max-width: 767px) and (max-width: 349px) {
  .p-product .js--result .controls .select-box:nth-child(2) {
    width: calc(100% - 130px);
  }
  .p-cart .cart-outer-wrap .cart-infos .c-purple-card {
    padding: 20px 15px;
  }
  .p-procedure .txt-box .txt {
    font-size: 16px;
  }
  .p-procedure .agency-block .c-agency-link {
    padding-right: 15px;
  }
  .p-procedure .agency-block .c-agency-link::before, .p-procedure .agency-block .c-agency-link::after {
    right: 7px;
  }
  .p-procedure .window-block .layer:nth-child(2) .txt {
    font-size: 14px;
  }
  .p-mypage .menu-link-list a::before {
    right: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1300px) {
  .p-product-detail .product-anchor-menu__list {
    gap: 15px;
  }
  .p-product-detail .product-anchor-menu__label {
    font-size: 12px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1300px) and (max-width: 1165px) {
  .p-product-detail .product-anchor-menu__list {
    gap: 10px;
  }
  .p-product-detail .product-anchor-menu__label {
    font-size: 11px;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 767px) {
  .p-product-detail .c-cart-wrap:not(.small) .c-btn03 {
    margin-left: auto;
  }
  .p-product-detail .c-cart-wrap:not(.small) {
    margin-top: 3px;
    gap: 19px;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1280px) {
  .p-product-detail .c-cart-wrap:not(.small) .num-wrap {
    width: 100%;
    gap: 60px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1280px) and (max-width: 767px) {
  .p-product-detail .c-cart-wrap:not(.small) .num-wrap {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1120px) {
  .p-product-detail .c-cart-wrap.small {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 20px;
  }
  .p-product-detail .c-cart-wrap.small .num-wrap {
    width: calc(100% - 90px);
  }
  .p-product-detail .c-cart-wrap.small .c-btn03 {
    width: 70px;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .num-wrap {
    width: calc(100% - 90px);
  }
  .p-product-detail .c-cart-wrap.sold-out.small .c-btn03 {
    height: 44px;
    width: 70px;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .c-btn03 .sp {
    display: block !important;
  }
  .p-shopping .cart-outer-wrap .cart-inner-wrap {
    width: calc(100% - 335px);
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1120px) and (max-width: 360px) {
  .p-product-detail .c-cart-wrap.small {
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p-product-detail .c-cart-wrap.small .num-wrap {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.small .c-btn03 {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .num-wrap {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .c-btn03 {
    width: 100%;
  }
  .p-product-detail .c-cart-wrap.sold-out.small .c-btn03 .sp {
    display: none !important;
  }
}
@media only screen and (max-width: 1120px) and (max-width: 920px) {
  .p-product-detail .l-product .img-area {
    margin: 32px auto 15px;
  }
  .p-product-detail .l-product .main-wrap {
    max-width: 400px;
    margin: 0 auto;
    width: 100%;
  }
  .p-product-detail .thumb-wrapper {
    display: none;
  }
}
@media only screen and (max-width: 1120px) and (max-width: 920px) and (max-width: 767px) {
  .p-product-detail .l-product .img-area {
    width: calc(100% + 30px);
    margin-top: 16px;
    -webkit-transform: translateX(-15px);
            transform: translateX(-15px);
  }
}
@media only screen and (max-width: 360px) {
  .p-product-detail .toc-area {
    right: -250px;
  }
  .c-order-lists .detail-card .order-products .info {
    font-size: 12px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 360px) {
  .p-product-detail .toc-wrap {
    max-width: 100%;
  }
  .c-contact-wrap .radio-wrap .input-area {
    gap: 15px 30px;
  }
  .c-contact-wrap .file-container .wrap .name {
    padding: 14px 15px;
  }
  .c-contact-wrap .q-outer-wrap {
    gap: 15px;
  }
}
@media only screen and (max-width: 1020px) {
  .p-maker .maker-list-inner > li {
    max-width: none;
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 1020px) and (max-width: 767px) {
  .p-maker .maker-list-inner > li {
    width: 100%;
  }
}
@media only screen and (max-width: 1080px) {
  .c-contact-wrap .q-wrap .mail-note {
    padding-left: 260px;
  }
  .c-contact-wrap .q-wrap .note {
    padding-left: 260px;
  }
  .c-contact-wrap .q-wrap .label-area {
    width: 240px;
  }
  .c-contact-wrap .q-wrap .error-txt {
    padding-left: 260px;
  }
  .c-contact-wrap .q-wrap .input-area {
    width: calc(100% - 260px);
  }
  .c-contact-wrap .q-wrap.no-shrink .input-area {
    width: calc(100% - 350px);
  }
  .c-contact-wrap .q-wrap.no-shrink .label-area {
    width: 330px;
  }
  .c-order-lists .detail-card .js--toggle-target {
    padding: 20px;
  }
  .c-order-lists .detail-card .order-products {
    width: calc(100% - 356px);
  }
  .c-order-lists .detail-card .order-products > li {
    padding: 20px 0;
  }
  .c-order-lists .detail-card .order-products .thumb {
    width: 120px;
    height: 120px;
  }
  .c-order-lists .detail-card .order-products .txt-wrap {
    width: calc(100% - 170px);
  }
  .c-order-lists .detail-card .order-infos {
    width: 340px;
  }
  .p-cart .cart-outer-wrap {
    gap: 15px;
  }
  .p-cart .cart-outer-wrap .cart-list .txt-wrap {
    width: calc(100% - 140px);
  }
  .p-cart .cart-outer-wrap .cart-list .thumb {
    width: 120px;
    height: 120px;
  }
  .p-cart .cart-inner-wrap {
    width: calc(100% - 360px);
  }
  .p-mypage .menu-area .btn {
    padding: 8px 15px;
  }
  .p-column-list .c-column-list {
    gap: 30px 20px;
  }
  .p-column-list .c-column-list > li {
    width: calc(50% - 10px);
  }
  .p-column-list .c-column-list > li .thumb {
    width: 150px;
    height: 100px;
  }
  .p-column-list .c-column-list > li .txt-wrap {
    width: calc(100% - 160px);
  }
  .c-column-header .main-header {
    gap: 30px;
  }
  .c-column-header .main-header .header-cont {
    width: calc(100% - 260px);
    gap: 15px;
  }
  .c-column-header .main-header .logo {
    width: 168px;
    height: 50px;
  }
  .c-column-header .main-header .search-input-area {
    width: calc(100% - 183px);
  }
}
@media only screen and (max-width: 1080px) and (max-width: 767px) {
  .c-contact-wrap .q-wrap .mail-note {
    padding-left: 0;
    font-size: 16px;
  }
  .c-contact-wrap .q-wrap .note {
    padding-left: 0;
  }
  .c-contact-wrap .q-wrap .label-area {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 18px;
  }
  .c-contact-wrap .q-wrap .error-txt {
    padding-left: 0;
    font-size: 16px;
  }
  .c-contact-wrap .q-wrap .input-area {
    width: 100%;
  }
  .c-contact-wrap .q-wrap.no-shrink .input-area {
    width: 100%;
  }
  .c-contact-wrap .q-wrap.no-shrink .label-area {
    width: 100%;
  }
  .c-order-lists .detail-card .js--toggle-target {
    padding: 0 0 10px;
  }
  .c-order-lists .detail-card .order-products > li {
    padding: 20px 10px 25px 20px;
  }
  .c-order-lists .detail-card .order-products .txt-wrap {
    width: calc(100% - 110px);
  }
  .p-cart .cart-outer-wrap .cart-list .txt-wrap {
    width: calc(100% - 120px);
  }
  .p-cart .cart-outer-wrap .cart-list .thumb {
    margin-top: 35px;
    width: 100px;
    height: 100px;
  }
  .c-column-header .main-header {
    padding: 10px 0 15px;
  }
  .c-column-header .main-header .header-cont {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 10px;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-column-header .main-header .search-input-area {
    width: 100%;
    height: 35px;
  }
}
@media only screen and (max-width: 980px) and (max-width: 767px) and (max-width: 374px) {
  .c-contact-wrap .q-wrap .input-area.triple {
    gap: 20px 46px;
  }
  .c-contact-wrap .q-wrap .input-area.triple .select-box .unit {
    right: -21px;
  }
}
@media only screen and (max-width: 480px) {
  .c-contact-wrap .file-delete-btn {
    padding: 5px 9px 6px;
  }
}
@media only screen and (max-width: 1140px) {
  .p-faq .anchor-list > li {
    width: calc(50% - 10px);
  }
}
@media only screen and (max-width: 980px) and (max-width: 767px) and (max-width: 360px) {
  .p-faq .faq-list > li .a-row.faq-inner-list {
    padding-left: 0;
  }
}
@media only screen and (min-width: 981px) {
  .c-order-lists-area .layout-980 {
    display: none;
  }
  .p-cart .cart-outer-wrap .cart-infos .c-ttl04 {
    display: none;
  }
  .p-column-list .tag-list.q-list {
    gap: 20px 60px !important;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 980px) {
  .c-order-lists .detail-card .order-products {
    width: 100%;
  }
  .c-order-lists .detail-card .order-products .thumb {
    width: 150px;
    height: 150px;
  }
  .c-order-lists .detail-card .order-infos {
    padding-top: 15px;
    width: 100%;
    position: relative;
  }
  .c-order-lists .detail-card .order-infos::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: linear-gradient(to right, #D9D9D9 2px, transparent 2px);
    background-repeat: repeat-x;
    background-size: 4px 1px;
  }
  .p-cart .cart-outer-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
  .p-cart .cart-inner-wrap {
    width: 100%;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 767px) and (max-width: 374px) {
  .c-order-lists .detail-card .order-products > li {
    padding: 20px 10px 25px;
  }
  .p-cart .cart-outer-wrap .cart-list .txt-wrap {
    width: calc(100% - 110px);
  }
}
@media only screen and (max-width: 1080px) and (max-width: 980px) and (max-width: 480px) {
  .c-order-lists .detail-card .order-products .thumb {
    margin-top: 35px;
    width: 100px;
    height: 100px;
  }
}
@media only screen and (max-width: 452px) {
  .c-order-lists .method .c-tabs {
    gap: 0;
  }
}
@media only screen and (max-width: 767px) and (max-width: 452px) {
  .c-order-lists .method .c-tabs .js--tab:nth-child(1) {
    width: 110px;
  }
  .c-order-lists .method .c-tabs .js--tab:nth-child(2) {
    width: 180px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 452px) and (max-width: 345px) {
  .c-order-lists .method .c-tabs .js--tab:nth-child(1) {
    width: 105px;
  }
  .c-order-lists .method .c-tabs .js--tab:nth-child(2) {
    width: 165px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 980px) and (max-width: 767px) {
  .p-cart .cart-outer-wrap {
    margin-top: 12px;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 980px) {
  .p-shopping .cart-outer-wrap {
    gap: 45px;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1120px) and (max-width: 980px) {
  .p-shopping .cart-outer-wrap .cart-inner-wrap {
    width: 100%;
  }
}
@media only screen and (max-width: 1120px) and (max-width: 980px) {
  .p-shopping .cart-outer-wrap .cart-infos {
    width: 100%;
  }
}
@media only screen and (max-width: 980px) and (min-width: 436px) {
  .p-shopping .c-contact-wrap .file-container .container {
    max-width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .p-shopping .c-contact-wrap .file-container .container .wrap {
    width: calc(100% - 90px);
  }
}
@media only screen and (min-width: 881px) {
  .p-mypage .br-880 {
    display: none;
  }
  .p-mypage .rank-area .ico {
    margin-top: 4px;
  }
  .p-mypage .menu-area .btn:nth-child(1) {
    width: min(530px, 36.8055555556vw);
  }
  .p-mypage .menu-area .btn:nth-child(3) {
    min-height: 200px;
  }
  .p-mypage .menu-area .btn:nth-child(4) {
    min-height: 200px;
  }
}
@media only screen and (max-width: 880px) {
  .p-mypage .rank-area {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    padding: 20px 20px 20px 15px;
    max-width: 450px;
    width: 100%;
    margin: auto;
  }
  .p-mypage .rank-area .l-right {
    grid-template-columns: auto;
    gap: 8px;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p-mypage .menu-area {
    margin-top: 20px;
    gap: 20px 15px;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, auto);
  }
  .p-mypage .menu-area .btn:nth-child(1) {
    grid-area: 1/1/2/3;
    min-height: 150px;
    padding-left: 10px;
  }
  .p-mypage .menu-area .btn:nth-child(2) {
    grid-area: 2/1/3/3;
    padding: 8px 30px 8px 5px;
    gap: 38px;
  }
  .p-mypage .menu-area .btn:nth-child(3) {
    gap: 16px;
    grid-area: 3/2/4/3;
  }
  .p-mypage .menu-area .btn:nth-child(4) {
    gap: 16px;
    grid-area: 3/1/4/2;
  }
  .p-mypage .menu-area .btn {
    padding: 20px 5px;
  }
  .p-mypage .menu-area .btn:nth-child(3), .p-mypage .menu-area .btn:nth-child(4) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 18px 5px;
  }
  .p-mypage .menu-area .ico.large {
    width: 70px;
    height: 70px;
  }
  .p-mypage .menu-area .ico.medium {
    width: 70px;
    height: 70px;
  }
  .p-mypage .menu-area .ico.small {
    width: 50px;
    height: 50px;
  }
}
@media only screen and (max-width: 880px) and (max-width: 767px) {
  .p-mypage .rank-area {
    max-width: 345px;
  }
  .p-mypage .menu-area .btn:nth-child(1) .menu-ttl {
    text-align: left;
    margin-bottom: 11px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 880px) {
  .p-mypage .menu-area .btn {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (min-width: 768px) and (max-width: 880px) {
  .p-mypage .menu-area .btn:nth-child(2) .ico img {
    max-height: min(30px, 3.4090909091vw);
    left: 1px;
  }
}
@media only screen and (max-width: 1000px) {
  .p-mypage .tracking-area {
    grid-template-columns: 1fr;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 20px 13px;
  }
  .p-mypage .tracking-area > .ico {
    max-width: 70px;
    height: 70px;
    padding: 14px;
    margin: 0 auto 10px;
  }
  .p-mypage .tracking-area > .ico img {
    width: 39px;
  }
  .p-mypage .tracking-area .tracking-ttl {
    margin-bottom: 5px;
    text-align: center;
  }
  .p-mypage .tracking-area .tracking-txt {
    font-size: 14px;
    line-height: 1.2142857143;
    margin-bottom: 10px;
    text-align: center;
  }
  .p-mypage .tracking-area .search-input-area {
    margin: auto;
    height: 44px;
  }
  .p-mypage .tracking-area .search-input-area input {
    line-height: 41px;
    padding-left: 28px;
  }
  .p-mypage .tracking-area .search-input-area .ico img {
    width: 24px;
    top: -1px;
    height: 24px;
  }
  .p-mypage .menu-link-list {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 30px;
  }
  .p-mypage .menu-link-list a {
    font-size: 16px;
    gap: 15px;
    padding: 10px 24px 10px 15px;
  }
  .p-column-top .home-ttl {
    margin-left: 0;
  }
  .redit_search .search-area {
    padding: 20px 13px;
  }
}
@media only screen and (min-width: 1001px) {
  .p-mypage .tracking-area .txt-wrap {
    margin-left: 32px;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 349px) {
  .p-mypage .tracking-area .search-input-area input {
    font-size: 20px !important;
  }
}
@media only screen and (max-width: 1380px) and (max-width: 1000px) {
  .p-mypage .tracking-area .search-input-area .ico {
    height: 44px;
    right: 7px;
    width: 44px;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 767px) {
  .p-mypage .menu-link-list a {
    height: 50px;
    padding: 5px 24px 5px 14px;
  }
  .redit_search .search-area {
    width: 100%;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 767px) and (max-width: 349px) {
  .p-mypage .menu-link-list a {
    gap: 5px;
    padding-right: 10px;
  }
}
@media only screen and (min-width: 1521px) {
  .p-column-top .main-block::after {
    width: 150%;
    height: 700%;
  }
}
@media only screen and (max-width: 767px) and (max-width: 550px) {
  .p-column-top .pickup-swiper {
    width: calc(100% + 23px);
    max-width: calc(100% + 23px);
    margin: 30px -10px 0 -13px;
  }
  .p-column-top .pickup-swiper .thumb {
    width: 58.6666666667vw;
  }
  .p-column-top .pickup-swiper .swiper-slide > a .inner {
    padding-top: min(60px, 22.8571428571vw - 65.7142857143px);
  }
}
@media only screen and (max-width: 767px) and (max-width: 550px) and (max-width: 350px) {
  .p-column-top .pickup-swiper {
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 550px) and (max-width: 349px) {
  .p-column-top .pickup-swiper .swiper-slide > a .inner {
    padding-top: 7px;
  }
}
@media only screen and (max-width: 1100px) and (max-width: 767px) and (max-width: 550px) {
  .p-column-top .pickup-swiper .pickup-balloon img, .p-column-top .pickup-swiper .pickup-balloon source {
    width: min(120px, 21.8181818182vw);
  }
  .p-column-top .pickup-swiper .pickup-balloon {
    top: min(15px, 2.7272727273vw);
  }
}
@media only screen and (max-width: 1080px) and (max-width: 920px) {
  .p-column-list .c-column-list {
    margin-top: 20px;
    gap: 10px;
  }
  .p-column-list .c-column-list > li {
    width: 100%;
  }
  .p-column-list .c-column-list > li .thumb {
    width: 210px;
    height: 140px;
  }
  .p-column-list .c-column-list > li .txt-wrap {
    width: calc(100% - 220px);
  }
}
@media only screen and (max-width: 1080px) and (max-width: 920px) and (max-width: 767px) {
  .p-column-list .c-column-list {
    margin-top: 20px;
  }
  .p-column-list .c-column-list > li .thumb {
    width: 120px;
    height: 80px;
  }
  .p-column-list .c-column-list > li .txt-wrap {
    width: calc(100% - 130px);
  }
}
@media only screen and (max-width: 920px) and (max-width: 767px) {
  .c-column-header .main-header .inner-block {
    padding: 0 15px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 368px) {
  .c-column-header .main-header .logo {
    width: 135px;
    height: 50px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 368px) and (max-width: 340px) {
  .c-column-header .main-header .logo {
    margin-left: -5px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 340px) {
  .c-column-header .main-header .menu-area {
    right: 8px;
  }
  .c-column-header .main-header .menu-area .header-menu {
    margin-left: 0;
  }
}
@media only screen and (max-width: 1280px) and (max-width: 1020px) {
  .p-column .global-navigation .tags > li {
    width: calc((100% - 20px) / 3);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1080px) and (max-width: 920px) {
  .p-column .tag-list > li {
    width: calc((100% - 60px) / 3);
  }
}
@media only screen and (max-width: 1090px) {
  .p-staff-recommend .item-list-area .item-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 1090px) and (max-width: 767px) {
  .p-staff-recommend .item-list-area .item-list {
    grid-template-columns: 1fr;
    gap: 11px;
  }
}
@media only screen and (min-width: 851px) {
  .redit_search .search-area .txt .max-850 {
    display: none;
  }
}
@media only screen and (max-width: 1060px) {
  .new-main-category .new-tpl_comment-box {
    gap: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 19px 15px;
  }
  .new-main-category .new-tpl_comment-box .item-info {
    gap: 16px;
    width: 100%;
  }
  .new-main-category .new-tpl_comment-box .comment-wrap {
    width: 100%;
  }
}
@media only screen and (min-width: 1061px) {
  .new-main-category .new-tpl_comment-box .item-info {
    padding-right: 30px;
  }
  .new-main-category .new-tpl_comment-box .comment-wrap {
    border-left: 1px solid #D9D9D9;
    padding-left: 60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1060px) {
  .new-main-category .new-tpl_comment-box .item-info .c-btn03.register-btn {
    margin-right: 0;
  }
}
/*# sourceMappingURL=style.css.map */