@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Marcellus:wght@400&display=swap");
h1, h2, h3, h4, h5, h6 {
  font-weight: 700; }

html {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 62.5%;
  color: #333333; }

body {
  margin: 0;
  font-size: clamp(1.2rem, 2.5vw, 1.4rem);
  font-weight: 400;
  line-height: 1.75;
  background: #FFFFFF;
  position: relative; }

a, a:link, a:visited {
  color: #333333;
  text-decoration: underline;
  -webkit-transition: all .3s;
  transition: all .3s; }

img {
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: bottom;
  -webkit-transition: all .3s;
  transition: all .3s; }

.container {
  margin: auto;
  max-width: 1200px;
  height: auto; }

.inner {
  margin: auto;
  max-width: 1100px;
  width: 90%;
  height: auto; }

.outer {
  margin: auto;
  max-width: 1380px;
  width: 98%;
  height: auto; }

@media (min-width: 1025px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
br.sp {
  display: none; }
  @media (max-width: 768px) {
    br.sp {
      display: inline; } }

@media (min-width: 1201px) {
  .mainContentBox {
    margin: 0 auto;
    padding: 0 0 0 300px;
    max-width: 1200px;
    box-sizing: border-box; } }

/*============================================================================
	header
=============================================================================*/
.fs-l-header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 0;
  border-bottom: 1px solid #E4E4E4; }
  .fs-l-header .headerPromotionBox p {
    margin: 0;
    padding: 0; }
    .fs-l-header .headerPromotionBox p a {
      color: white;
      display: block;
      height: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #888888;
      text-align: center;
      font-size: 1.2rem;
      padding: 0.5em;
      box-sizing: border-box;
      text-decoration: none; }
  .fs-l-header .headerPromotionBox strong {
    color: #ffeb5d; }
  .fs-l-header .headerPromotionBox:has(.my-true) {
    display: none; }
  .fs-l-header .headerContentBox {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    height: 48px;
    background-color: #ffffff;
    box-sizing: border-box; }
    @media (min-width: 1201px) {
      .fs-l-header .headerContentBox {
        height: 70px; } }
    .fs-l-header .headerContentBox .logoBox {
      flex-shrink: 0;
      width: 64px;
      display: flex;
      align-items: center; }
      @media (min-width: 1201px) {
        .fs-l-header .headerContentBox .logoBox {
          width: 90px;
          margin-left: 10px; } }
      .fs-l-header .headerContentBox .logoBox a {
        display: block;
        padding: 0 10px; }
    .fs-l-header .headerContentBox .btnList {
      display: flex;
      gap: 0 5px;
      margin: 0 5px 0 0;
      padding: 0;
      list-style-type: none; }
      @media (min-width: 1201px) {
        .fs-l-header .headerContentBox .btnList {
          margin-right: 20px; } }
      .fs-l-header .headerContentBox .btnList > li {
        margin: 0; }
        .fs-l-header .headerContentBox .btnList > li a {
          display: flex;
          flex-direction: column;
          height: 100%;
          padding: 0 5px;
          box-sizing: border-box;
          text-decoration: none;
          position: relative;
          text-align: center; }
          @media (min-width: 1201px) {
            .fs-l-header .headerContentBox .btnList > li a {
              padding: 0 10px; } }
          .fs-l-header .headerContentBox .btnList > li a .fs-client-cart-count {
            display: flex;
            justify-content: center;
            align-items: center;
            color: #ffffff;
            font-size: 1rem;
            line-height: 1;
            width: 1.4em;
            aspect-ratio: 1 / 1;
            background: #333333;
            border-radius: 50%;
            position: absolute;
            top: 0.4em;
            right: -0.4em; }
            @media (min-width: 1201px) {
              .fs-l-header .headerContentBox .btnList > li a .fs-client-cart-count {
                font-size: 1.4rem; } }
          .fs-l-header .headerContentBox .btnList > li a .fs-client-cart-count.fs-client-cart-count--0 {
            display: none; }
        .fs-l-header .headerContentBox .btnList > li .icon {
          display: flex;
          justify-content: center;
          align-items: flex-end;
          flex-grow: 0.5; }
        .fs-l-header .headerContentBox .btnList > li .name {
          display: block;
          font-size: 1rem;
          letter-spacing: -0.01em;
          line-height: 1;
          height: 1em;
          margin: 0.4em 0 0 0; }
          @media (min-width: 1201px) {
            .fs-l-header .headerContentBox .btnList > li .name {
              font-size: 1.4rem; } }
        .fs-l-header .headerContentBox .btnList > li.favorite .icon img {
          width: 18px; }
          @media (min-width: 1201px) {
            .fs-l-header .headerContentBox .btnList > li.favorite .icon img {
              width: 26px; } }
        .fs-l-header .headerContentBox .btnList > li.login .icon img {
          width: 17px; }
          @media (min-width: 1201px) {
            .fs-l-header .headerContentBox .btnList > li.login .icon img {
              width: 26px; } }
        .fs-l-header .headerContentBox .btnList > li.cart .icon img {
          width: 17px; }
          @media (min-width: 1201px) {
            .fs-l-header .headerContentBox .btnList > li.cart .icon img {
              width: 26px; } }
        .fs-l-header .headerContentBox .btnList > li.login.my-true .login, .fs-l-header .headerContentBox .btnList > li.login .mypage {
          display: none; }
        .fs-l-header .headerContentBox .btnList > li.login .login, .fs-l-header .headerContentBox .btnList > li.login.my-true .mypage {
          display: inline; }
  .fs-l-header .btnMenu {
    display: block;
    width: 40px;
    height: 100%;
    position: relative;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none; }
    .fs-l-header .btnMenu > span.line, .fs-l-header .btnMenu::before, .fs-l-header .btnMenu::after {
      display: inline-block;
      position: absolute;
      left: 28%;
      width: 44%;
      height: 1px;
      background: #333333;
      border-radius: 100vmax;
      -webkit-transition: all .3s;
      transition: all .3s; }
    .fs-l-header .btnMenu > span.line {
      top: 17px; }
    .fs-l-header .btnMenu::before, .fs-l-header .btnMenu::after {
      content: ""; }
    .fs-l-header .btnMenu::before {
      top: 12px; }
    .fs-l-header .btnMenu::after {
      top: 22px; }
    .fs-l-header .btnMenu .btnMenuName {
      display: block;
      position: absolute;
      width: 100%;
      text-align: center;
      left: 0;
      bottom: 8px;
      color: #333333;
      font-size: 1rem;
      letter-spacing: -0.05em;
      line-height: 1; }
      .fs-l-header .btnMenu .btnMenuName::before {
        content: "Menu"; }
    @media (min-width: 1201px) {
      .fs-l-header .btnMenu {
        display: none; } }

#headerMenuOpenCheckbox {
  display: none; }

.headerMenuBox {
  position: fixed;
  z-index: 300;
  top: calc(30px + 48px);
  right: 0;
  width: 300px;
  height: calc(100svh - 30px - 48px);
  padding: 15px;
  box-sizing: border-box;
  overflow: scroll;
  transform: translate(100%, 0);
  background: #ffffff;
  -webkit-transition: all .3s;
  transition: all .3s; }
  .headerMenuBox:has(.my-true) {
    top: 48px; }
  .headerMenuBox.blog {
    top: calc(48px + 40px);
    height: calc(100svh - 48px - 40px); }
  @media (min-width: 1201px) {
    .headerMenuBox {
      position: relative;
      top: auto !important;
      right: auto;
      height: auto !important;
      padding: 0;
      overflow: auto;
      transform: translate(0, 0); } }
  .headerMenuBox .searchBox {
    font-size: 1.2rem; }
    .headerMenuBox .searchBox .searchContentBox {
      margin: 0;
      padding: 10px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      border: 1px solid #888888;
      position: relative; }
      .headerMenuBox .searchBox .searchContentBox input[type="text"] {
        border: none;
        width: calc(100% - 18px - 10px); }
        .headerMenuBox .searchBox .searchContentBox input[type="text"]:focus {
          outline: 0; }
      .headerMenuBox .searchBox .searchContentBox input[type="submit"] {
        cursor: pointer;
        border: none;
        background: url("../../img/icon_search.svg") 0 0 no-repeat;
        background-size: contain;
        width: 18px;
        height: 18px;
        outline: none; }
    .headerMenuBox .searchBox .keywordList {
      margin: 1.5em 0;
      padding: 0;
      list-style-type: none;
      display: flex;
      flex-wrap: wrap;
      gap: 1em; }
      .headerMenuBox .searchBox .keywordList > li {
        margin: 0; }
        .headerMenuBox .searchBox .keywordList > li a {
          text-decoration: none;
          line-height: 1;
          display: block;
          padding: 0.5em;
          background: #ECECEC;
          border-radius: 100vmax; }
          .headerMenuBox .searchBox .keywordList > li a:hover {
            text-decoration: underline; }
  .headerMenuBox .menuBannerList01 {
    margin: 2em 0;
    padding: 0;
    list-style-type: none; }
    .headerMenuBox .menuBannerList01 > li {
      margin: 0; }
      .headerMenuBox .menuBannerList01 > li + li {
        margin-top: 10px; }
      .headerMenuBox .menuBannerList01 > li a {
        display: block; }
        .headerMenuBox .menuBannerList01 > li a:hover {
          opacity: 0.7; }
  .headerMenuBox .gnaviList01 {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    .headerMenuBox .gnaviList01 > li {
      font-size: 1.4rem;
      margin: 0;
      padding: 0.5em;
      border-bottom: 1px solid #E4E4E4; }
      .headerMenuBox .gnaviList01 > li a {
        display: block;
        text-decoration: none;
        padding: 0.5em; }
        .headerMenuBox .gnaviList01 > li a:hover {
          opacity: 0.7; }
      .headerMenuBox .gnaviList01 > li > ul {
        margin: 0.5em 0 0.5em 1em;
        padding: 0;
        list-style-type: none;
        border-left: 1px solid #E4E4E4; }
        .headerMenuBox .gnaviList01 > li > ul > li {
          font-size: 1.2rem;
          margin: 0; }
  .headerMenuBox .menuList01 {
    font-size: 1.2rem;
    margin: 2em 0 0 0;
    padding: 2em 1em;
    list-style-type: none;
    background: #F6F6F6; }
    .headerMenuBox .menuList01 > li {
      margin: 0; }
      .headerMenuBox .menuList01 > li + li {
        margin-top: 2em; }
      .headerMenuBox .menuList01 > li a {
        text-decoration: none; }
        .headerMenuBox .menuList01 > li a:hover {
          text-decoration: underline; }
      .headerMenuBox .menuList01 > li .icon {
        display: inline-block;
        vertical-align: middle;
        width: 1.8em;
        margin: 0 0.5em 0 0; }
    @media (min-width: 1201px) {
      .headerMenuBox .menuList01 {
        display: none; } }

body:has(.headerPromotionBox p.my-true) .headerMenuBox {
  height: calc(100svh - 48px); }

body:has(#headerMenuOpenCheckbox:checked) .menuBoxWrapper {
  pointer-events: auto; }
body:has(#headerMenuOpenCheckbox:checked) .headerMenuBox {
  transform: translate(0, 0); }
body:has(#headerMenuOpenCheckbox:checked) .fs-l-header .btnMenu::before {
  transform: translateY(5px) rotate(-45deg); }
body:has(#headerMenuOpenCheckbox:checked) .fs-l-header .btnMenu::after {
  transform: translateY(-5px) rotate(45deg); }
body:has(#headerMenuOpenCheckbox:checked) .fs-l-header .btnMenu > span.line {
  opacity: 0; }
body:has(#headerMenuOpenCheckbox:checked) .fs-l-header .btnMenu .btnMenuName::before {
  content: "Close"; }

/*body.open {
	.menuBoxWrapper {
		pointer-events: auto;
	}
	.headerMenuBox {
		transform: translate(0, 0);
	}
	.fs-l-header {
		.btnMenu {
			&::before {
				transform: translateY(5px) rotate(-45deg);
			}
			&::after {
				transform: translateY(-5px) rotate(45deg);
			}
			> span {
				&.line {
					opacity: 0;
				}
			}
			.btnMenuName::before {
				content: "Close";
			}
		}
	}
}*/
body #overlay,
body #overlayCart {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(102, 102, 102, 0.8);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all .3s;
  transition: all .3s; }

body #overlay {
  z-index: 100; }

body #overlayCart {
  z-index: 99; }

/*body #overlay.cart {
	z-index: 2000;
}*/
body:has(#headerMenuOpenCheckbox:checked) #overlay,
body.cartOpen #overlayCart {
  visibility: visible;
  opacity: 1; }

/*body.open ,
body.cartOpen {
	background: #00ff00;
	.fs-c-productCarouselMainImage {
		pointer-events: none;
	}
}*/
/*----------------------------------------------
popupFreeshipping
----------------------------------------------*/
.popupFreeshipping {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2000;
  display: none;
  place-items: center; }
  .popupFreeshipping[style*="display: block"] {
    display: grid !important; }
  .popupFreeshipping .popupFreeshippingOverlay {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(102, 102, 102, 0.8); }
  .popupFreeshipping .popupFreeshippingContent {
    z-index: 3000;
    width: 270px;
    position: relative;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    animation: poyoyon 0.5s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards; }
    .popupFreeshipping .popupFreeshippingContent p {
      margin: 0; }
  .popupFreeshipping .popupFreeshippingBtnClose {
    display: block;
    width: 30px;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #333333;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    border-radius: 50%;
    translate: 50% -50%;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); }
    .popupFreeshipping .popupFreeshippingBtnClose::before, .popupFreeshipping .popupFreeshippingBtnClose::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 1px;
      height: 50%;
      background: #ffffff;
      translate: -50% -50%; }
    .popupFreeshipping .popupFreeshippingBtnClose::before {
      rotate: 45deg; }
    .popupFreeshipping .popupFreeshippingBtnClose::after {
      rotate: -45deg; }

@keyframes poyoyon {
  0% {
    transform: translateY(-140px);
    opacity: 0; }
  50% {
    transform: translateY(0); }
  65% {
    transform: translateY(-30px); }
  100% {
    transform: translateY(0); }
  20%,100% {
    opacity: 1; } }
/*============================================================================
	footer
=============================================================================*/
.btmLineBox {
  position: fixed;
  right: 5%;
  bottom: 20px;
  z-index: 10;
  width: 100%; }
  .btmLineBox .icon {
    width: 56px;
    margin: 0 0 0 auto;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); }
    .btmLineBox .icon a {
      display: block; }
      .btmLineBox .icon a:hover {
        opacity: 0.7; }
  .btmLineBox .fukidashiBox {
    display: none;
    position: absolute;
    right: 80px;
    bottom: 50%;
    transform: translateY(50%);
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 1.5em;
    box-sizing: border-box;
    background: #ffffff;
    border-radius: 0.8em;
    width: calc(100% - 110px);
    max-width: 245px;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.2)); }
    .btmLineBox .fukidashiBox::before {
      background: #ffffff;
      content: "";
      height: 40px;
      position: absolute;
      width: 20px;
      clip-path: polygon(0 0, 0 100%, 100% 50%);
      right: -10px;
      top: 50%;
      transform: translateY(-50%); }
    .btmLineBox .fukidashiBox p {
      margin: 0; }
    .btmLineBox .fukidashiBox .btnLineClose {
      display: block;
      position: absolute;
      top: 1em;
      right: 1em;
      width: 12px;
      height: 12px;
      background-color: transparent;
      border: none;
      cursor: pointer;
      outline: none;
      padding: 0;
      appearance: none; }
      .btmLineBox .fukidashiBox .btnLineClose::before, .btmLineBox .fukidashiBox .btnLineClose::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 1px;
        height: 12px;
        background: #333333;
        translate: -50% -50%; }
      .btmLineBox .fukidashiBox .btnLineClose::before {
        rotate: 45deg; }
      .btmLineBox .fukidashiBox .btnLineClose::after {
        rotate: -45deg; }

.fs-l-footer {
  margin: 0 auto;
  padding: 50px 0 120px;
  background: #F6F6F6;
  border: none; }
  .fs-l-footer .footerShippingBox {
    width: fit-content;
    margin: 0 auto 50px;
    font-size: clamp(1.2rem, 2.5vw, 1.6rem); }
    .fs-l-footer .footerShippingBox .head {
      margin: 0 0 1.5em;
      font-weight: bold;
      text-align: center; }
    .fs-l-footer .footerShippingBox .list > li {
      margin: 1em 0 0 0; }
  .fs-l-footer .footerMenuList {
    max-width: 280px;
    margin: 50px auto;
    padding: 30px 0 0 0;
    list-style-type: none;
    font-size: clamp(1.2rem, 2.5vw, 1.4rem);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 2em;
    border-top: 1px solid #E4E4E4; }
    @media (min-width: 1201px) {
      .fs-l-footer .footerMenuList {
        max-width: none;
        flex-direction: row; } }
    .fs-l-footer .footerMenuList > li {
      margin: 0; }
      .fs-l-footer .footerMenuList > li a {
        text-decoration: none; }
      .fs-l-footer .footerMenuList > li .icon {
        display: inline-block;
        vertical-align: middle;
        width: 1.8em;
        margin: 0 0.5em 0 0; }
  .fs-l-footer .footerLogo {
    width: 70px;
    margin: 50px auto; }
    @media (min-width: 1201px) {
      .fs-l-footer .footerLogo {
        width: 90px; } }
  .fs-l-footer .footerSnsList {
    margin: 50px auto;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 20px; }
    .fs-l-footer .footerSnsList > li {
      line-height: 1;
      margin: 0;
      width: 20px; }
      @media (min-width: 1201px) {
        .fs-l-footer .footerSnsList > li {
          width: 30px; } }
      .fs-l-footer .footerSnsList > li a {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%; }
  .fs-l-footer .cr {
    margin: 50px auto 0;
    color: #888888;
    font-size: 1rem;
    text-align: center; }

/*============================================================================
	common
=============================================================================*/
.commonContentBox {
  margin: 50px 0;
  padding: 30px 0 0 0;
  border-top: 1px solid #E4E4E4; }
  .commonContentBox.ranking .list {
    flex-wrap: nowrap;
    overflow-x: scroll;
    gap: 10px;
    counter-reset: number 0; }
    @media (min-width: 1201px) {
      .commonContentBox.ranking .list {
        overflow-x: auto;
        gap: 10px 1%; } }
    .commonContentBox.ranking .list > li {
      width: 130px;
      flex-shrink: 0; }
      @media (min-width: 1201px) {
        .commonContentBox.ranking .list > li {
          width: 19%; } }
      .commonContentBox.ranking .list > li a::before {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
        counter-increment: number;
        content: counter(number);
        display: block;
        background: #888888;
        font-family: "Marcellus", serif;
        color: #ffffff;
        font-size: 1.2rem;
        width: 30px;
        height: 30px;
        padding: 3px;
        box-sizing: border-box;
        line-height: 1;
        clip-path: polygon(0 0, 100% 0, 0 100%); }
      .commonContentBox.ranking .list > li:nth-of-type(1) a::before {
        background: #eac800; }
      .commonContentBox.ranking .list > li:nth-of-type(2) a::before {
        background: #bababa; }
      .commonContentBox.ranking .list > li:nth-of-type(3) a::before {
        background: #885c46; }
  @media (max-width: 1200px) {
    .commonContentBox.ctgContentBox.guarantee, .commonContentBox.detailContentBox.ranking, .commonContentBox.detailContentBox.coordinate, .commonContentBox.detailContentBox.review {
      width: calc(100% + (100vw - 100%));
      margin-left: calc(-1 * (100vw - 100%) / 2); } }

/* ttl */
.commonTtl01 {
  /*font-size: 2rem;*/
  font-size: clamp(2rem, 2.5vw, 3.6rem);
  line-height: 1;
  margin: 0 0 1.2em 0; }
  @media (min-width: 1201px) {
    .commonTtl01 {
      /*font-size: 3.6rem;*/ } }
  .commonTtl01 .jp {
    display: block;
    font-size: clamp(1rem, 2.5vw, 1.4rem);
    font-weight: normal;
    line-height: 1.5; }
  .commonTtl01 .eng {
    display: flex;
    align-items: center;
    margin: 0.2em 0 0 0;
    gap: 0 0.5em;
    font-family: "Marcellus", serif;
    font-weight: normal;
    letter-spacing: 0.08em; }
    .commonTtl01 .eng .sub {
      font-size: 60%;
      display: flex;
      align-items: center;
      gap: 0 0.5em; }
      .commonTtl01 .eng .sub::before, .commonTtl01 .eng .sub::after {
        content: "";
        display: block;
        width: 0.5em;
        height: 1px;
        background: #333333; }

.commonTtl02 {
  font-size: clamp(1.2rem, 2.5vw, 1.6rem);
  font-weight: bold;
  line-height: 1.2;
  margin: 1em 0 0.6em 0;
  padding: 0 0 0 1em;
  position: relative; }
  .commonTtl02::before {
    content: "";
    display: block;
    width: 0.6em;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 0.3em;
    left: 0;
    background: #333333; }

.commonTtl03,
.fs-c-documentArticle__heading {
  background: #F6F6F6;
  color: #333333;
  font-size: clamp(1.2rem, 2.5vw, 1.6rem);
  font-weight: bold;
  line-height: 1.2;
  margin: 2em 0 1em;
  padding: 1em;
  text-align: left; }

.commonTtl04 {
  font-size: clamp(1.2rem, 2.5vw, 1.6rem);
  font-weight: bold;
  line-height: 1.2;
  margin: 2em 0 1em; }

/* 段落 */
.commonDocumentContent,
.fs-c-documentArticle__content {
  margin: 0.5em;
  padding: 0; }

/* list */
.commonList01 {
  margin: 1em 0;
  padding: 0;
  list-style-type: none; }
  .commonList01 > li {
    margin: 0;
    padding: 0 0 0 1em;
    position: relative; }
    .commonList01 > li::before {
      content: "";
      display: block;
      width: 0.4em;
      aspect-ratio: 1 / 1;
      position: absolute;
      top: 0.7em;
      left: 0;
      background: #888888;
      border-radius: 50%; }

.commonList02 {
  margin: 1em 0;
  padding: 0;
  list-style-type: none; }
  .commonList02 > li {
    margin: 0;
    padding: 0 0 0 1em;
    text-indent: -1em; }

.faqList01 {
  margin: 1em 0;
  padding: 0;
  list-style-type: none;
  font-weight: bold;
  border-bottom: 1px solid #E4E4E4; }
  .faqList01 > dt {
    padding: 1em 3em;
    border-top: 1px solid #E4E4E4;
    position: relative; }
    .faqList01 > dt::before {
      content: "Q.";
      font-family: "Marcellus", serif;
      font-size: 166%;
      font-weight: normal;
      position: absolute;
      top: 0.2em;
      left: 0.5em; }
    .faqList01 > dt::after {
      content: "";
      display: block;
      width: 0.5em;
      aspect-ratio: 1 / 1;
      border-top: 1px solid #333333;
      border-right: 1px solid #333333;
      position: absolute;
      top: 50%;
      right: 0.5em;
      rotate: 135deg;
      translate: 0 -50%;
      -webkit-transition: all .3s;
      transition: all .3s; }
    .faqList01 > dt.active::after {
      rotate: -45deg; }
  .faqList01 > dd {
    font-weight: normal;
    margin: 0;
    padding: 1em 3em; }
    .faqList01 > dd p {
      margin-top: 0; }

/* notion */
.commonNotion01 {
  color: #888888;
  font-size: 80%; }

/* tbl */
.commonTbl01 {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0; }
  .commonTbl01 th,
  .commonTbl01 td {
    margin: 0;
    padding: 1em 0.5em;
    vertical-align: top;
    border-bottom: 1px solid #E4E4E4; }
    .commonTbl01 th > *,
    .commonTbl01 td > * {
      margin-top: 0; }
  .commonTbl01 th {
    font-weight: bold;
    text-align: left;
    white-space: nowrap; }

/* marker */
.commonMarker01 {
  background: linear-gradient(rgba(255, 255, 255, 0) 65%, #FFEB5D 65%, #FFEB5D 95%, rgba(255, 255, 255, 0) 95%); }

/* commonItemList */
.commonItemList01 {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  gap: 30px 4%; }
  .commonItemList01 > li {
    width: 48%;
    font-size: clamp(1.2rem, 2.5vw, 1.4rem);
    position: relative; }
    @media (min-width: 1201px) {
      .commonItemList01 > li {
        width: 22%; } }
    .commonItemList01 > li a {
      display: block;
      text-decoration: none;
      position: relative; }
      .commonItemList01 > li a:hover .imgBox img {
        transform: scale(1.1); }
    .commonItemList01 > li .imgBox {
      margin: 0;
      overflow: hidden; }
      .commonItemList01 > li .imgBox img {
        aspect-ratio: 1 / 1;
        object-fit: cover; }
    .commonItemList01 > li .name {
      font-size: clamp(1rem, 2.5vw, 1.2rem);
      margin: 1em 0 0 0; }
    .commonItemList01 > li .price {
      color: #888888;
      margin: 0.5em 0 0 0; }
    .commonItemList01 > li .ratingMark {
      margin: 0.5em 0 0 0;
      display: flex;
      flex-wrap: wrap; }
      .commonItemList01 > li .ratingMark .ratingMarkItem {
        width: 11px;
        aspect-ratio: 1 / 1;
        background-position: 0 0;
        background-size: contain;
        background-repeat: no-repeat; }
        .commonItemList01 > li .ratingMark .ratingMarkItem.full {
          background-image: url("../img/rating_full.svg"); }
        .commonItemList01 > li .ratingMark .ratingMarkItem.zero {
          background-image: url("../img/rating_zero.svg"); }
        .commonItemList01 > li .ratingMark .ratingMarkItem.half {
          background-image: url("../img/rating_half.svg"); }
        @media (min-width: 1201px) {
          .commonItemList01 > li .ratingMark .ratingMarkItem {
            width: 14px; } }

/* btn */
.commonBtn01 {
  font-size: clamp(1.2rem, 2.5vw, 1.4rem);
  width: 17.5em;
  margin: 30px auto; }
  .commonBtn01 a {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 0.5em;
    text-align: center;
    text-decoration: none;
    line-height: 1;
    padding: 1em;
    background: #ffffff;
    border: 1px solid #333333;
    position: relative; }
    .commonBtn01 a::after {
      content: "";
      display: block;
      width: 0.4em;
      aspect-ratio: 1 / 1;
      border-top: 1px solid currentcolor;
      border-right: 1px solid currentcolor;
      position: absolute;
      top: 50%;
      right: 1em;
      rotate: 45deg;
      translate: 0 -50%;
      -webkit-transition: all .3s;
      transition: all .3s; }
    .commonBtn01 a:hover::after {
      translate: 0.5em -50%; }
    .commonBtn01 a .icon {
      display: block;
      width: 1.5em;
      filter: invert(14%) sepia(7%) saturate(9%) hue-rotate(25deg) brightness(91%) contrast(82%); }

/* headerSlideBannerBox */
.headerSlideBannerBox {
  padding: 15px 0; }
  .headerSlideBannerBox .headerSlideBannerSlider {
    margin: 0;
    padding: 0;
    list-style-type: none; }
    @media (min-width: 1201px) {
      .headerSlideBannerBox .headerSlideBannerSlider {
        display: flex; } }
    .headerSlideBannerBox .headerSlideBannerSlider .item {
      width: 270px;
      margin: 0 5px; }
      @media (min-width: 1201px) {
        .headerSlideBannerBox .headerSlideBannerSlider .item {
          width: 540px;
          margin: 0 10px; } }

/*============================================================================
	regulation
=============================================================================*/
/*============================================================================
	調整用
=============================================================================*/
.fl {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex; }

.fl-tab {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex; }
  @media (max-width: 1024px) {
    .fl-tab {
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      flex-direction: column; } }

.fl-smp {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex; }
  @media (max-width: 768px) {
    .fl-smp {
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      flex-direction: column; } }

.fl-jst {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.fl-cen {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.fl-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.fl-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.fl-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.fl-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.mt0 {
  margin-top: min(0vw,0px); }

.mb0 {
  margin-bottom: min(0vw,0px); }

.pt0 {
  padding-top: min(0vw,0px); }

.pb0 {
  padding-bottom: min(0vw,0px); }

.mt10 {
  margin-top: min(3vw,10px); }

.mb10 {
  margin-bottom: min(3vw,10px); }

.pt10 {
  padding-top: min(3vw,10px); }

.pb10 {
  padding-bottom: min(3vw,10px); }

.mt20 {
  margin-top: min(6vw,20px); }

.mb20 {
  margin-bottom: min(6vw,20px); }

.pt20 {
  padding-top: min(6vw,20px); }

.pb20 {
  padding-bottom: min(6vw,20px); }

.mt30 {
  margin-top: min(9vw,30px); }

.mb30 {
  margin-bottom: min(9vw,30px); }

.pt30 {
  padding-top: min(9vw,30px); }

.pb30 {
  padding-bottom: min(9vw,30px); }

.mt40 {
  margin-top: min(12vw,40px); }

.mb40 {
  margin-bottom: min(12vw,40px); }

.pt40 {
  padding-top: min(12vw,40px); }

.pb40 {
  padding-bottom: min(12vw,40px); }

.mt50 {
  margin-top: min(15vw,50px); }

.mb50 {
  margin-bottom: min(15vw,50px); }

.pt50 {
  padding-top: min(15vw,50px); }

.pb50 {
  padding-bottom: min(15vw,50px); }

.mt60 {
  margin-top: min(18vw,60px); }

.mb60 {
  margin-bottom: min(18vw,60px); }

.pt60 {
  padding-top: min(18vw,60px); }

.pb60 {
  padding-bottom: min(18vw,60px); }

.mt70 {
  margin-top: min(21vw,70px); }

.mb70 {
  margin-bottom: min(21vw,70px); }

.pt70 {
  padding-top: min(21vw,70px); }

.pb70 {
  padding-bottom: min(21vw,70px); }

.mt80 {
  margin-top: min(24vw,80px); }

.mb80 {
  margin-bottom: min(24vw,80px); }

.pt80 {
  padding-top: min(24vw,80px); }

.pb80 {
  padding-bottom: min(24vw,80px); }

.mt90 {
  margin-top: min(27vw,90px); }

.mb90 {
  margin-bottom: min(27vw,90px); }

.pt90 {
  padding-top: min(27vw,90px); }

.pb90 {
  padding-bottom: min(27vw,90px); }

.mt100 {
  margin-top: min(30vw,100px); }

.mb100 {
  margin-bottom: min(30vw,100px); }

.pt100 {
  padding-top: min(30vw,100px); }

.pb100 {
  padding-bottom: min(30vw,100px); }

br {
  display: inline; }
  @media (min-width: 1201px) {
    br.showPC {
      display: none !important; } }
  @media (min-width: 1025px) {
    br.showTab {
      display: none !important; } }
  @media (min-width: 769px) {
    br.showSP {
      display: none !important; } }
  @media (max-width: 1200px) {
    br.hdnPC {
      display: none; }
    br.showPC {
      display: inherit; } }
  @media (max-width: 1024px) {
    br.hdnTab {
      display: none; }
    br.showTab {
      display: inherit; } }
  @media (max-width: 768px) {
    br.hdnSP {
      display: none; }
    br.showSP {
      display: inherit; } }

span {
  display: inline-block; }
  @media (min-width: 1201px) {
    span.showPC {
      display: none !important; } }
  @media (min-width: 1025px) {
    span.showTab {
      display: none !important; } }
  @media (min-width: 769px) {
    span.showSP {
      display: none !important; } }
  @media (max-width: 1200px) {
    span.hdnPC {
      display: none !important; }
    span.showPC {
      display: inherit; } }
  @media (max-width: 1024px) {
    span.hdnTab {
      display: none !important; }
    span.showTab {
      display: inherit; } }
  @media (max-width: 768px) {
    span.hdnSP {
      display: none !important; }
    span.showSP {
      display: inherit; } }

p, div, figure, ul {
  display: block; }
  @media (min-width: 1201px) {
    p.showPC, div.showPC, figure.showPC, ul.showPC {
      display: none !important; } }
  @media (min-width: 1025px) {
    p.showTab, div.showTab, figure.showTab, ul.showTab {
      display: none !important; } }
  @media (min-width: 769px) {
    p.showSP, div.showSP, figure.showSP, ul.showSP {
      display: none !important; } }
  @media (max-width: 1200px) {
    p.hdnPC, div.hdnPC, figure.hdnPC, ul.hdnPC {
      display: none !important; }
    p.showPC, div.showPC, figure.showPC, ul.showPC {
      display: inherit; } }
  @media (max-width: 1024px) {
    p.hdnTab, div.hdnTab, figure.hdnTab, ul.hdnTab {
      display: none !important; }
    p.showTab, div.showTab, figure.showTab, ul.showTab {
      display: inherit; } }
  @media (max-width: 768px) {
    p.hdnSP, div.hdnSP, figure.hdnSP, ul.hdnSP {
      display: none !important; }
    p.showSP, div.showSP, figure.showSP, ul.showSP {
      display: inherit; } }

li {
  display: list-item; }
  @media (min-width: 1201px) {
    li.showPC {
      display: none !important; } }
  @media (min-width: 1025px) {
    li.showTab {
      display: none !important; } }
  @media (min-width: 769px) {
    li.showSP {
      display: none !important; } }
  @media (max-width: 1200px) {
    li.hdnPC {
      display: none !important; }
    li.showPC {
      display: inherit; } }
  @media (max-width: 1024px) {
    li.hdnTab {
      display: none !important; }
    li.showTab {
      display: inherit; } }
  @media (max-width: 768px) {
    li.hdnSP {
      display: none !important; }
    li.showSP {
      display: inherit; } }

.ta_cnt {
  text-align: center; }

.ta_right {
  text-align: right; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }
