@charset "UTF-8";
/* =======================================

	 CSS BrowserReset BaseElements

	 (C)BLACKFLAG.NET ALL RIGHTS RESERVED.
	 http://black-flag.net/

 ======================================= */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  /*	outline: 0;*/
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: none;
  margin: 0;
}

img {
  vertical-align: text-bottom;
  -ms-interpolation-mode: bicubic;
}

img {
  /* max-width: 100%; */
  /* max-height: 100%; */
}

img {
  /* width: 100%; */
  height: auto;
}

a {
  -webkit-tap-highlight-color: transparent;
}

strong {
  font-weight: bold;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  /*	border-collapse: separate;*/
  border-spacing: 0;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
}

blockquote, q {
  quotes: "" "";
}

option {
  padding-right: 10px;
}

/* ------------------------------
	HTML5 ELEMENTS
------------------------------ */
header, article, aside, section, footer,
nav, menu, details, hgroup, summary {
  display: block;
}

/* ------------------------------
	button
------------------------------ */
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}


/* 追加20240214 */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

html, body, div, applet, object, iframe, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
  font-feature-settings: "palt";
  line-height: 1.6;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.hidden {
  display: none;
}

.page-wrap {
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
  font-size: 20px;
  font-weight: 400;
  color: #1e1e1e;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}

h2 {
  line-height: 1;
}

a {
  text-decoration: none;
  color: inherit;
}

.sp {
  display: none !important;
}

.inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  display: block;
}

@media screen and (min-width: 769px) {
  a {
    transition: 0.4s;
  }
  a:hover {
    opacity: 0.65;
  }
}
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
  body {
    min-width: 100% !important;
  }
  .inner {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
  }
}
/*===============================
検索窓追加のアイコン ※ECフォース修正
==================================*/
.l-header__inner__block__item--search:not(:last-child) {
  margin-right: 0 !important;
}

/*===============================
検索窓追加css.header__icon_searchレスポンシブ
==================================*/
@media screen and (max-width: 1800px) {
  .hd_inner .header__icon_search {
    right: 11%;
  }
}
@media screen and (max-width: 1680px) {
  .hd_inner .header__icon_search {
    right: 11.5% !important;
  }
}
@media screen and (max-width: 1570px) {
  .hd_inner .header__icon_search {
    right: 12% !important;
  }
}
@media screen and (max-width: 1450px) {
  .hd_inner .header__icon_search {
    right: 12.5% !important;
  }
}
@media screen and (max-width: 1340px) {
  .hd_inner .header__icon_search {
    right: 13% !important;
  }
}
.page-ranking h1.p-page_header__inner__title.u-text--head {
  color: #000 !important;
  font-size: 56px !important;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 600;
}

@media screen and (max-width: 768px) {
  .page-ranking h1.p-page_header__inner__title.u-text--head {
    font-size: 33px !important;
  }
}
/*===============================
header ※TOPページ
==================================*/
.hd {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 1920px;
  z-index: 100;
  margin: 0 auto;
  line-height: 1.1;
}
.hd_inner {
  height: 95px;
  padding: 20px 60px 25px;
  position: relative;
}
.hd_inner .logo img {
  width: 286px;
}
.hd_inner .header__icon_search {
  position: absolute;
  display: inline-block;
  right: 10.5%;
  top: 25px;
  width: 100%;
  max-width: 40px;
}
.hd_inner #drawer_toggle {
  display: none;
}
.hd_inner nav ul a {
  color: #1e1e1e !important;
  text-decoration: none;
}
.hd_inner nav ul li {
  font-size: 24px;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  position: relative;
  margin-right: 80px;
}
.hd_inner nav .hd_icon_wrap ul li {
  margin-top: 10px;
  margin-right: 18px;
}
.hd_inner nav .hd_icon_wrap ul li.icon-mypage a {
  display: inline-block;
  background: url(../img/common/icon-mypage.png) no-repeat center/cover;
  width: 45px;
  height: 45px;
  line-height: 1.2;
}
.hd_inner nav .hd_icon_wrap ul li.icon-mypage a:hover {
  display: inline-block;
  background: url(../img/common/icon-mypage_hover.png) no-repeat center/cover;
  width: 45px;
  height: 45px;
}
.hd_inner nav .hd_icon_wrap ul li.icon-cart a {
  display: inline-block;
  background: url(../img/common/icon-cart.png) no-repeat center/cover;
  width: 45px;
  height: 45px;
  line-height: 1.2;
}
.hd_inner nav .hd_icon_wrap ul li.icon-cart a:hover {
  display: inline-block;
  background: url(../img/common/icon-cart_hover.png) no-repeat center/cover;
  width: 45px;
  height: 45px;
}

@media screen and (max-width: 1920px) {
  .hd_inner {
    padding: 1.042vw 3.125vw 1.302vw;
  }
  .hd nav ul li {
    margin-right: 4.167vw;
  }
}
@media screen and (max-width: 1280px) {
  .hd {
    max-width: 100%;
  }
  .hd .sp {
    display: block !important;
  }
  .hd_inner .logo {
    width: 350px;
  }
  .hd_inner .logo img {
    width: 350px;
  }
  .hd_inner .header__icon_search {
    right: 15.5% !important;
  }
  .hd_inner #drawer_toggle {
    z-index: 6;
    box-sizing: border-box;
    position: absolute;
    top: 13px;
    right: 2.292vw;
    display: inline-block;
    width: 30px;
    height: 60px;
  }
  .hd_inner #drawer_toggle span {
    position: absolute;
    top: 22px;
    left: 0;
    display: inline-block;
    width: 35px;
    height: 3px;
    background-color: #1e1e1e;
    vertical-align: top;
  }
  .hd_inner #drawer_toggle span:nth-child(2) {
    margin-top: 12px;
  }
  .hd_inner #drawer_toggle span:last-child {
    margin-top: 24px;
  }
  .hd_inner #drawer_toggle.open span {
    top: 29px;
    width: 35px;
    margin: 0;
  }
  .hd_inner #drawer_toggle.open span:first-child {
    transform: rotate(45deg);
  }
  .hd_inner #drawer_toggle.open span:nth-child(2) {
    display: none;
  }
  .hd_inner #drawer_toggle.open span:last-child {
    transform: rotate(-45deg);
  }
  .hd_inner nav.header__nav {
    margin-right: 0;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    display: none;
    width: 100%;
    height: calc(100% - 6px);
    display: block;
    right: -100%;
    transition: right 0.5s;
  }
  .hd_inner nav.header__nav ul {
    display: block;
    background: rgb(227, 247, 233);
    height: 100vh;
    padding-top: 83px;
  }
  .hd_inner nav.header__nav ul li {
    font-size: 33px;
    text-align: center;
    margin-right: 0;
    line-height: 1;
  }
  .hd_inner nav.header__nav ul li:before {
    background: none;
  }
  .hd_inner nav.header__nav ul li:first-child {
    padding-bottom: 40px;
  }
  .hd_inner nav.header__nav ul li:not(:first-child) {
    padding: 40px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav {
    margin-top: 100px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav a:hover {
    opacity: 0.65;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp {
    justify-content: center;
    line-height: 1;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon-mypage a {
    display: inline-block;
    background: url(../img/common/icon-mypage.png) no-repeat center/cover;
    width: 40px;
    height: 40px;
    margin-right: 18px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon-cart a {
    display: inline-block;
    background: url(../img/common/icon-cart.png) no-repeat center/cover;
    width: 40px;
    height: 40px;
    margin-right: 20px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_Insta a {
    display: inline-block;
    margin-right: 18px;
    width: 40px;
    height: 40px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_Insta {
    padding-left: 20px;
    border-left: #1e1e1e solid 1px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_line a {
    display: inline-block;
    margin-right: 18px;
    width: 40px;
    height: 40px;
  }
  .hd_inner nav.sp_open {
    right: 0;
  }
  .hd_inner .hd_icon_sp {
    margin-right: 52px;
  }
  .hd_inner .hd_icon_sp li:nth-child(1) {
    margin-right: 0.781vw;
    width: 40px;
    height: 40px;
  }
  .hd_inner .hd_icon_sp li:nth-child(2) {
    width: 40px;
    height: 40px;
  }
  .hd_inner .hd_icon_sp li:nth-child(3) {
    width: 40px;
    height: 40px;
  }
}
/*===============================
▼検索窓追加css.header__icon_searchレスポンシブ▼
==================================*/
@media screen and (max-width: 1200px) {
  .hd_inner .header__icon_search {
    right: 17% !important;
  }
}
@media screen and (max-width: 1080px) {
  .hd_inner .header__icon_search {
    right: 18.5% !important;
  }
}
@media screen and (max-width: 960px) {
  .hd_inner .header__icon_search {
    right: 20% !important;
  }
}
@media screen and (max-width: 850px) {
  .hd_inner .header__icon_search {
    right: 21.5% !important;
  }
}
/*===============================
▲検索窓追加css.header__icon_searchレスポンシブ▲
==================================*/
@media screen and (min-width: 1281px) {
  .hd nav ul a:hover {
    opacity: 1;
    color: #76c06f !important;
  }
  .hd nav ul li::before {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background: #76c06f;
    position: absolute;
    top: 100%;
    left: 0;
    transition: 0.2s;
  }
  .hd nav ul li:hover::before {
    width: 100%;
  }
  .hd nav ul li:hover {
    color: #76c06f !important;
    transition: all 0.2s ease;
  }
}
@media screen and (max-width: 768px) {
  .hd {
    max-width: 100%;
  }
  .hd_inner {
    height: 60px;
    padding: 0 16px;
  }
  .hd_inner .logo {
    width: 175px;
  }
  .hd_inner .logo img {
    width: 175px;
  }
  .hd_inner .header__icon_search {
    right: 18.5% !important;
    top: 20px;
    width: 100%;
    max-width: 25px;
  }
  .hd_inner #drawer_toggle {
    z-index: 6;
    box-sizing: border-box;
    position: absolute;
    top: -1px;
    right: 16px;
    display: inline-block;
    width: 30px;
    height: 60px;
  }
  .hd_inner #drawer_toggle span {
    position: absolute;
    top: 22px;
    left: 0;
    display: inline-block;
    width: 30px;
    height: 3px;
    background-color: #1e1e1e;
    vertical-align: top;
  }
  .hd_inner #drawer_toggle span:nth-child(2) {
    margin-top: 10px;
  }
  .hd_inner #drawer_toggle span:last-child {
    margin-top: 20px;
  }
  .hd_inner #drawer_toggle.open span {
    top: 29px;
    width: 35px;
    margin: 0;
  }
  .hd_inner #drawer_toggle.open span:first-child {
    transform: rotate(45deg);
  }
  .hd_inner #drawer_toggle.open span:nth-child(2) {
    display: none;
  }
  .hd_inner #drawer_toggle.open span:last-child {
    transform: rotate(-45deg);
  }
  .hd_inner nav.header__nav {
    margin-right: 0;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    display: none;
    width: 100%;
    height: calc(100% - 6px);
    display: block;
    right: -100%;
    transition: right 0.5s;
  }
  .hd_inner nav.header__nav ul {
    display: block;
    background: rgb(227, 247, 233);
    height: 100vh;
    padding-top: 60px;
    font-size: 33px;
  }
  .hd_inner nav.header__nav ul li {
    text-align: center;
    margin-right: 0;
  }
  .hd_inner nav.header__nav ul li:before {
    background: none;
  }
  .hd_inner nav.header__nav ul li:first-child {
    padding-bottom: 23px;
  }
  .hd_inner nav.header__nav ul li:not(:first-child) {
    padding: 23px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav {
    margin-top: 70px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp {
    justify-content: center;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon-mypage a {
    display: inline-block;
    background: url(../img/common/icon-mypage.png) no-repeat center/cover;
    width: 25px;
    height: 25px;
    margin-right: 18px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon-cart a {
    display: inline-block;
    background: url(../img/common/icon-cart.png) no-repeat center/cover;
    width: 25px;
    height: 25px;
    margin-right: 20px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_Insta a {
    display: inline-block;
    margin-right: 18px;
    width: 25px;
    height: 25px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_Insta {
    padding-left: 20px;
    border-left: #1e1e1e solid 1px;
  }
  .hd_inner nav.header__nav .hd_icon_wrap_nav_sp_icon_line a {
    display: inline-block;
    margin-right: 18px;
    width: 25px;
    height: 25px;
  }
  .hd_inner nav.sp_open {
    right: 0;
  }
  .hd_inner .hd_icon_sp {
    margin-right: 32px;
  }
  .hd_inner .hd_icon_sp li:nth-child(1) {
    margin-right: 5px;
    width: 25px;
    height: 25px;
  }
  .hd_inner .hd_icon_sp li:nth-child(2) {
    margin-right: 10px;
    width: 25px;
    height: 25px;
  }
  .hd_inner .hd_icon_sp li:nth-child(3) {
    width: 25px;
    height: 25px;
  }
}
/*===============================
▼検索窓追加css.header__icon_searchレスポンシブ▼
==================================*/
@media screen and (max-width: 719px) {
  .p-search_menu {
    width: 85% !important;
  }
}
@media screen and (max-width: 634px) {
  .hd_inner .header__icon_search {
    right: 20.5% !important;
  }
}
@media screen and (max-width: 555px) {
  .hd_inner .header__icon_search {
    right: 22.5% !important;
  }
}
@media screen and (max-width: 515px) {
  .hd_inner .header__icon_search {
    right: 24.5% !important;
  }
}
@media screen and (max-width: 465px) {
  .hd_inner .header__icon_search {
    right: 29.5% !important;
  }
}
@media screen and (max-width: 400px) {
  .hd_inner .header__icon_search {
    right: 31.5% !important;
  }
}
/*===============================
▲検索窓追加css.header__icon_searchレスポンシブ▲
==================================*/
/*===============================
contact
==================================*/
.contact {
  padding-bottom: 120px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
.contact .inner {
  background: url(../img/common/contact_bg.png) no-repeat center/cover;
  padding: 114px 133px;
  border-radius: 20px;
}
.contact .contact_ttl h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  color: #fff;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}
.contact .contact_ttl h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/common/contact_ttl_icon.png) no-repeat center/cover;
  top: -19px;
  left: 0;
  right: 0;
  width: 82px;
  height: 18px;
  margin: 0 auto;
}
.contact .contact_inquiry_mail a {
  position: relative;
  display: block;
  border-radius: 36px;
  font-size: 24px;
  background: #fff;
  border: #5faa76 solid 1px;
  font-weight: bold;
  padding: 24px 0 24px 166px;
  line-height: 1;
  width: 571px;
  margin: 0 auto 24px;
  opacity: 1;
  color: #5faa76 !important;
  text-decoration: none;
}
.contact .contact_inquiry_mail a::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/common/btn_form_icon.png) no-repeat center/cover;
  top: 24px;
  left: 113px;
  width: 37px;
  height: 25px;
}
.contact .contact_inquiry_phone {
  line-height: 1;
}
.contact .contact_inquiry_phone .tel {
  margin-bottom: 5px;
  text-align: center;
}
.contact .contact_inquiry_phone .tel a {
  font-size: 48px;
  letter-spacing: 0.02em;
  color: #fff;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
}
.contact .contact_inquiry_phone .tel a::before {
  content: "";
  background: url(../img/common/tel_icon.png) no-repeat center/cover;
  display: inline-block;
  width: 32px;
  height: 32px;
  margin-right: 5px;
}
.contact .contact_inquiry_phone p {
  text-align: center;
  font-size: 14px;
  color: #fff;
  font-weight: 500;
  margin-bottom: 16px;
}

@media screen and (min-width: 769px) {
  .contact .contact_inquiry_mail a:hover {
    background: none;
    opacity: 1;
    color: #fff !important;
    border: #fff solid 1px;
  }
  .contact .contact_inquiry_mail a:hover::before {
    display: inline-block;
    position: absolute;
    content: "";
    background: url(../img/common/btn_form_icon_hover.png) no-repeat center/cover;
    top: 24px;
    left: 113px;
    width: 37px;
    height: 25px;
    line-height: 1;
  }
}
@media screen and (max-width: 1920px) {
  .contact {
    padding: 0 3.125vw 120px;
  }
}
@media screen and (max-width: 1280px) {
  .contact .inner {
    padding: 107px 46px;
  }
}
@media screen and (max-width: 1000px) {
  .contact .inner {
    padding: 74px 46px;
  }
  .contact .contact_wrap {
    display: block;
  }
  .contact .contact_ttl {
    margin-bottom: 50px;
  }
  .contact .contact_inquiry_mail {
    margin: 0 auto 10px;
  }
  .contact .contact_inquiry .tel {
    margin-bottom: 7px;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .contact {
    padding: 0;
  }
  .contact .inner {
    background: url(../img/common/contact_bg_sp.png) no-repeat center/cover;
    padding: 65px 16px;
    border-radius: 0;
    max-width: 100%;
  }
  .contact .contact_wrap {
    display: block;
  }
  .contact .contact_ttl {
    padding: 0;
    margin-bottom: 35px;
  }
  .contact .contact_ttl h2 {
    font-size: 33px;
  }
  .contact .contact_ttl h2::before {
    display: inline-block;
    position: absolute;
    content: "";
    background: url(../img/common/contact_ttl_icon.png) no-repeat center/cover;
    top: -19px;
    left: 0;
    right: 0;
    width: 45px;
    height: 10px;
    margin: 0 auto;
  }
  .contact .contact_inquiry_mail a {
    font-size: 18px;
    padding: 20px 0 19px 75px;
    width: 343px;
    margin: 0 auto 10px;
  }
  .contact .contact_inquiry_mail a::before {
    top: 21px;
    left: 49px;
    width: 22px;
    height: 15px;
  }
  .contact .contact_inquiry_phone .tel a {
    font-size: 30px;
  }
  .contact .contact_inquiry_phone .tel a::before {
    width: 22px;
    height: 22px;
    margin-right: 5px;
  }
  .contact .contact_inquiry_phone p {
    font-size: 10px;
    margin-bottom: 12px;
  }
}
/*==================================
footer
=====================================*/
/* footer {
  background: #e2f7e8 !important;
  padding: 140px 0 40px;
  line-height: 1.2;
  text-align: left !important;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
footer .footer_wrapper {
  padding-bottom: 190px;
}
footer .footer_wrapper a {
  color: #1e1e1e !important;
  text-decoration: none !important;
}
footer .footer_wrapper a:hover {
  opacity: 1;
  color: #76c06f !important;
}
footer .footer_wrapper_product {
  line-height: 1;
  width: calc(33.3333333333% - 20px);
}
footer .footer_wrapper_product_range {
  margin: 0 auto 25px;
  overflow: hidden;
  border-radius: 24px;
}
footer .footer_wrapper_product_range img {
  transition: 1s all;
}
footer .footer_wrapper_product_range img:hover {
  transform: scale(1.2, 1.2);
  transition: 1s all;
}
footer .footer_wrapper_product_en {
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  margin-bottom: 3px;
  font-size: 20px;
}
footer .footer_wrapper_product_detail {
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 14px;
  color: #a7c9b1;
}
footer .ft {
  align-items: flex-start;
  margin-bottom: 12px;
}
footer .ft .logo img {
  width: 350px;
}
footer .ft nav {
  font-size: 24px;
}
footer .ft nav ul {
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
}
footer .ft nav ul a:hover {
  opacity: 1;
  color: #76c06f !important;
}
footer .ft nav ul a {
  color: #1e1e1e !important;
  text-decoration: none !important;
}
footer .ft nav ul li:last-child {
  margin-right: 0;
}
footer .ft nav ul li {
  position: relative;
  margin-right: 40px;
}
footer .ft nav ul li::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #76c06f;
  position: absolute;
  top: 100%;
  left: 0;
  transition: 0.3s;
}
footer .ft nav ul li:hover::before {
  width: 100%;
}
footer .ft nav ul li:hover {
  color: #76c06f;
  transition: all 0.3s ease;
}
footer .ft_icon_wrap {
  border-bottom: #a7c9b1 solid 1px;
  padding-bottom: 33px;
}
footer .ft_icon_wrap ul li:nth-child(1) {
  margin-right: 14px;
}
footer .ft_icon_wrap ul li:nth-child(2) {
  border-right: #1e1e1e solid 1px;
  padding-right: 24px;
}
footer .ft_icon_wrap ul li:nth-child(3) {
  padding-left: 24px;
  margin-right: 14px;
}
footer .ft_icon_wrap ul .icon-mypage img {
  width: 33px;
}
footer .ft_icon_wrap ul .icon-cart img {
  width: 33px;
}
footer .ft_icon_wrap ul .Insta_icon img {
  width: 33px;
}
footer .ft_icon_wrap ul .line_icon img {
  width: 33px;
}
footer .ft_rule {
  padding-top: 32px;
}
footer .ft_rule p {
  font-size: 10px;
  color: #a7c9b1;
}
footer .ft_rule ul a:hover {
  opacity: 1;
  color: #76c06f !important;
}
footer .ft_rule ul a {
  color: #76c06f !important;
  text-decoration: none !important;
}
footer .ft_rule ul li {
  position: relative;
  font-size: 14px;
  color: #a7c9b1;
}
footer .ft_rule ul li::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #76c06f;
  position: absolute;
  top: 100%;
  left: 0;
  transition: 0.3s;
}
footer .ft_rule ul li:hover::before {
  width: 100%;
}
footer .ft_rule ul li:not(:last-child) {
  margin-right: 42px;
}

@media screen and (max-width: 1920px) {
  footer {
    padding: 7.292vw 3.125vw 2.083vw;
  }
  footer .footer_wrapper {
    padding-bottom: 9.896vw;
  }
  footer .ft .logo {
    margin-bottom: 20px;
  }
  footer .ft nav ul li {
    margin-right: 2.083vw;
  }
  footer .ft_rule ul li:not(:last-child) {
    margin-right: 2.188vw;
  }
}
@media screen and (max-width: 1280px) {
  footer .ft {
    display: block;
  }
  footer .ft nav ul li {
    position: relative;
    margin-right: 40px;
  }
  footer .ft_rule {
    flex-wrap: wrap;
  }
  footer .ft_rule .copyright {
    order: 2;
    margin-top: 1px;
  }
  footer .ft_rule ul {
    order: 1;
    margin-bottom: 15px;
  }
  footer .ft_rule ul li:not(:last-child) {
    margin-right: 2.188vw;
  }
}
@media screen and (max-width: 768px) {
  footer {
    padding: 60px 0 22px;
  }
  footer .inner {
    width: 100%;
    max-width: 343px;
    margin: 0 auto;
  }
  footer .footer_wrapper {
    display: block;
    padding-bottom: 35px;
  }
  footer .footer_wrapper_product {
    margin-bottom: 25px;
    width: 100%;
  }
  footer .footer_wrapper_product_range {
    width: 100%;
    max-width: 343px;
    margin: 0 auto 12px;
    border-radius: 24px;
  }
  footer .footer_wrapper_product p {
    font-size: 16px;
    margin-bottom: 7px;
    text-align: left;
  }
  footer .footer_wrapper_product_detail {
    font-size: 14px !important;
  }
  footer .ft {
    display: block;
    margin-bottom: 12px;
  }
  footer .ft .logo {
    margin-bottom: 30px;
  }
  footer .ft .logo img {
    width: 268px;
  }
  footer .ft nav {
    font-size: 20px;
    margin-bottom: 50px;
  }
  footer .ft nav ul {
    margin-bottom: 20px;
  }
  footer .ft nav ul li {
    margin-right: 20px;
  }
  footer .ft nav ul li::before {
    background: none;
  }
  footer .ft nav ul li:hover::before {
    width: 0;
  }
  footer .ft nav ul li:hover {
    color: #1e1e1e;
  }
  footer .ft_icon_wrap {
    padding-bottom: 20px;
  }
  footer .ft_icon_wrap_icon {
    justify-content: flex-start;
  }
  footer .ft_icon_wrap ul li {
    margin-right: 10px;
  }
  footer .ft_icon_wrap ul li:nth-child(1) {
    margin-right: 12px;
  }
  footer .ft_icon_wrap ul li:nth-child(2) {
    border-right: #1e1e1e solid 1px;
    padding-right: 20px;
  }
  footer .ft_icon_wrap ul li:nth-child(3) {
    padding-left: 14px;
  }
  footer .ft_icon_wrap ul .icon-mypage img {
    width: 25px;
  }
  footer .ft_icon_wrap ul .icon-cart img {
    width: 25px;
  }
  footer .ft_icon_wrap ul .Insta_icon img {
    width: 24px;
  }
  footer .ft_icon_wrap ul .line_icon img {
    width: 25px;
  }
  footer .ft_rule {
    padding-top: 20px;
  }
  footer .ft_rule ul li {
    margin: 0 0 10px;
    font-size: 14px;
  }
  footer .ft_rule ul li::before {
    height: 0;
    background: none;
  }
  footer .ft_rule ul li:hover::before {
    display: none;
  }
  footer .ft_rule .copyright {
    margin-top: 30px;
    font-size: 10px;
  }
} */
#page-top {
  overflow: clip;
  /*===============================
  top_bg
  ==================================*/
  /*===============================
  mv
  ==================================*/
  /*===============================
  category
  ==================================*/
  /*===============================
  product
  ==================================*/
  /*===============================
  about
  ==================================*/
  /*===============================
  news
  ==================================*/
  /*===============================
  bnr
  ==================================*/
  /*===============================
  contact
  ==================================*/
}
#page-top h2.p-new_product__title__en {
  position: relative;
  text-align: center;
  font-size: 60px !important;
  color: #000 !important;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}
#page-top h2.p-new_product__title__en::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/ranking_ttl_icon.png) no-repeat center/cover;
  top: -60px;
  left: 0;
  right: 0;
  width: 74px;
  height: 54px;
  margin: 0 auto;
}
#page-top span.p-new_product__title__jp.u-text--subhead {
  display: inline-block;
  padding-left: 104px;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 768px) {
  #page-top h2.p-new_product__title__en {
    font-size: 33px !important;
  }
  #page-top h2.p-new_product__title__en::before {
    top: -36px;
    width: 44px;
    height: 32px;
  }
  #page-top span.p-new_product__title__jp.u-text--subhead {
    display: inline-block;
    padding-left: 19px;
    font-size: 14px !important;
  }
}
#page-top #new_product_1 .c-product_ranking {
  display: none;
}
#page-top #new_product_1 .c-product_ranking[data-is-top-three]::before {
  display: none;
}
#page-top #new_product_1 .c-product_item__inner__eyecatch__tags {
  content: "";
  display: inline-block;
  background: url(../img/top/ranking_icon01.png) no-repeat center/cover;
  width: 48px;
  height: 48px;
  top: -2px;
}
#page-top #page-top_recommend_ranking .previous-month {
  text-align: right;
  font-size: 16px;
  padding: 0 100px !important;
}
@media screen and (max-width: 768px) {
  #page-top #new_product_1 .c-product_item__inner__eyecatch__tags {
    width: 42px;
    height: 42px;
  }
  #page-top #page-top_recommend_ranking .previous-month {
    padding: 0 20px !important;
  }
}
#page-top .top_bg {
  background: url(../img/top/top_bg.png) no-repeat top center/contain;
}
@media screen and (max-width: 768px) {
  #page-top .top_bg {
    background: url(../img/top/top_bg_sp.png) no-repeat center bottom/cover;
  }
}
#page-top #mv {
  padding: 96px 0 85px;
  position: relative;
}
#page-top #mv .scrolldown {
  z-index: 4;
  position: absolute;
  bottom: 110px;
  left: 5%;
  font-size: 14px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}
#page-top #mv .scrolldown span {
  position: absolute;
  bottom: 110px;
  left: 5%;
  font-size: 14px;
  letter-spacing: 0.12em;
  writing-mode: vertical-rl;
  line-height: 1;
  margin-left: -5px;
}
#page-top #mv .scrolldown:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #1e1e1e;
  animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}
@keyframes circlemove {
  0% {
    bottom: 90px;
  }
  100% {
    bottom: -5px;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
#page-top #mv .scrolldown:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 90px;
  background: #1e1e1e;
}
#page-top #mv .inner {
  position: relative;
}
#page-top #mv a:hover {
  opacity: 1;
}
#page-top #mv .mv_icon_right {
  z-index: 3;
  position: absolute;
  width: 200px;
  top: 0;
  right: 0;
}
#page-top #mv .mv_icon_left {
  z-index: 3;
  position: absolute;
  width: 228px;
  bottom: 15px;
  left: 0;
}
#page-top #mv .swiper {
  overflow: hidden;
  width: 100%;
  max-width: 1400px;
}
#page-top #mv .swiper-slide {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
#page-top #mv .swiper-slide img {
  display: block;
  width: 100%;
  max-width: 1400px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page-top #mv .swiper {
  margin-left: auto;
  margin-right: auto;
}
#page-top #mv .swiper-pagination-bullet {
  background: #d0f1da;
  opacity: 1;
}
#page-top #mv .swiper-pagination-bullet-active {
  background-color: #000000;
}
#page-top #mv .swiper-pagination {
  text-align: right;
  padding-right: 85px;
  margin-bottom: 40px;
}
#page-top #mv .swiper-slide01, #page-top #mv .swiper-slide02, #page-top #mv .swiper-slide03, #page-top #mv .swiper-slide04 {
  position: relative;
}
#page-top #mv .swiper-slide {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto 20px;
  overflow: hidden;
  border-radius: 60px;
}
#page-top #mv .swiper-slide img {
  transition: 1s all;
}
#page-top #mv .swiper-slide img:hover {
  transform: scale(1.2, 1.2);
  transition: 1s all;
}
@media screen and (max-width: 1920px) {
  #page-top #mv {
    padding: 96px 11.083vw 85px;
  }
  #page-top #mv .mv_icon_right {
    width: 10.417vw;
  }
  #page-top #mv .mv_icon_left {
    width: 11.875vw;
  }
}
@media screen and (max-width: 768px) {
  #page-top #mv {
    padding: 57px 0 0;
  }
  #page-top #mv .inner {
    width: 100%;
    max-width: 343px;
  }
  #page-top #mv .mv_icon_right {
    width: 152px;
    top: 496px;
    right: 0;
  }
  #page-top #mv .mv_icon_left {
    width: 105px;
    bottom: 530px;
    left: 0;
  }
  #page-top #mv .swiper {
    max-width: 344px;
  }
  #page-top #mv .swiper-slide img {
    max-width: 343px;
  }
  #page-top #mv .swiper-pagination {
    text-align: left;
    padding-left: 19px;
    padding-right: 0;
    margin-bottom: 25px;
  }
}
#page-top #category {
  padding: 100px 0;
  position: relative;
  z-index: 3;
}
#page-top #category a:hover {
  opacity: 1;
}
#page-top #category h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  margin-bottom: 80px;
}
#page-top #category h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/category_ttl_icon.png) no-repeat center/cover;
  top: -48px;
  left: 0;
  right: 0;
  width: 82px;
  height: 40px;
  margin: 0 auto;
}
#page-top #category .category_wrapper_product {
  width: calc(50% - 1.458vw);
  margin-bottom: 40px;
}
#page-top #category .category_wrapper_product_range {
  margin: 0 auto 20px;
  overflow: hidden;
  border-radius: 24px;
}
#page-top #category .category_wrapper_product_range img {
  transition: 1s all;
}
#page-top #category .category_wrapper_product_range img:hover {
  transform: scale(1.2, 1.2);
  transition: 1s all;
}
#page-top #category .category_wrapper_product p {
  line-height: 1;
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 1920px) {
  #page-top #category {
    padding: 100px 11.083vw;
  }
}
@media screen and (max-width: 768px) {
  #page-top #category {
    padding: 100px 0 0;
    position: relative;
    z-index: 5;
  }
  #page-top #category .inner {
    width: 100%;
    max-width: 343px;
  }
  #page-top #category a:hover {
    opacity: 1;
  }
  #page-top #category h2 {
    font-size: 33px;
    margin-bottom: 40px;
  }
  #page-top #category h2::before {
    top: -29px;
    left: 0;
    right: 0;
    width: 45px;
    height: 22px;
  }
  #page-top #category .category_wrapper_product {
    margin-bottom: 25px;
    width: 100%;
  }
  #page-top #category .category_wrapper_product_range {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 12px;
    border-radius: 24px;
  }
  #page-top #category .category_wrapper_product_range img {
    width: 343px;
  }
  #page-top #category .category_wrapper_product p {
    font-size: 16px;
  }
}
#page-top #product {
  padding: 170px 0 150px;
}
#page-top #product .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-top #product h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  margin-bottom: 80px;
}
#page-top #product h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/product_ttl_icon.png) no-repeat center/cover;
  top: -48px;
  left: 0;
  right: 0;
  width: 79px;
  height: 45px;
  margin: 0 auto;
}
#page-top #product .tab_container {
  padding-bottom: 1em;
  margin: 0 auto;
}
#page-top #product .tab_item {
  width: 25%;
  padding: 15px 0;
  border-right: #000000 1px solid;
  text-align: center;
  color: #a0a0a0;
  display: block;
  float: left;
  text-align: center;
  font-weight: 500;
  transition: all 0.2s ease;
  line-height: 1;
}
#page-top #product .tab_item04 {
  border-right: none;
}
#page-top #product .tab_item:hover {
  opacity: 0.75;
}
#page-top #product input[name=tab_item] {
  display: none;
}
#page-top #product .tab_content {
  display: none;
  padding: 40px 0 0;
  clear: both;
  overflow: hidden;
}
#page-top #product #tab1:checked ~ #tab1_content,
#page-top #product #tab2:checked ~ #tab2_content,
#page-top #product #tab3:checked ~ #tab3_content,
#page-top #product #tab4:checked ~ #tab4_content {
  display: block;
}
#page-top #product .tab_container input:checked + .tab_item {
  color: #1e1e1e;
}
#page-top #product .tab_content_description_product {
  width: 33.3333333333%;
  margin-bottom: 50px;
}
#page-top #product .tab_content_description_product p {
  line-height: 1.4;
  font-weight: 500;
  font-size: 18px;
}
#page-top #product .tab_content_description_product p span {
  display: block;
  font-size: 14px;
}
@media screen and (max-width: 1920px) {
  #page-top #product {
    padding: 170px 11.083vw 150px;
  }
  #page-top #product .inner {
    padding: 0 2.083vw;
  }
  #page-top #product .tab_item {
    padding: 0.781vw 0;
  }
}
@media screen and (max-width: 768px) {
  #page-top {
    /*===============================
    product
    ==================================*/
  }
  #page-top #product {
    padding: 100px 0 50px;
  }
  #page-top #product .inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
  #page-top #product h2 {
    font-size: 33px;
    margin-bottom: 40px;
  }
  #page-top #product h2::before {
    top: -29px;
    width: 44px;
    height: 25px;
  }
  #page-top #product .tab_container {
    padding-bottom: 1em;
    margin: 0 auto;
  }
  #page-top #product .tab_item {
    width: calc(50% - 6px);
    padding: 15px 0 8px;
    border-right: none;
    border-bottom: #000000 1px solid;
    font-size: 16px;
  }
  #page-top #product .tab_item01, #page-top #product .tab_item03 {
    margin-right: 12px;
  }
  #page-top #product .tab_content_description_product {
    margin-bottom: 17px;
    width: 50%;
    margin-right: 0;
  }
  #page-top #product .tab_content_description_product p {
    font-size: 12px;
  }
  #page-top #product .tab_content_description_product p span {
    font-size: 10px;
  }
}
#page-top .about .inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#page-top .about h2 {
  padding: 118px 0 0;
  position: relative;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  text-align: left;
}
#page-top .about h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/about_ttl_icon.png) no-repeat center/cover;
  top: 63px;
  left: 74px;
  width: 75px;
  height: 52px;
}
#page-top .about_inner {
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
}
#page-top .about_txt {
  position: absolute;
  right: 50px;
  top: 362px;
}
#page-top .about p {
  font-size: clamp(16px, 2vw, 20px);
  margin-bottom: 70px;
}
#page-top .about .more_btn a:hover {
  opacity: 1;
}
#page-top .about .more_btn a {
  position: relative;
  display: inline-block;
  border: #1e1e1e solid 1px;
  border-radius: 25px;
  font-size: 14px;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  padding: 14px 0 14px 90px;
  line-height: 1;
  width: 201px;
  transition: transform ease 0.4s;
}
#page-top .about .more_btn a::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/btn_more_icon.png) no-repeat center/cover;
  top: 15px;
  left: 67px;
  width: 10px;
  height: 10px;
  transition: transform ease 0.4s;
}
#page-top .about .more_btn a:hover {
  background: #1e1e1e;
  color: #fff;
  border: #fff solid 1px;
}
#page-top .about .more_btn a:hover::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/btn_more_icon_hover.png) no-repeat center/cover;
  top: 15px;
  left: 67px;
  width: 10px;
  height: 10px;
}
#page-top .about .parallax {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  position: sticky;
  top: 0;
  left: 0;
  background: url(../img/top/about_bg.jpg) no-repeat center/cover;
  height: 100vh;
}
#page-top .about .parallax_section {
  position: relative;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  width: 1920px;
  height: 1920px;
  margin-top: -428px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  border-radius: 100% 0 0 0;
  z-index: 3;
}
#page-top #news {
  margin-top: 800px;
}
#page-top #news .inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
}
#page-top #news h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  margin-bottom: 80px;
}
#page-top #news h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/news_ttl_icon.png) no-repeat center/cover;
  top: 63px;
  left: 0;
  right: 0;
  width: 72px;
  height: 46px;
  margin: 0 auto;
}
#page-top #news .news_list {
  margin: 70px 0 65px;
  line-height: 1.9;
}
#page-top #news .news_list dl {
  font-size: 20px;
  font-size: clamp(16px, 2vw, 20px);
  border-bottom: solid 1px #a0a0a0;
  padding: 30px 0;
}
#page-top #news .news_list dl dt {
  margin-right: 60px;
}
#page-top #news .news_list dl:first-child {
  padding: 0 0 30px 0;
}
#page-top #news .news_list dl:hover {
  opacity: 0.6;
}
#page-top #news .more_btn a {
  position: relative;
  display: block;
  border: #1e1e1e solid 1px;
  border-radius: 25px;
  font-size: 14px;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  padding: 14px 0 14px 90px;
  line-height: 1;
  width: 201px;
  margin: 0 auto 70px;
}
#page-top #news .more_btn a::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/btn_more_icon.png) no-repeat center/cover;
  top: 15px;
  left: 67px;
  width: 10px;
  height: 10px;
}
#page-top #news .more_btn a:hover {
  background: #1e1e1e;
  color: #fff;
  border: #fff solid 1px;
}
#page-top #news .more_btn a:hover::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/btn_more_icon_hover.png) no-repeat center/cover;
  top: 15px;
  left: 67px;
  width: 10px;
  height: 10px;
}
#page-top #bnr a img {
  width: 360px;
  margin: 0 auto;
}
@media screen and (max-width: 1920px) {
  #page-top {
    /*===============================
    about
    ==================================*/
    /*===============================
    news
    // ===============================*/
  }
  #page-top .about_inner {
    padding: 0 2.083vw;
  }
  #page-top .about_txt {
    right: 2.604vw;
    top: 18.854vw;
  }
  #page-top .about p {
    margin-bottom: 3.646vw;
  }
  #page-top .about .parallax {
    max-width: 100vw;
  }
  #page-top .about .parallax_section {
    width: 100vw;
  }
  #page-top #news {
    margin-top: 41.667vw;
  }
}
@media screen and (max-width: 1280px) {
  #page-top {
    /*===============================
    about
    ==================================*/
  }
  #page-top .about .inner {
    max-width: 78.125vw;
  }
}
@media screen and (max-width: 1000px) {
  #page-top {
    /*===============================
    about
    ==================================*/
    /*===============================
    news
    // ==================================*/
    /*===============================
    bnr
    ==================================*/
  }
  #page-top .about .inner {
    max-width: 92%;
  }
  #page-top .about .parallax_section {
    width: 100vw;
    height: 160vw;
  }
  #page-top #news .news_list {
    line-height: 1.9;
    width: 85%;
    margin: 70px 0 65px auto;
  }
  #page-top #news h2 {
    width: 85%;
    padding: 118px 0 0;
    margin: 0 0 auto 80px;
  }
  #page-top #bnr .inner {
    max-width: 92vw;
    padding: 0 4vw;
  }
}
@media screen and (max-width: 768px) {
  #page-top {
    /*===============================
    news
    ==================================*/
    /*===============================
    bnr
    ==================================*/
  }
  #page-top .about_inner {
    position: unset;
    width: 100%;
    max-width: 100%;
    padding: 0;
  }
  #page-top .about h2 {
    font-size: 33px;
    text-align: center;
  }
  #page-top .about h2::before {
    top: 85px;
    left: 0;
    right: 0;
    width: 41px;
    height: 28px;
    margin: 0 auto;
  }
  #page-top .about_txt {
    z-index: 4;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -35px;
    text-align: center;
  }
  #page-top .about p {
    font-size: 16px;
    margin-bottom: 35px;
    text-align: center;
  }
  #page-top .about .more_btn a {
    border-radius: 25px;
    font-size: 11px;
    padding: 12px 0 12px 23px;
    width: 152px;
  }
  #page-top .about .more_btn a::before {
    top: 14px;
    left: 46px;
    width: 7px;
    height: 7px;
  }
  #page-top .about .more_btn a:hover {
    background: #fff;
    color: #1e1e1e;
    border: #1e1e1e solid 1px;
  }
  #page-top .about .more_btn a:hover::before {
    display: inline-block;
    position: absolute;
    content: "";
    background: url(../img/top/btn_more_icon.png) no-repeat center/cover;
    left: 52px;
    width: 7px;
    height: 7px;
  }
  #page-top .about .parallax {
    width: 100vw;
    max-width: 100vw;
    background: url(../img/top/about_bg_sp.jpg) no-repeat center/cover;
    height: 100vh;
  }
  #page-top .about .parallax_section_bg_sp {
    margin-top: -334px;
    position: relative;
    z-index: 3;
  }
  #page-top .about .parallax_section_bg_sp img {
    width: 100vw;
  }
  #page-top .about .parallax_section {
    position: relative;
    background: #fff;
    width: 100%;
    height: 1183px;
    margin-top: -1px;
    border-radius: 0;
  }
  #page-top #news {
    position: absolute;
    margin-top: 190px;
    margin-left: 0;
    top: 0;
    left: 0;
    right: 0;
  }
  #page-top #news .inner {
    width: 100%;
    max-width: 343px;
    margin: 0 auto;
  }
  #page-top #news h2 {
    font-size: 33px;
    margin: 0 auto 40px;
  }
  #page-top #news h2::before {
    top: 90px;
    left: 0;
    right: 0;
    width: 40px;
    height: 25px;
  }
  #page-top #news .news_list {
    width: 343px;
    margin: 0 auto 35px;
    font-size: 16px;
  }
  #page-top #news .news_list dl {
    display: block;
    font-size: 16px;
    padding: 25px 0;
  }
  #page-top #news .news_list dl dt {
    margin-right: 0;
  }
  #page-top #news .news_list dl:first-child {
    padding: 0 0 25px 0;
  }
  #page-top #news .more_btn a {
    font-size: 11px;
    padding: 12px 0 12px 65px;
    line-height: 1;
    width: 152px;
    margin: 0 auto 60px;
  }
  #page-top #news .more_btn a::before {
    top: 15px;
    left: 45px;
    width: 7px;
    height: 7px;
  }
  #page-top #news .more_btn a:hover {
    background: #fff;
    color: #1e1e1e;
    border: #1e1e1e solid 1px;
  }
  #page-top #news .more_btn a:hover::before {
    display: inline-block;
    position: absolute;
    content: "";
    background: url(../img/top/btn_more_icon.png) no-repeat center/cover;
    top: 15px;
    left: 45px;
    width: 7px;
    height: 7px;
  }
  #page-top #bnr {
    width: 343px;
    margin: 0 auto;
  }
  #page-top #bnr .inner {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 16px;
  }
  #page-top #bnr .bnr_product {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
  }
  #page-top #bnr .bnr_product img {
    width: 343px;
  }
}
@media screen and (max-width: 1440px) {
  #page-top + .contact {
    position: relative;
    z-index: 10;
    margin: -100px 0 50px;
  }
}
@media screen and (max-width: 1000px) {
  #page-top + .contact {
    margin: 30px 0 50px;
  }
}
@media screen and (max-width: 768px) {
  #page-top + .contact {
    margin: 0;
  }
}

/*===============================
pages_mv
==================================*/
.pages_mv {
  overflow: clip;
  background: #e2f7e8;
  padding: 215px 0 192px;
  position: relative;
}
.pages_mv .inner {
  text-align: center;
}
.pages_mv h2 {
  font-size: 60px;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  letter-spacing: 0.12em;
}

@media screen and (max-width: 768px) {
  .pages_mv {
    padding: 120px 0 90px;
    position: relative;
  }
  .pages_mv h2 {
    font-size: 33px;
  }
}
/*===============================
breadcrumbs
=================================*/
.breadcrumbs {
  background: #e2f7e8;
  padding-bottom: 16px;
}
.breadcrumbs ul {
  font-size: 14px;
  line-height: 1;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
}
.breadcrumbs ul li {
  margin-left: 10px;
}
.breadcrumbs ul li a {
  color: #1e1e1e;
}
.breadcrumbs ul li:last-child {
  color: #9ab4a2;
}
.breadcrumbs ul li:not(:first-child)::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: -5px 10px 0 0;
  border-top: solid 1px #9ab4a2;
  border-right: solid 1px #9ab4a2;
  transform: rotate(45deg);
}

@media screen and (max-width: 1440px) {
  .breadcrumbs .inner {
    padding: 0 60px;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumbs .inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
}
.pages-guide {
  margin: 0 calc(50% - 50vw) 100px;
  width: 100vw;
  color: #000;
  /*===============================
  pages-guide_mv
  ==================================*/
  /*===============================
  breadcrumbs
  =================================*/
  /*===============================
  pages-guide_wrap
  ==================================*/
  /*===============================
  pages-guide_cnt
  ==================================*/
  /*===============================
  pages-guide_cnt04
  ==================================*/
  /*===============================
  pages-guide_cnt08
  ==================================*/
}
.pages-guide .page-guide_mv_ttl {
  font-size: 56px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .pages-guide {
    /*===============================
    .page-guide_mv
    ==================================*/
  }
  .pages-guide .page-guide_mv_ttl {
    font-size: 32px;
  }
}
.pages-guide .breadcrumbs ul li:last-child {
  color: #9ab4a2;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
.pages-guide_wrap {
  padding: 70px 0 0;
}
.pages-guide_cnt {
  margin-bottom: 70px;
}
.pages-guide_cnt .bg_gray {
  color: #FFF;
  font-size: 24px;
  line-height: 1.3;
  padding: 20px 18px 16px !important;
  margin-top: 40px;
  background: #666;
}
.pages-guide_cnt .inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 60px;
}
.pages-guide_cnt-ttl {
  font-size: 36px;
  color: #76c06f;
  margin-bottom: 20px;
  line-height: 1;
}
.pages-guide_cnt-notes {
  font-size: 16px;
  margin-bottom: 30px;
  line-height: 1.8;
}
.pages-guide_cnt-txt {
  font-size: 14px;
  margin-bottom: 30px;
}
.pages-guide_cnt dl dt {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 15px;
}
.pages-guide_cnt dl dd {
  font-size: 16px;
  margin-bottom: 40px;
  line-height: 1.8;
}
.pages-guide_cnt-border {
  border: #76c06f solid 1px;
  background: #FAFAFA;
  font-size: 16px;
  padding: 20px;
}
.pages-guide_cnt-border02 {
  border: 1px #e9e7e7 solid;
  font-size: 16px;
  padding: 20px;
}
.pages-guide_cnt-box {
  width: 100%;
  border-bottom: 1px #EDECF1 solid;
}
.pages-guide_cnt-box tr {
  border: 1px #e9e7e7 solid;
}
.pages-guide_cnt-box tr th {
  font-size: 20px;
  font-weight: 600;
  background: #FAFAFA;
  padding: 15px 15px 12px 20px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
  vertical-align: middle;
  width: 300px;
  border-right: 1px #e9e7e7 solid;
}
.pages-guide_cnt-box tr td {
  font-size: 16px;
  margin-bottom: 40px;
  background: #FFF;
  padding: 15px 15px 12px 20px;
  text-align: left;
}
.pages-guide_cnt-box tr td p {
  line-height: 1.8;
}
.pages-guide_cnt .shopImage {
  max-width: 1020px;
  margin: 20px auto 90px;
  overflow: hidden;
}
.pages-guide_cnt .shopImage dl {
  width: calc(50% - 20px);
  float: left;
  margin: 0 10px;
  border: 1px #EDECF1 solid;
  padding: 10px;
  display: block;
}
.pages-guide_cnt .shopImage dl dt {
  display: table-cell;
  width: 64.2%;
}
.pages-guide_cnt .shopImage dl dd {
  display: table-cell;
  vertical-align: bottom;
  padding-left: 10px;
}
.pages-guide_cnt-box04 {
  width: 100%;
  border: 1px #EDECF1 solid;
}
.pages-guide_cnt-box04 tr {
  border: 1px #e9e7e7 solid;
}
.pages-guide_cnt-box04 tr th {
  background: #FAFAFA;
  padding: 15px 15px 12px 20px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
  vertical-align: middle;
  width: 25%;
  border-right: 1px #e9e7e7 solid;
}
.pages-guide_cnt-box04 tr td {
  vertical-align: top;
  background: #FFF;
  padding: 15px 15px 12px 20px;
  text-align: left;
  border-right: 1px #e9e7e7 solid;
}
@media screen and (max-width: 1920px) {
  .pages-guide_cnt .inner {
    padding: 0 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .pages-guide {
    /*===============================
    pages-guide_wrap
    ==================================*/
    /*===============================
    pages-guide_cnt
    ==================================*/
  }
  .pages-guide_wrap {
    padding: 35px 0 0;
  }
  .pages-guide_cnt {
    margin-bottom: 30px;
    line-height: 1.6;
  }
  .pages-guide_cnt .inner {
    width: 100%;
    max-width: 100%;
    padding: 0 16px;
  }
  .pages-guide_cnt .bg_gray {
    color: #FFF;
    font-size: 18px;
    line-height: 1.3;
    padding: 10px 15px !important;
    margin-top: 40px;
    background: #666;
  }
  .pages-guide_cnt-ttl {
    font-size: 24px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
  .pages-guide_cnt-notes {
    font-size: 15px;
    margin-bottom: 20px;
  }
  .pages-guide_cnt-txt {
    font-size: 14px;
    margin-bottom: 20px;
  }
  .pages-guide_cnt dl dt {
    font-size: 18px;
  }
  .pages-guide_cnt dl dd {
    font-size: 14px;
    margin-bottom: 15px;
  }
  .pages-guide_cnt-border {
    font-size: 12px;
    padding: 15px;
  }
  .pages-guide_cnt-border {
    font-size: 12px;
    padding: 15px;
  }
  .pages-guide_cnt-border02 {
    font-size: 12px;
    padding: 15px;
  }
  .pages-guide_cnt-box {
    width: 100%;
  }
  .pages-guide_cnt-box tr th {
    display: block;
    width: 100%;
    padding: 8px 10px 6px 10px;
    font-size: 11px;
    text-align: left;
    border-bottom: 1px #EDECF1 solid;
  }
  .pages-guide_cnt-box tr td {
    display: block;
    width: 100%;
    padding: 8px 10px 6px 10px;
    font-size: 11px;
    margin-bottom: 10px;
  }
  .pages-guide_cnt .shopImage {
    max-width: 1020px;
    margin: 20px auto 40px;
    overflow: hidden;
  }
  .pages-guide_cnt .shopImage img {
    width: 100%;
    height: auto;
  }
  .pages-guide_cnt .shopImage dl {
    width: calc(50% - 4px);
    float: left;
    margin: 0 4px 0 0;
    border: 1px #EDECF1 solid;
    padding: 10px 0 0;
    display: block;
  }
  .pages-guide_cnt .shopImage dl dt {
    display: block;
    width: 100%;
  }
  .pages-guide_cnt .shopImage dl dd {
    display: block;
    padding: 5px 0 0 0;
    vertical-align: bottom;
  }
  .pages-guide_cnt-box04 {
    width: 100%;
    border: 1px #EDECF1 solid;
    /* border-collapse: initial; */
  }
  .pages-guide_cnt-box04 tr {
    border: 1px #e9e7e7 solid;
  }
  .pages-guide_cnt-box04 tr th {
    display: block;
    width: 100%;
    padding: 8px 10px 6px 10px;
    font-size: 11px;
    text-align: left;
    border-bottom: 1px #EDECF1 solid;
  }
  .pages-guide_cnt-box04 tr td {
    display: block;
    width: 100%;
    padding: 8px 10px 6px 10px;
    font-size: 11px;
  }
  .pages-guide_cnt .tableTitleGreen {
    font-size: 14px;
    padding: 8px 0 6px 10px;
    color: #FFF;
    background: #77CEA0;
    font-weight: 600;
  }
  .pages-guide_cnt .normalTable {
    width: 100%;
    /* border-collapse: initial; */
    border-spacing: 1px;
    border: none;
  }
  .pages-guide_cnt .normalTable tr {
    border: 1px #EDECF1 solid;
  }
  .pages-guide_cnt .normalTable tr th {
    display: block;
    width: 100%;
    background: #FAFAFA;
    padding: 8px 10px 6px 10px;
    font-size: 12px;
    font-weight: 600;
    text-align: left;
    border-bottom: 1px #EDECF1 solid;
  }
  .pages-guide_cnt .normalTable tr td {
    display: block;
    width: 100%;
    padding: 8px 10px 6px 10px;
    font-size: 11px;
  }
}
.pages-guide_cnt04 .cre, .pages-guide_cnt04 .money, .pages-guide_cnt04 .np {
  width: 468px;
}
.pages-guide_cnt08 .ssl_image {
  width: 115px;
  float: left;
  margin-right: 10px;
}

#page-about {
  overflow: clip;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  color: #000;
  /*===============================
  page-company-info
  ==================================*/
  /*==================================
  production
  =====================================*/
}
#page-about .about .inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#page-about .about h3 {
  font-size: 32px;
  text-align: center;
  line-height: 1.75;
  padding: 150px 0 100px 0;
  font-weight: 500;
}
#page-about .about p {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
}
#page-about .about_inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 60px;
}
#page-about .about_inner_wrap {
  position: relative;
  z-index: 5;
}
#page-about .about_inner_wrap_img {
  width: 100%;
  margin-left: calc(50% - 50vw);
  background: url(../img/about/about_img01.png) no-repeat center/cover;
  height: 28.167vw;
  border-top-right-radius: 30px;
  border-bottom-right-radius: 30px;
}
#page-about .about_inner_wrap_txt {
  width: 55%;
  font-size: 20px;
  margin-left: 112px;
}
#page-about .about_inner_wrap_txt p {
  text-align: left;
  margin-bottom: 70px;
  font-weight: 500;
}
#page-about .about_inner_wrap_txt .about_btn01 {
  margin-bottom: 16px;
}
#page-about .about_inner_wrap_txt .about_btn a {
  position: relative;
  display: inline-block;
  border: #1e1e1e solid 1px;
  border-radius: 25px;
  font-size: 14px;
  font-weight: 500;
  padding: 14px 0 13px 84px;
  line-height: 1;
  width: 280px;
  transition: transform ease 0.4s;
}
#page-about .about_inner_wrap_txt .about_btn a::after {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/about/about_icon.png) no-repeat center/cover;
  top: 12px;
  right: 87px;
  width: 15px;
  height: 15px;
  transition: transform ease 0.4s;
}
#page-about .about_inner_wrap_txt .about_btn02 a {
  padding: 14px 0 13px 36px;
}
#page-about .about .parallax {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  position: sticky;
  top: 0;
  left: 0;
  background: url(../img/about/about_page_bg.jpg) no-repeat center/cover;
  height: 100vh;
}
#page-about .about .parallax_section {
  background: url(../img/about/about_parallax_section_bg.png) no-repeat top center/cover;
  position: relative;
  z-index: 3;
  width: 100vw;
  padding-top: 436px;
  margin-top: -301px;
}
@media screen and (max-width: 1920px) {
  #page-about .about h3 {
    padding: 7.813vw 0 5.208vw 0;
  }
  #page-about .about_inner {
    padding: 0 2.083vw;
  }
  #page-about .about_inner_wrap_txt {
    margin-left: 5.833vw;
  }
  #page-about .about_inner_wrap_txt p {
    margin-bottom: 3.646vw;
  }
  #page-about .about .parallax {
    max-width: 100vw;
  }
  #page-about .about .parallax_section {
    width: 100vw;
    margin-top: -15.677vw;
  }
}
@media screen and (min-width: 769px) {
  #page-about .about_inner_wrap_txt a:hover {
    opacity: 1;
  }
  #page-about .about_inner_wrap_txt .about_btn a:hover {
    background: #000;
    color: #fff;
  }
  #page-about .about_inner_wrap_txt .about_btn02 a::after {
    display: inline-block;
    position: absolute;
    content: "";
    background: url(../img/about/about_icon.png) no-repeat center/cover;
    top: 13px;
    right: 34px;
    width: 15px;
    height: 15px;
  }
}
@media screen and (max-width: 768px) {
  #page-about .about {
    margin-bottom: 13.021vw;
  }
  #page-about .about h3 {
    font-size: 20px;
    padding: 100px 0 70px 0;
  }
  #page-about .about p {
    font-size: 16px;
  }
  #page-about .about_inner {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 16px;
  }
  #page-about .about_inner_wrap {
    display: block;
  }
  #page-about .about_inner_wrap_img {
    width: 100%;
    max-width: 343px;
    margin: 0 auto 30px;
    height: 200px;
    border-radius: 20px;
  }
  #page-about .about_inner_wrap_txt {
    width: 100%;
    max-width: 343px;
    font-size: 20px;
    margin: 0 auto;
    text-align: center;
  }
  #page-about .about_inner_wrap_txt p {
    margin-bottom: 30px;
    text-align: justify;
  }
  #page-about .about_inner_wrap_txt .about_btn01 {
    margin-bottom: 16px;
  }
  #page-about .about_inner_wrap_txt .about_btn a {
    font-size: 11px;
    padding: 13px 22px 13px 0;
    width: 280px;
    margin: 0 auto 20px;
  }
  #page-about .about_inner_wrap_txt .about_btn a::after {
    top: 10px;
    right: 95px;
  }
  #page-about .about_inner_wrap_txt .about_btn02 a {
    padding: 13px 20px 13px 0;
  }
  #page-about .about_inner_wrap_txt .about_btn02 a::after {
    top: 10px;
    right: 53px;
  }
  #page-about .about .parallax {
    width: 100vw;
    max-width: 100vw;
    background: url(../img/about/about_page_bg_sp.jpg) no-repeat top/cover;
    height: 100vh;
  }
  #page-about .about .parallax_section {
    background: url(../img/about/about_parallax_section_bg_sp.png) no-repeat top center/cover;
    width: 100%;
    border-radius: 0;
    padding-top: 296px;
    margin-top: -30px;
  }
}
#page-about .production {
  width: 100%;
  max-width: 1920px;
  position: relative;
  margin: 200px 0 240px;
  z-index: 10;
}
#page-about .production_wrapper_img {
  width: 320px !important;
}
@media screen and (max-width: 1920px) {
  #page-about .production {
    margin: 10.417vw 0 12.5vw;
  }
}
@media screen and (max-width: 768px) {
  #page-about .production {
    max-width: 100%;
    margin: 0 0 100px;
  }
  #page-about .production_wrapper {
    flex-wrap: wrap;
    width: 100%;
  }
  #page-about .production_wrapper_img {
    width: 33.3333333333% !important;
  }
}

#page-category {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  color: #000;
  /*===============================
  page-category_mv
  ==================================*/
  /*===============================
  category
  ==================================*/
  /*===============================
  product
  ==================================*/
}
#page-category #page-category_mv h2 {
  font-size: 56px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #page-category {
    /*===============================
    page-category_mv
    ==================================*/
  }
  #page-category #page-category_mv h2 {
    font-size: 32px;
  }
}
#page-category .category {
  padding: 200px 0 0;
}
#page-category .category_inner {
  width: 100%;
  max-width: 1520px;
  margin: 0 auto;
  padding: 0 60px;
}
#page-category .category_inner_wrap_img {
  width: 100%;
  margin-left: calc(50% - 50vw);
  background: url(../img/category/series01_img01.png) no-repeat center/cover;
  height: 29.167vw;
  border-top-right-radius: 24px;
  border-bottom-right-radius: 24px;
}
#page-category .category_inner_wrap_img02 {
  background: url(../img/category/series02_img01.png) no-repeat center/cover;
}
#page-category .category_inner_wrap_img03 {
  background: url(../img/category/series03_img01.png) no-repeat center/cover;
}
#page-category .category_inner_wrap_img04 {
  background: url(../img/category/series04_img01.png) no-repeat center/cover;
}
#page-category .category_inner_wrap_txt {
  width: 55%;
  margin-left: 112px;
}
#page-category .category_inner_wrap_txt p {
  text-align: left;
  font-weight: 500;
}
@media screen and (max-width: 1920px) {
  #page-category .category {
    padding: 200px 0 0;
  }
  #page-category .category_inner {
    width: 100%;
    max-width: 1520px;
    margin: 0 auto;
    padding: 0 60px;
  }
  #page-category .category_inner_wrap_txt {
    width: 55%;
    margin-left: 5.833vw;
  }
  #page-category .category_inner_wrap_txt p {
    text-align: left;
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #page-category .category {
    padding: 100px 0 0;
  }
  #page-category .category_inner {
    width: 100%;
    max-width: 100%;
    padding: 0 16px;
  }
  #page-category .category_inner_wrap {
    display: block;
  }
  #page-category .category_inner_wrap_img {
    width: 100%;
    max-width: 343px;
    margin: 0 auto 20px;
    height: 200px;
    border-radius: 24px;
  }
  #page-category .category_inner_wrap_txt {
    width: 100%;
    max-width: 343px;
    margin: 0 auto;
  }
  #page-category .category_inner_wrap_txt p {
    font-size: 16px;
    text-align: left;
    text-align: justify;
  }
}
#page-category #product {
  padding: 258px 0 150px;
}
#page-category #product .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-category #product h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  margin-bottom: 80px;
}
#page-category #product h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/common/line-up_ttl_icon.png) no-repeat center/cover;
  top: -48px;
  left: 0;
  right: 0;
  width: 79px;
  height: 45px;
  margin: 0 auto;
}
#page-category #product .product_content {
  margin: 0 auto;
}
#page-category #product .product_content_wrap_description {
  width: 33.3333333333%;
  margin-bottom: 50px;
}
#page-category #product .product_content_wrap_description p {
  line-height: 1.4;
  font-weight: 500;
  font-size: 18px;
}
#page-category #product .product_content_wrap_description p span {
  display: block;
  font-size: 14px;
  margin-bottom: 10px;
}
@media screen and (max-width: 1920px) {
  #page-category #product {
    padding: 13.438vw 11.083vw 7.813vw;
    padding: 13.438vw 11.083vw 0;
  }
  #page-category #product .inner {
    padding: 0 2.083vw;
  }
}
@media screen and (max-width: 768px) {
  #page-category {
    /*===============================
    product
    ==================================*/
  }
  #page-category #product {
    padding: 120px 0 0;
  }
  #page-category #product .inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
  #page-category #product h2 {
    font-size: 33px;
    margin-bottom: 40px;
  }
  #page-category #product h2::before {
    top: -29px;
    width: 44px;
    height: 25px;
  }
  #page-category #product .product_content_wrap_description {
    width: calc(50% - 6px);
    padding: 0 0 8px;
    margin-bottom: 20px;
    border-right: none;
    font-size: 16px;
  }
  #page-category #product .product_content_wrap_description p {
    font-size: 12px;
  }
  #page-category #product .product_content_wrap_description p span {
    font-size: 10px;
  }
  #page-category #product .product_content_wrap_description01, #page-category #product .product_content_wrap_description03 {
    margin-right: 12px;
  }
}

#page-course {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  color: #000;
  /*===============================
  page-course_mv
  ==================================*/
  /*===============================
  breadcrumbs
  ==================================*/
  /*===============================
  course
  ==================================*/
}
#page-course #page-course_mv h2 {
  font-size: 56px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #page-course {
    /*===============================
    page-course_mv
    ==================================*/
  }
  #page-course #page-course_mv h2 {
    font-size: 32px;
  }
}
#page-course .breadcrumbs ul li:last-child {
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#page-course .course {
  padding: 200px 0 200px;
}
#page-course .course .fs20 {
  font-size: 20px;
  line-height: 1.6;
}
#page-course .course_inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
}
#page-course .course_inner p {
  text-align: center;
  margin-bottom: 40px;
  font-size: 20px;
}
#page-course .course .subscription_right {
  background: linear-gradient(269deg, rgb(244, 244, 244) 0%, rgb(244, 244, 244) 50%, transparent 80%, transparent 100%);
  text-align: left;
  margin-bottom: 40px;
}
#page-course .course .subscription_right .inner {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 0 40px;
}
#page-course .course .subscription_right_detail_txt {
  position: relative;
  display: inline-block;
  background: #f4f4f4;
  padding: 50px 48px 46px;
  border-top-left-radius: 20px;
  -webkit-border-top-left-radius: 20px;
  -webkit-border-bottom-left-radius: 20px;
  -moz-border-radius-bottom-left: 20px;
  font-size: 32px;
  font-weight: bold;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#page-course .course .subscription_right_detail_txt_ttl {
  gap: 10px;
}
#page-course .course .subscription_right_detail_txt_ttl .point {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  background: #1e1e1e;
  width: 70px;
  height: 70px;
  border-radius: 50%;
}
#page-course .course .subscription_right_detail_txt_ttl .point .point-wrap {
  font-weight: 500;
}
#page-course .course .subscription_right_detail_txt_ttl .point .point-wrap-no {
  font-size: 12px;
  display: block;
}
#page-course .course .subscription_right_detail_txt_ttl .explan {
  width: calc(100% - 80px);
  font-size: 32px;
}
#page-course .course .subscription_right_detail_txt_info {
  font-size: 20px;
  font-weight: 500;
  margin-top: 23px;
  gap: 30px;
}
#page-course .course .subscription_right_detail_txt_info .point_icon {
  width: 127px;
}
#page-course .course .subscription_right_detail_txt_info .explan {
  width: calc(100% - 157px);
}
#page-course .course .subscription_right_detail_txt_info .indent {
  display: block;
  font-size: 14px;
  font-weight: 500;
}
#page-course .course .subscription_left {
  background: linear-gradient(90deg, rgb(244, 244, 244) 0%, rgb(244, 244, 244) 50%, transparent 80%, transparent 100%);
  text-align: left;
  margin-bottom: 40px;
}
#page-course .course .subscription_left .inner {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 0 40px;
}
#page-course .course .subscription_left_detail_txt {
  position: relative;
  display: inline-block;
  background: #f4f4f4;
  padding: 50px 48px 46px;
  border-top-right-radius: 20px;
  -webkit-border-top-right-radius: 20px;
  -webkit-border-bottom-right-radius: 20px;
  -moz-border-radius-bottom-right: 20px;
  font-size: 32px;
  font-weight: bold;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#page-course .course .subscription_left_detail_txt_ttl {
  gap: 10px;
}
#page-course .course .subscription_left_detail_txt_ttl .point {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  color: #fff;
  line-height: 1;
  letter-spacing: 0;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  background: #1e1e1e;
  width: 70px;
  height: 70px;
  border-radius: 50%;
}
#page-course .course .subscription_left_detail_txt_ttl .point .point-wrap {
  font-weight: 500;
}
#page-course .course .subscription_left_detail_txt_ttl .point .point-wrap-no {
  font-size: 12px;
  display: block;
}
#page-course .course .subscription_left_detail_txt_ttl .explan {
  width: calc(100% - 80px);
  font-size: 32px;
}
#page-course .course .subscription_left_detail_txt_info {
  font-size: 20px;
  font-weight: 500;
  margin-top: 23px;
  gap: 30px;
}
#page-course .course .subscription_left_detail_txt_info .point_icon {
  width: 127px;
}
#page-course .course .subscription_left_detail_txt_info .explan {
  width: calc(100% - 157px);
}
#page-course .course .subscription_left_detail_txt_info .indent {
  display: block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}
#page-course .course .subscription_left_detail_txt_info .mt10 {
  margin-top: 10px;
}
#page-course .course .subscription_left_detail_txt a.info_contact {
  color: #9ab4a2;
  border-bottom: 1px solid #9ab4a2;
}
#page-course .course .ps .inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 40px;
}
#page-course .course .ps p {
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #page-course .course {
    padding: 100px 0 100px;
  }
  #page-course .course .fs20 {
    font-size: 16px;
  }
  #page-course .course_inner {
    width: 100%;
    max-width: 100%;
    padding: 0 16px;
  }
  #page-course .course_inner p {
    font-size: 16px;
    margin-bottom: 20px;
    text-align: justify;
  }
  #page-course .course .subscription_right {
    background: linear-gradient(269deg, rgb(244, 244, 244) 0%, rgb(244, 244, 244) 50%, transparent 80%, transparent 100%);
    text-align: left;
    margin-bottom: 40px;
  }
  #page-course .course .subscription_right .inner {
    max-width: 100%;
    width: 100%;
    padding: 0 20px;
  }
  #page-course .course .subscription_right_detail_txt {
    padding: 40px 16px;
    font-size: 20px;
  }
  #page-course .course .subscription_right_detail_txt_ttl {
    gap: 10px;
    justify-content: center;
  }
  #page-course .course .subscription_right_detail_txt_ttl .point {
    font-size: 20px;
    width: 48px;
    height: 48px;
  }
  #page-course .course .subscription_right_detail_txt_ttl .point .point-wrap {
    text-align: center;
  }
  #page-course .course .subscription_right_detail_txt_ttl .point .point-wrap-no {
    font-size: 10px;
  }
  #page-course .course .subscription_right_detail_txt_ttl .explan {
    line-height: 1.4;
    width: calc(100% - 58px);
    font-size: 20px;
  }
  #page-course .course .subscription_right_detail_txt_info {
    font-size: 16px;
    margin-top: 17px;
    margin-left: 0;
    align-items: flex-start;
    gap: 16px;
    text-align: justify;
    display: block;
  }
  #page-course .course .subscription_right_detail_txt_info .point_icon {
    width: 168px;
    margin: 0 auto 10px;
  }
  #page-course .course .subscription_right_detail_txt_info .explan {
    width: 100%;
  }
  #page-course .course .subscription_right_detail_txt_info .indent {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 10px;
    padding-left: 1em !important;
    text-indent: -1em;
    text-align: justify;
  }
  #page-course .course .subscription_left {
    background: linear-gradient(90deg, rgb(244, 244, 244) 0%, rgb(244, 244, 244) 50%, transparent 80%, transparent 100%);
    text-align: left;
    margin-bottom: 40px;
  }
  #page-course .course .subscription_left .inner {
    max-width: 100%;
    width: 100%;
    padding: 0 20px;
  }
  #page-course .course .subscription_left_detail_txt {
    padding: 40px 16px;
    font-size: 20px;
  }
  #page-course .course .subscription_left_detail_txt_ttl {
    gap: 10px;
    justify-content: center;
  }
  #page-course .course .subscription_left_detail_txt_ttl .point {
    font-size: 20px;
    width: 48px;
    height: 48px;
  }
  #page-course .course .subscription_left_detail_txt_ttl .point .point-wrap {
    text-align: center;
  }
  #page-course .course .subscription_left_detail_txt_ttl .point .point-wrap-no {
    font-size: 10px;
  }
  #page-course .course .subscription_left_detail_txt_ttl .explan {
    line-height: 1.4;
    width: calc(100% - 58px);
    font-size: 20px;
  }
  #page-course .course .subscription_left_detail_txt_info {
    font-size: 16px;
    margin-top: 17px;
    margin-left: 0;
    align-items: flex-start;
    gap: 16px;
    text-align: justify;
    display: block;
  }
  #page-course .course .subscription_left_detail_txt_info .point_icon {
    width: 168px;
    margin: 0 auto 10px;
  }
  #page-course .course .subscription_left_detail_txt_info .point_icon_img {
    margin: 0 auto;
  }
  #page-course .course .subscription_left_detail_txt_info .explan {
    width: 100%;
  }
  #page-course .course .subscription_left_detail_txt_info .indent {
    font-size: 14px;
    padding-left: 1em;
    text-indent: -1em;
    text-align: justify;
  }
  #page-course .course .ps .inner {
    width: 100%;
    max-width: 343px;
    padding: 0 16px;
  }
  #page-course .course .ps p.indent {
    font-size: 14px;
    padding-left: 1em;
    text-indent: -1em;
    text-align: justify;
  }
}

.flex {
  display: flex;
}

.flex_around {
  justify-content: space-around;
}

.flex_between {
  justify-content: space-between;
}

.flex_wrap {
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}

.flex_center {
  align-items: center;
}

.flex_base {
  align-items: baseline;
}

.flex_bottom {
  align-items: flex-end;
}

.flex_start {
  justify-content: flex-start;
}

.flex_end {
  justify-content: flex-end;
}

.container {
  width: 100% !important;
  padding: 0 !important;
}

/*===================================
商品一覧ページ ※ECフォース組込み用CSS
======================================*/
.p-product_list__list {
  max-width: 1400px;
}
.p-product_list__list li.p-product_list__list__item.medium-up--one-1 {
  width: 33.3333333333%;
  max-width: 450px;
  margin-top: 0;
}

#pages-list {
  /*===============================
  product
  ==================================*/
}
#pages-list #product {
  padding: 100px 0 150px;
}
#pages-list #product .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#pages-list #product h2 {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  margin-bottom: 80px;
}
#pages-list #product h2::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/product_ttl_icon.png) no-repeat center/cover;
  top: -48px;
  left: 0;
  right: 0;
  width: 79px;
  height: 45px;
  margin: 0 auto;
}
#pages-list #product .tab_container {
  padding-bottom: 1em;
  margin: 0 auto;
}
#pages-list #product .tab_item {
  width: 25%;
  padding: 15px 0;
  border-right: #000000 1px solid;
  text-align: center;
  color: #a0a0a0;
  display: block;
  float: left;
  text-align: center;
  font-weight: 500;
  transition: all 0.2s ease;
  line-height: 1;
}
#pages-list #product .tab_item04 {
  border-right: none;
}
#pages-list #product .tab_item:hover {
  opacity: 0.75;
}
#pages-list #product input[name=tab_item] {
  display: none;
}
#pages-list #product .tab_content {
  display: none;
  padding: 40px 0 0;
  clear: both;
  overflow: hidden;
}
#pages-list #product #tab1:checked ~ #tab1_content,
#pages-list #product #tab2:checked ~ #tab2_content,
#pages-list #product #tab3:checked ~ #tab3_content,
#pages-list #product #tab4:checked ~ #tab4_content {
  display: block;
}
#pages-list #product .tab_container input:checked + .tab_item {
  color: #1e1e1e;
}
#pages-list #product .tab_content_description_product {
  width: 33.3333333333%;
  margin-bottom: 50px;
}
#pages-list #product .tab_content_description_product p {
  line-height: 1.4;
  font-weight: 500;
  font-size: 18px;
}
#pages-list #product .tab_content_description_product p span {
  display: block;
  font-size: 14px;
}
@media screen and (max-width: 1920px) {
  #pages-list #product {
    padding: 100px 11.083vw 150px;
  }
  #pages-list #product .inner {
    padding: 0 2.083vw;
  }
  #pages-list #product .tab_item {
    padding: 0.781vw 0;
  }
}
@media screen and (max-width: 768px) {
  #pages-list {
    /*===============================
    product
    ==================================*/
  }
  #pages-list #product {
    padding: 0;
  }
  #pages-list #product .inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
  #pages-list #product h2 {
    font-size: 33px;
    margin-bottom: 40px;
  }
  #pages-list #product h2::before {
    top: -29px;
    width: 44px;
    height: 25px;
  }
  #pages-list #product .tab_container {
    padding-bottom: 1em;
    margin: 0 auto;
  }
  #pages-list #product .tab_item {
    width: calc(50% - 6px);
    padding: 15px 0 8px;
    border-right: none;
    border-bottom: #000000 1px solid;
    font-size: 16px;
  }
  #pages-list #product .tab_item01, #pages-list #product .tab_item03 {
    margin-right: 12px;
  }
  #pages-list #product .tab_content_description_product {
    margin-bottom: 17px;
    width: 50%;
    margin-right: 0;
  }
  #pages-list #product .tab_content_description_product p {
    font-size: 12px;
  }
  #pages-list #product .tab_content_description_product p span {
    font-size: 10px;
  }
}

.red {
  color: #c90808;
}

/*===============================
header※ECフォースデフォルト打消し
==================================*/
.hd_icon_sp {
  margin-bottom: 0;
}

/*===============================
sub-images-view※ECフォース組込み
==================================*/
.sub-images-view ul li {
  width: 33.3333333333% !important;
}

/*===============================
.fav-link
==================================*/
.favorite__btn {
  margin-top: -23px;
  padding-bottom: 10px;
  text-align: right;
}
.favorite__btn img {
  width: 28px !important;
}

/*===============================
商品一覧ページ
==================================*/
.p-product_list__list {
  max-width: 1400px;
}
.p-product_list__list li.p-product_list__list__item.medium-up--one-1 {
  width: 33.3333333333%;
  max-width: 450px;
  margin-top: 0;
}

p {
  padding: 0 !important;
}

/*==================================
page-product
=====================================*/
#page-product {
  /*==================================
  breadcrumbs
  =====================================*/
  /*==================================
  page-product_mv
  =====================================*/
  /*===============================
  future
  ==================================*/
  /*===============================
  product-details
  ==================================*/
  /*===============================
  #related-products
  ==================================*/
  /*===============================
  .related-products
  ==================================*/
  /*===============================
  voice
  ==================================*/
  /*===============================
  voice
  =================================*/
  /*===============================
  Q&A
  ==================================*/
}
#page-product .breadcrumbs {
  padding: 100px 0 40px;
  background: #fff;
}
#page-product .breadcrumbs li:last-child {
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
@media screen and (max-width: 768px) {
  #page-product .breadcrumbs {
    padding: 30px 0;
  }
  #page-product .breadcrumbs .breadcrumbs_inner {
    width: 100%;
    max-width: 343px;
    margin: 0 auto;
  }
  #page-product .breadcrumbs ul li {
    margin-left: 0;
  }
}
#page-product_mv {
  margin-bottom: 150px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product_mv .pt20 {
  padding-top: 20px;
}
#page-product_mv .inner {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
}
#page-product_mv .img-thumbnail {
  border-radius: 20px;
}
#page-product_mv .left {
  width: 40%;
}
#page-product_mv .left .product_slider .slider-main {
  width: 100%;
  max-width: 700px;
  height: auto;
}
#page-product_mv .left .product_slider .slider-thumbnail .swiper-slide {
  opacity: 0.5;
  transition: opacity 0.5s;
  width: 33.3333333333%;
}
#page-product_mv .left .product_slider .slider-thumbnail .swiper-slide img {
  border-radius: 20px;
  height: auto;
  width: 208px;
}
#page-product_mv .left .product_slider .slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
  width: 208px;
  border: #a0a0a0 1px solid;
  border-radius: 20px;
}
#page-product_mv .left .product_slider .swiper {
  max-width: 700px;
  width: 100%;
}
#page-product_mv .right {
  width: calc(60% - 15px);
  max-width: 679px;
  /* アクティブタブ */
  /* ラジオボタン非表示 */
}
#page-product_mv .right .form-control {
  width: auto;
  border-radius: 5px;
}
#page-product_mv .right .input-sm {
  line-height: normal;
  padding: 5px 30px;
}
#page-product_mv .right select.input-sm {
  height: 56px;
}
#page-product_mv .right #product_detail {
  display: block;
}
#page-product_mv .right .detail {
  width: 100%;
}
#page-product_mv .right .detail h3 {
  font-size: 32px;
  margin: 25px 0;
  font-weight: 500 !important;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product_mv .right .detail h3 span {
  display: block;
  font-size: 16px;
  font-weight: 500 !important;
  margin-bottom: 15px;
}
#page-product_mv .right .detail p {
  font-size: 20px;
  text-align: justify;
  font-weight: 500 !important;
  line-height: 1.9;
}
#page-product_mv .right .detail p span {
  font-size: 16px;
  display: block;
  padding-top: 10px;
}
#page-product_mv .right .notes {
  font-size: 16px;
  padding-top: 30px !important;
  margin-bottom: 45px;
  line-height: 2;
  font-weight: 500 !important;
  border-top: 1px solid #a0a0a0;
}
#page-product_mv .right .notes span {
  display: block;
}
#page-product_mv .right .notes span a {
  color: #9ab4a2;
  border-bottom: 1px solid #9ab4a2;
  text-decoration: none;
}
#page-product_mv .right .txt {
  font-size: 16px;
}
#page-product_mv .right .tab_wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 50px;
  background: #fff;
}
#page-product_mv .right .tab02:after {
  content: "";
  width: 100%;
  height: 3px;
  display: block;
  order: -1;
}
#page-product_mv .right .tab_label {
  position: relative;
  height: 60px;
  line-height: 2.5;
  font-size: 24px;
  font-weight: 500;
  color: #1e1e1e;
  background: #efefef;
  white-space: nowrap;
  text-align: center;
  order: -1;
  z-index: 1;
  cursor: pointer;
  flex: 1;
  border-bottom: #a0a0a0 solid 1px;
  border-radius: 20px 20px 0 0;
}
#page-product_mv .right .tab_label span.green {
  background: #9ab4a2;
  font-size: 16px;
  color: #fff;
  padding: 5px 11px;
  margin: 0 11px 0 50px;
}
#page-product_mv .right .tab_label::after {
  position: absolute;
  top: 54%;
  left: 58px;
  width: 24px;
  height: 24px;
  content: "";
  background: #fff;
  border: #1e1e1e solid 1px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
#page-product_mv .right .tab_content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}
#page-product_mv .right .tab_content_ttl {
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 8px;
}
#page-product_mv .right .tab_content a {
  text-decoration: none;
}
#page-product_mv .right .tab_content_wrap {
  margin-bottom: 20px;
}
#page-product_mv .right .tab_content_wrap_off {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  text-align: center;
  color: #c90808;
  line-height: 1;
  letter-spacing: 0;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  background: #fff;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: #c90808 solid 1px;
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_wrap_off_rate {
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
}
#page-product_mv .right .tab_content_wrap_off_rate_no {
  font-size: 24px;
  display: block;
}
#page-product_mv .right .tab_content_wrap_off_rate_no .cent {
  font-size: 16px;
}
#page-product_mv .right .tab_content_wrap_price {
  width: calc(100% - 66px);
  font-size: 40px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
}
#page-product_mv .right .tab_content_wrap_price p {
  line-height: 1;
}
#page-product_mv .right .tab_content_wrap_price_yen {
  font-size: 24px;
}
#page-product_mv .right .tab_content_wrap_price_tax {
  font-size: 14px;
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_wrap_price_normal {
  margin-bottom: 5px !important;
}
#page-product_mv .right .tab_content_wrap_note {
  background: #efefef;
  border-radius: 10px;
  padding: 10px 20px !important;
  font-size: 14px;
  margin-bottom: 20px;
}
#page-product_mv .right .tab_content_product {
  font-weight: 500;
  justify-content: space-between;
}
#page-product_mv .right .tab_content_product_buy {
  font-size: 16px;
  margin-right: 24px;
  width: 100%;
  max-width: 126px;
}
#page-product_mv .right .tab_content_product_buy_num {
  font-size: 16px;
  margin-right: -9px;
  margin: 0 !important;
}
#page-product_mv .right .tab_content_product_buy_cart #quantity01 {
  padding: 15px;
  border-radius: 5px;
}
#page-product_mv .right .tab_content_product_btn {
  margin-bottom: 0 !important;
}
#page-product_mv .right .tab_content_product_btn a {
  width: 450px;
  display: block !important;
  position: relative;
  color: #fff !important;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background: #000000;
  border: 1px solid transparent;
  padding: 14px 0px;
  line-height: 1;
  border-radius: 28px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  font-weight: bold;
}
#page-product_mv .right .tab_content_product_btn a::before {
  position: absolute;
  content: "";
  display: inline-block;
  background: url(../img/common/btn_cart.png) no-repeat center/cover;
  width: 32px;
  height: 32px;
  left: 115px;
  bottom: 8px;
}
#page-product_mv .right .tab_content_recommend {
  margin-top: 35px;
  padding: 30px 34px;
  background: #efefef;
  border-radius: 10px;
}
#page-product_mv .right .tab_content_recommend_ttl {
  font-size: 20px;
  font-weight: bold;
  max-width: 420px;
  border-bottom: #1e1e1e solid 2px;
  margin-top: 0;
  margin-bottom: 15px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product_mv .right .tab_content_recommend_txt {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_recommend_notes {
  font-size: 14px;
  color: #a0a0a0;
  margin-bottom: 15px;
  font-weight: 500;
}
#page-product_mv .right .tab_content_recommend ul {
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_recommend ul li {
  font-size: 16px;
  gap: 8px;
  margin-bottom: 10px;
}
#page-product_mv .right .tab_content_recommend ul li .check_icon {
  width: 19px;
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_recommend ul li .txt {
  width: calc(100% - 25px);
  font-weight: 500;
  margin-bottom: 0;
}
#page-product_mv .right .tab_content_recommend ul span {
  display: block;
  line-height: 1;
}
#page-product_mv .right .tab_content_recommend ul span a {
  color: #9ab4a2;
  font-size: 16px;
  font-weight: 500;
  border-bottom: #9ab4a2 solid 1px;
}
#page-product_mv .right .tab_active:checked + .tab_label {
  color: #1e1e1e;
  background: #fff;
  border-bottom: none;
  border-top: #a0a0a0 solid 1px;
  border-left: #a0a0a0 solid 1px;
  border-right: #a0a0a0 solid 1px;
}
#page-product_mv .right .tab_active:checked + .tab_label::before {
  position: absolute;
  top: 56%;
  left: 58px;
  width: 13px;
  height: 13px;
  content: "";
  background: #9ab4a2;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
#page-product_mv .right .tab_active:checked + .tab_label::after {
  position: absolute;
  top: 56%;
  left: 58px;
  width: 24px;
  height: 24px;
  content: "";
  border: #1e1e1e solid 1px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
#page-product_mv .right .tab_active:checked + .tab_label + .tab_content {
  height: auto;
  overflow: auto;
  padding: 34px 50px;
  opacity: 1;
  transition: 0.5s opacity;
  border-left: #a0a0a0 solid 1px;
  border-right: #a0a0a0 solid 1px;
  border-bottom: #a0a0a0 solid 1px;
  border-radius: 0 0 20px 20px;
}
#page-product_mv .right .tab_active {
  display: none;
}
#page-product_mv .right label {
  margin-bottom: 0;
}
@media screen and (max-width: 1920px) {
  #page-product_mv {
    margin-bottom: 7.813vw;
  }
  #page-product_mv .inner {
    padding: 0 2.083vw;
  }
  #page-product_mv .right {
    width: calc(60% - 1.172vw);
  }
  #page-product_mv .right .input-sm {
    padding: 5px 1.563vw;
  }
  #page-product_mv .right select.input-sm {
    height: 2.917vw;
  }
  #page-product_mv .right .tab_label span.green {
    padding: 0.26vw 0.573vw;
    margin: 0 0.573vw 0 2.604vw;
  }
  #page-product_mv .right .tab_content_product_buy {
    margin-right: 1.25vw;
  }
  #page-product_mv .right .tab_content_product_buy_num {
    margin-right: -0.469vw;
  }
  #page-product_mv .right .tab_content_product_btn a::before {
    left: 5.99vw;
  }
  #page-product_mv .right .tab_content_recommend {
    padding: 1.563vw 1.771vw;
  }
}
@media screen and (max-width: 1280px) {
  #page-product_mv .right .input-sm {
    padding: 5px 1.797vw;
  }
  #page-product_mv .right select.input-sm {
    height: 3.75vw;
  }
  #page-product_mv .right .tab_label {
    line-height: 1;
    font-size: clamp(18px, 2.3vw, 24px);
  }
  #page-product_mv .right .tab_label span.green {
    display: block;
    font-size: clamp(10px, 1.3vw, 16px);
    letter-spacing: 0;
    padding: 3px 5px;
    margin: 5px auto 5px;
    width: 78px;
    left: 6.094vw;
    line-height: 1;
  }
  #page-product_mv .right .tab_label::after {
    top: 54%;
    width: clamp(18px, 2.3vw, 24px);
    height: clamp(18px, 2.3vw, 24px);
    left: 6.094vw;
  }
  #page-product_mv .right .tab_label02 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #page-product_mv .right .tab_content_ttl {
    font-size: clamp(16px, 2vw, 20px);
  }
  #page-product_mv .right .tab_content_wrap_off {
    font-size: clamp(13px, 1.7vw, 16px);
    width: clamp(45px, 5.8vw, 56px);
    height: clamp(45px, 5.8vw, 56px);
  }
  #page-product_mv .right .tab_content_wrap_off_rate_no {
    font-size: 18px;
  }
  #page-product_mv .right .tab_content_wrap_off_rate_no .cent {
    font-size: clamp(13px, 17vw, 16px);
  }
  #page-product_mv .right .tab_content_wrap_price {
    width: calc(100% - 5.156vw);
    font-size: clamp(32px, 4.1vw, 40px);
  }
  #page-product_mv .right .tab_content_wrap_price_yen {
    font-size: clamp(18px, 2.3vw, 24px);
  }
  #page-product_mv .right .tab_content_wrap_price_tax {
    font-size: clamp(12px, 1.5vw, 24px);
  }
  #page-product_mv .right .tab_content_product {
    font-weight: 500;
  }
  #page-product_mv .right .tab_content_product_buy {
    font-size: clamp(14px, 1.8vw, 16px);
    margin-right: 1.875vw;
    max-width: 100px;
  }
  #page-product_mv .right .tab_content_product_buy_num {
    margin-right: -1.719vw;
  }
  #page-product_mv .right .tab_content_product_buy_cart #quantity01 {
    padding: 0.938vw;
  }
  #page-product_mv .right .tab_content_product_btn a {
    width: 31.25vw;
    font-size: clamp(14px, 1.8vw, 16px);
  }
  #page-product_mv .right .tab_content_product_btn a::before {
    left: 7.813vw;
    width: 24px;
    height: 24px;
    bottom: 11px;
  }
  #page-product_mv .right .tab_content_recommend_ttl {
    font-size: clamp(16px, 2vw, 20px);
  }
  #page-product_mv .right .tab_content_recommend_txt {
    font-size: clamp(11px, 1.4vw, 14px);
  }
  #page-product_mv .right .tab_content_recommend_notes {
    font-size: clamp(11px, 1.4vw, 14px);
  }
  #page-product_mv .right .tab_content_recommend ul li {
    font-size: clamp(12px, 1.6vw, 16px);
  }
  #page-product_mv .right .tab_content_recommend ul li .txt {
    width: calc(100% - 1.953vw);
  }
  #page-product_mv .right .tab_content_recommend ul span a {
    font-size: clamp(12px, 1.6vw, 16px);
  }
  #page-product_mv .right .tab_active:checked + .tab_label {
    font-size: clamp(18px, 2.3vw, 24px);
  }
  #page-product_mv .right .tab_active:checked + .tab_label::before {
    left: 6.094vw;
    width: clamp(10px, 1.3vw, 13px);
    height: clamp(10px, 1.3vw, 13px);
  }
  #page-product_mv .right .tab_active:checked + .tab_label::after {
    left: 6.094vw;
    width: clamp(18px, 2.3vw, 24px);
    height: clamp(18px, 2.3vw, 24px);
  }
}
@media screen and (max-width: 1000px) {
  #page-product_mv .right .tab_content_product_buy_num {
    margin-right: -0.1vw;
  }
  #page-product_mv .right .tab_content_product_buy_cart #quantity01 {
    padding: 0.938vw;
  }
  #page-product_mv .right .tab_content_product_btn a::before {
    left: 6.8vw;
    width: 24px;
    height: 24px;
    bottom: 11px;
  }
}
@media screen and (max-width: 768px) {
  #page-product_mv {
    margin-bottom: 100px;
    margin-top: 60px;
  }
  #page-product_mv .inner {
    display: block;
    max-width: 100%;
    min-width: 100%;
  }
  #page-product_mv .left {
    width: 100%;
  }
  #page-product_mv .left #main-img {
    width: 50%;
    margin: 0 auto;
  }
  #page-product_mv .left #sub-images-view {
    max-width: 343px;
    margin: 0 auto;
  }
  #page-product_mv .left #sub-images-view .img-wrap {
    max-width: 343px;
  }
  #page-product_mv .left #sub-images-view .img-wrap .img-box {
    width: calc((100% - 30px) / 3) !important;
  }
  #page-product_mv .left .img-wrap {
    justify-content: space-between;
  }
  #page-product_mv .left #product02_slider {
    position: sticky;
    position: -webkit-sticky;
    top: 80px;
  }
  #page-product_mv .left #product02_slider .slider-main {
    width: 100%;
    max-width: 343px;
    height: auto;
  }
  #page-product_mv .left #product02_slider .slider-thumbnail .swiper-slide {
    opacity: 0.5;
    transition: opacity 0.5s;
    width: 33.3333333333%;
  }
  #page-product_mv .left #product02_slider .slider-thumbnail .swiper-slide img {
    border-radius: 20px;
    height: auto;
    width: 106px;
  }
  #page-product_mv .left #product02_slider .slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
    opacity: 1;
    width: 106px;
    border: #a0a0a0 1px solid;
    border-radius: 20px;
  }
  #page-product_mv .left #product02_slider .swiper {
    max-width: 343px;
    width: 100%;
  }
  #page-product_mv .right {
    width: 100%;
    max-width: 343px;
    margin: 0 auto;
    /* アクティブタブ */
    /* ラジオボタン非表示 */
  }
  #page-product_mv .right .input-sm {
    line-height: normal;
    padding: 5px 23px;
  }
  #page-product_mv .right select.input-sm {
    height: 48px;
  }
  #page-product_mv .right #product02_detail {
    display: block;
  }
  #page-product_mv .right .detail {
    width: 100%;
  }
  #page-product_mv .right .detail h3 {
    font-size: 24px;
    margin: 0 0 25px;
  }
  #page-product_mv .right .detail h3 span {
    font-size: 14px;
  }
  #page-product_mv .right .detail p {
    font-size: 16px;
  }
  #page-product_mv .right .detail p span {
    font-size: 14px;
    padding-top: 5px;
  }
  #page-product_mv .right .detail .fav-link {
    margin-top: -23px;
    padding-bottom: 30px;
  }
  #page-product_mv .right .detail .fav-link .btn-wishlist {
    width: 24px;
    height: 24px;
    margin: -3px 8px 0 auto;
    background: url(../img/product/btn_fav_off.png) no-repeat center/cover;
    width: 23px;
    height: 21px;
  }
  #page-product_mv .right .notes {
    font-size: 14px;
    padding-top: 20px !important;
    margin-bottom: 55px;
  }
  #page-product_mv .right .notes span {
    padding-top: 15px;
  }
  #page-product_mv .right .tab_wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 50px;
    background: #fff;
  }
  #page-product_mv .right .tab02:after {
    width: 100%;
    height: 3px;
    display: block;
    order: -1;
  }
  #page-product_mv .right .tab_label {
    width: 50%;
    height: 60px;
    line-height: 1.2;
    font-size: 18px;
    text-align: center;
    order: -1;
    flex: 1;
  }
  #page-product_mv .right .tab_label span.green {
    display: block;
    font-size: 10px;
    padding: 2px 3px;
    margin: 10px 60px 3px 40px;
  }
  #page-product_mv .right .tab_label::after {
    top: 54%;
    left: 20px;
    width: 18px;
    height: 18px;
  }
  #page-product_mv .right .tab_content_ttl {
    font-size: 16px;
  }
  #page-product_mv .right .tab_content_wrap {
    margin-bottom: 20px;
  }
  #page-product_mv .right .tab_content_wrap_off {
    font-size: 13px;
    line-height: 1;
    width: 45px;
    height: 45px;
  }
  #page-product_mv .right .tab_content_wrap_off_rate_no {
    font-size: 18px;
  }
  #page-product_mv .right .tab_content_wrap_off_rate_no .cent {
    font-size: 14px;
  }
  #page-product_mv .right .tab_content_wrap_price {
    width: calc(100% - 54px);
    font-size: 32px;
    letter-spacing: 0;
  }
  #page-product_mv .right .tab_content_wrap_price_yen {
    font-size: 18px;
  }
  #page-product_mv .right .tab_content_wrap_price_tax {
    font-size: 12px;
  }
  #page-product_mv .right .tab_content_product {
    font-weight: 500;
  }
  #page-product_mv .right .tab_content_product_buy {
    font-size: 14px;
    margin-right: 20px;
    width: 100%;
    max-width: 100px;
  }
  #page-product_mv .right .tab_content_product_buy_num {
    margin-right: -5px;
  }
  #page-product_mv .right .tab_content_product_buy_cart #quantity01 {
    padding: 12px;
  }
  #page-product_mv .right .tab_content_product_btn a {
    width: 190px;
    font-size: 14px;
    padding: 14px 0px 14px 67px;
    text-align: left;
  }
  #page-product_mv .right .tab_content_product_btn a::before {
    width: 21px;
    height: 21px;
    left: 34px;
    bottom: 11px;
  }
  #page-product_mv .right .tab_content_product_btn a:hover {
    opacity: 1;
  }
  #page-product_mv .right .tab_content_recommend {
    margin-top: 25px;
    padding: 20px 11px;
  }
  #page-product_mv .right .tab_content_recommend_ttl {
    font-size: 16px;
    max-width: 287px;
    line-height: 1.25;
    padding-bottom: 5px;
  }
  #page-product_mv .right .tab_content_recommend_txt {
    font-size: 11px;
  }
  #page-product_mv .right .tab_content_recommend_notes {
    font-size: 11px;
    margin-bottom: 10px;
  }
  #page-product_mv .right .tab_content_recommend ul li {
    font-size: 12px;
    gap: 5px;
  }
  #page-product_mv .right .tab_content_recommend ul li .check_icon {
    width: 15px;
  }
  #page-product_mv .right .tab_content_recommend ul li .txt {
    width: calc(100% - 21px);
  }
  #page-product_mv .right .tab_content_recommend ul span a {
    font-size: 12px;
  }
  #page-product_mv .right .tab_active:checked + .tab_label {
    line-height: 1.2;
  }
  #page-product_mv .right .tab_active:checked + .tab_label::before {
    position: absolute;
    top: 56%;
    left: 20px;
    width: 10px;
    height: 10px;
  }
  #page-product_mv .right .tab_active:checked + .tab_label::after {
    position: absolute;
    top: 56%;
    left: 20px;
    width: 18px;
    height: 18px;
  }
  #page-product_mv .right .tab_active:checked + .tab_label + .tab_content {
    padding: 25px 16px;
  }
  #page-product_mv .right .tab_active {
    display: none;
  }
}
#page-product #future {
  margin-bottom: 180px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product #future .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-product #future .future_ttl {
  padding: 137px 0 152px;
  background: url(../img/product/features_bg.jpg) no-repeat center/cover;
  width: 100%;
  max-width: 100%;
  height: 400px;
  margin: 0 auto 80px;
}
#page-product #future .future_ttl h2 {
  font-size: 60px;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif !important;
  text-align: center;
  margin-bottom: 35px;
  font-weight: 400;
  letter-spacing: 0.12em;
}
#page-product #future .future_ttl p {
  font-size: 24px;
  text-align: center;
  border-bottom: 1px solid #1e1e1e;
  width: 104px;
  margin: 0 auto 8px;
  font-weight: 500;
}
#page-product #future ul {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
}
#page-product #future ul li {
  width: calc((100% - 62px) / 3);
}
#page-product #future ul li img {
  width: 100%;
  max-width: 424px;
}
#page-product #future ul li .features_img {
  margin-bottom: 30px;
}
#page-product #future ul li h3 {
  font-size: 24px;
  line-height: 1.3;
  margin-bottom: 25px;
  font-weight: 500;
}
#page-product #future ul li p {
  font-size: 16px;
  text-align: justify;
  font-weight: 500;
}
@media screen and (max-width: 1920px) {
  #page-product #future {
    margin-bottom: 9.375vw;
  }
  #page-product #future .inner {
    padding: 0 2.083vw;
  }
  #page-product #future ul {
    padding: 0 2.083vw;
  }
  #page-product #future ul li {
    width: calc((100% - 3.229vw) / 3);
  }
  #page-product #future ul li .features_img {
    margin-bottom: 30px;
  }
  #page-product #future ul li h3 {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 768px) {
  #page-product #future {
    margin-bottom: 70px;
  }
  #page-product #future .inner {
    width: 100%;
    max-width: 100%;
    padding: 0 16px;
  }
  #page-product #future .future_ttl {
    padding: 75px 0;
    background: url(../img/product/features_bg_sp.jpg) no-repeat center/cover;
    height: 231px;
    margin-bottom: 40px;
  }
  #page-product #future .future_ttl h2 {
    font-size: 33px;
    margin-bottom: 30px;
  }
  #page-product #future .future_ttl p {
    font-size: 16px;
    width: 74px;
    margin: 0 auto 5px;
    padding: 0;
  }
  #page-product #future ul {
    display: block;
    max-width: 343px;
    padding: 0;
  }
  #page-product #future ul li {
    width: 100%;
    margin-bottom: 30px;
  }
  #page-product #future ul li .features_img {
    margin-bottom: 25px;
  }
  #page-product #future ul li h3 {
    font-size: 18px;
    margin-bottom: 15px;
  }
  #page-product #future ul li p {
    font-size: 14px;
  }
}
#page-product #product-details {
  padding: 0 0 190px;
  /* チェックボックスにチェックが入ったら中身部分を表示する */
}
#page-product #product-details .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-product #product-details h3 {
  font-size: 24px;
  text-align: center;
  padding: 15px 0;
  border-bottom: 1px solid #a0a0a0;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
  font-weight: 500;
}
#page-product #product-details .ac {
  width: 100%;
}
#page-product #product-details .ac-hidden {
  display: none;
}
#page-product #product-details .ac-open {
  display: block;
  padding: 10px 80px 10px 10px;
  cursor: pointer;
  margin: 5px 0;
  position: relative;
  border-bottom: #a0a0a0 1px solid;
  font-size: 16px;
}
#page-product #product-details .sab-ttl {
  font-size: 16px;
}
#page-product #product-details .ac-open::before,
#page-product #product-details .ac-open::after {
  content: "";
  width: 9px;
  height: 1px;
  background: #1e1e1e;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
#page-product #product-details .ac-open::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
#page-product #product-details .ac-hidden:checked + .ac-open:after {
  transform: translateY(-50%) rotate(0);
}
#page-product #product-details .ac-inner {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 0.5s;
  cursor: pointer;
}
#page-product #product-details .ac-inner ul li {
  font-size: 14px;
  margin-bottom: 10px;
}
#page-product #product-details .ac-hidden:checked + .ac-open + .ac-inner {
  height: auto;
  opacity: 1;
  padding: 10px;
}
#page-product #product-details label {
  font-weight: 500;
}
@media screen and (max-width: 1920px) {
  #page-product #product-details {
    padding: 0 0 10.208vw;
  }
  #page-product #product-details .inner {
    padding: 0 2.083vw;
  }
  #page-product #product-details .ac-hidden:checked + .ac-open + .ac-inner {
    padding: 0.521vw;
  }
}
@media screen and (max-width: 768px) {
  #page-product #product-details {
    padding: 0 0 96px;
  }
  #page-product #product-details .inner {
    max-width: 343px;
    padding: 0;
  }
  #page-product #product-details .ac-open {
    padding: 5px 13px 5px 10px;
    margin: 5px 0;
    font-size: 16px;
  }
  #page-product #product-details .ac-open::before,
  #page-product #product-details .ac-open::after {
    width: 9px;
    height: 1px;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
  #page-product #product-details .ac-open::after {
    transform: translateY(-50%) rotate(90deg);
    transition: 0.5s;
  }
  #page-product #product-details .ac-hidden:checked + .ac-open:after {
    transform: translateY(-50%) rotate(0);
  }
  #page-product #product-details .ac-inner {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    transition: 0.5s;
    cursor: pointer;
  }
  #page-product #product-details .ac-inner ul li {
    font-size: 14px;
    text-align: justify;
  }
  #page-product #product-details .ac-hidden:checked + .ac-open + .ac-inner {
    height: auto;
    opacity: 1;
    padding: 10px;
  }
}
#page-product .related_product_image {
  margin-bottom: 15px;
}
#page-product .related_product_name a {
  color: #1e1e1e !important;
  font-size: 18px;
  font-weight: 500;
}
#page-product .related_product_name a:hover {
  color: #1e1e1e !important;
  text-decoration: none;
}
#page-product .related_product_price {
  font-size: 20px;
  color: #1e1e1e !important;
}
#page-product .related-products_inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
  margin: 0 auto;
}
#page-product .related-products h3 {
  font-size: 24px;
  text-align: center;
  padding: 15px 0;
  margin-bottom: 75px;
  border-bottom: 1px solid #a0a0a0;
}
#page-product .related-products ul li {
  width: 33.3333333333%;
}
#page-product .related-products a img {
  width: 300px;
}
#page-product .related-products_image {
  margin-bottom: 30px;
}
#page-product .related-products_name a {
  font-size: 20px;
  color: #1e1e1e;
}
#page-product .related-products_price a {
  font-size: 16px;
  color: #1e1e1e;
}
@media screen and (max-width: 768px) {
  #page-product .related_product_name a {
    color: #1e1e1e !important;
    font-size: 16px;
    font-weight: 500;
  }
  #page-product .related_product_name a:hover {
    color: #1e1e1e !important;
    text-decoration: none;
    opacity: 1;
  }
  #page-product .related_product_price {
    font-size: 14px;
    color: #1e1e1e !important;
  }
  #page-product .related-products {
    padding: 0 0 50px;
  }
  #page-product .related-products_inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
  #page-product .related-products h3 {
    font-size: 24px;
    padding: 0 0 5px;
    margin-bottom: 50px;
  }
  #page-product .related-products ul {
    margin: 0 auto;
  }
  #page-product .related-products ul li {
    width: 50%;
    margin-bottom: 50px;
    padding: 0 10px;
  }
  #page-product .related-products ul li p {
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
  }
  #page-product .related-products ul li p span {
    display: block;
    font-size: 10px;
  }
  #page-product .related-products_name a {
    font-size: 16px;
    color: #1e1e1e;
  }
  #page-product .related-products_price a {
    font-size: 14px;
    color: #1e1e1e;
  }
}
#page-product #voice {
  padding: 180px 0 196px;
  font-family: "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product #voice .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-product #voice .p-review__inner {
  width: 100%;
  max-width: 1000px;
}
#page-product #voice h3 {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
  padding: 15px 0;
  margin-bottom: 75px;
  border-bottom: 1px solid #a0a0a0;
  font-family: "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product #voice .ac_box01 {
  position: relative;
  max-width: 920px;
}
#page-product #voice .ac_box01 .ac01_check {
  display: none;
}
#page-product #voice .ac_box01 .ac01_click {
  display: block;
  color: #1e1e1e;
  padding: 19px 0;
  width: 100%;
  max-width: 400px;
  margin: 0 auto 70px;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-align: center;
  border: #000 1px solid;
  border-radius: 28px;
  line-height: 1;
}
#page-product #voice .ac_box01 .ac01_click::after,
#page-product #voice .ac_box01 .ac01_click::before {
  content: "";
  position: absolute;
  right: 60px;
  top: 39%;
  width: 2px;
  height: 12px;
  background-color: #1e1e1e;
  transition: all 0.3s;
}
#page-product #voice .ac_box01 .ac01_click::after {
  transform: rotate(90deg);
}
#page-product #voice .ac_box01 .ac_open {
  text-align: left;
  max-height: 0;
  overflow: hidden;
  transition: all 0.5s;
}
#page-product #voice .ac_box01 .ac_open p {
  line-height: 1.6;
  text-align: left;
}
#page-product #voice .ac_box01 .ac01_check:checked + .ac01_click + .ac_open {
  max-height: 1100px;
  transition: all 1.5s;
}
#page-product #voice .ac_box01 .ac01_check:checked + .ac01_click::before {
  transform: rotate(90deg) !important;
}
#page-product #voice .ac_box01 .reviews_writing {
  font-size: 20px;
  font-weight: bold;
}
#page-product #voice .ac_box01 .reviews_required {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 30px;
  color: #aeaeae;
}
#page-product #voice .ac_box01 .reviews_required_red {
  color: #ec0303;
}
#page-product #voice .ac_box01 form {
  font-size: 16px;
  margin-bottom: 80px;
}
#page-product #voice .ac_box01 form input {
  border: solid 1px #aeaeae;
  border-radius: 5px;
  width: 100%;
  max-width: 760px;
  padding: 10px;
}
#page-product #voice .ac_box01 form .mb30 {
  margin-bottom: 30px;
}
#page-product #voice .ac_box01 form select {
  color: #f3c200;
  font-size: xx-large;
}
#page-product #voice .ac_box01 form label {
  width: 160px;
}
#page-product #voice .ac_box01 form textarea.review_comment {
  border: solid 1px #aeaeae;
  border-radius: 5px;
  width: 100%;
  max-width: 760px;
  min-width: auto;
  height: 200px;
  padding: 10px;
}
#page-product #voice .ac_box01 form .button_wrap {
  text-align: center;
}
#page-product #voice .ac_box01 form .button_wrap button {
  border: #1e1e1e 1px solid;
  padding: 7px 70px;
  border-radius: 20px;
}
#page-product #voice .ac_box01 .reviews_num {
  color: #1e1e1e;
}
@media screen and (max-width: 1920px) {
  #page-product #voice {
    padding: 9.375vw 0 10.208vw;
  }
  #page-product #voice .inner {
    padding: 0 2.083vw;
  }
}
@media screen and (max-width: 768px) {
  #page-product #voice {
    padding: 0 0 80px;
  }
  #page-product #voice .inner {
    max-width: 343px;
    padding: 0;
  }
  #page-product #voice h3 {
    font-size: 24px;
    padding: 0 0 5px;
    margin-bottom: 50px;
  }
  #page-product #voice .ac_box01 {
    font-size: 16px;
  }
  #page-product #voice .ac_box01 .ac01_click {
    font-size: 16px;
  }
  #page-product #voice .ac_box01 form {
    margin-bottom: 40px;
  }
  #page-product #voice .ac_box01 form .mb30 {
    margin-bottom: 20px;
  }
  #page-product #voice .ac_box01 form label {
    width: 100%;
    max-width: 100%;
  }
}
#page-product .voice_wrap {
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  text-align: left;
}
#page-product .voice_wrap_list {
  width: 100%;
  max-width: 920px;
  margin: 0 auto 20px;
  line-height: 1;
  border: #aeaeae solid 1px;
  padding: 40px 32px;
  border-radius: 20px;
}
#page-product .voice_wrap_list_txt_star {
  margin-bottom: 20px;
  font-size: 24px;
  color: #f3c200;
  line-height: 1;
}
#page-product .voice_wrap_list_txt_ttl {
  margin-bottom: 24px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
}
#page-product .voice_wrap_list_txt_name {
  font-size: 14px;
  color: #aeaeae;
}
#page-product .voice_wrap_list_txt_comment {
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  #page-product .voice_wrap {
    max-width: 100%;
  }
  #page-product .voice_wrap_list {
    max-width: 100%;
    padding: 20px 16px;
  }
  #page-product .voice_wrap_list_txt_star {
    font-size: 20px;
  }
  #page-product .voice_wrap_list_txt_ttl {
    font-size: 16px;
  }
  #page-product .voice_wrap_list_txt_name {
    font-size: 12px;
  }
  #page-product .voice_wrap_list_txt_comment {
    font-size: 14px;
  }
}
#page-product #qa {
  padding: 0 0 200px;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
#page-product #qa .inner {
  width: 100%;
  max-width: 1000px;
  padding: 0 40px;
}
#page-product #qa h3 {
  font-size: 24px;
  text-align: center;
  padding: 15px 0;
  border-bottom: 1px solid #a0a0a0;
  font-family: YuGothic, "Yu Gothic", "游ゴシック", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
  font-weight: 500;
}
#page-product #qa .ac {
  width: 100%;
}
#page-product #qa .ac-hidden {
  display: none;
}
#page-product #qa .ac-open {
  display: block;
  padding: 10px 80px 10px 10px;
  cursor: pointer;
  margin: 5px 0;
  position: relative;
  border-bottom: #a0a0a0 1px solid;
  font-size: 16px;
}
#page-product #qa .ac-open_ttl {
  text-align: left;
  font-size: 20px;
  font-weight: bold;
}
#page-product #qa .sab-ttl {
  font-size: 16px;
}
#page-product #qa .ac-open::before,
#page-product #qa .ac-open::after {
  content: "";
  width: 9px;
  height: 1px;
  background: #1e1e1e;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
#page-product #qa .ac-open::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
#page-product #qa .ac-hidden:checked + .ac-open:after {
  transform: translateY(-50%) rotate(0);
}
#page-product #qa .ac-inner {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 0.5s;
  cursor: pointer;
}
#page-product #qa .ac-inner ul li {
  font-size: 16px;
  line-height: 1.6;
  font-weight: 500;
}
#page-product #qa .ac-hidden:checked + .ac-open + .ac-inner {
  height: auto;
  opacity: 1;
  padding: 10px;
}
@media screen and (max-width: 1920px) {
  #page-product #qa {
    padding: 0 0 10.208vw;
  }
  #page-product #qa .inner {
    padding: 0 2.083vw;
  }
  #page-product #qa .ac-hidden:checked + .ac-open + .ac-inner {
    padding: 0.521vw;
  }
}
@media screen and (max-width: 768px) {
  #page-product #qa {
    padding: 0 0 100px;
  }
  #page-product #qa .inner {
    width: 100%;
    max-width: 343px;
    padding: 0;
  }
  #page-product #qa h3 {
    font-size: 24px;
    padding: 0 0 5px;
  }
  #page-product #qa .ac-open {
    padding: 5px 13px 5px 10px;
    margin: 5px 0;
    font-size: 16px;
  }
  #page-product #qa .ac-open_ttl {
    text-align: left;
    font-size: 16px;
    font-weight: bold;
  }
  #page-product #qa .sab-ttl {
    font-size: 16px;
  }
  #page-product #qa .ac-open::before,
  #page-product #qa .ac-open::after {
    content: "";
    width: 9px;
    height: 1px;
    background: #1e1e1e;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
  #page-product #qa .ac-open::after {
    transform: translateY(-50%) rotate(90deg);
    transition: 0.5s;
  }
  #page-product #qa .ac-hidden:checked + .ac-open:after {
    transform: translateY(-50%) rotate(0);
  }
  #page-product #qa .ac-inner {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    transition: 0.5s;
    cursor: pointer;
  }
  #page-product #qa .ac-inner ul li {
    font-size: 14px;
  }
  #page-product #qa .ac-hidden:checked + .ac-open + .ac-inner {
    height: auto;
    opacity: 1;
    padding: 10px;
  }
}

.u-margin__top--120 {
  margin-top: 120px;
}

.u-margin__bottom--60 {
  margin-bottom: 60px;
}

.u-color__btn--bg {
  background: #c3e2ca !important;
}

.u-color__btn--bg--overlay {
  background: #c3e2ca !important;
}

.u-color__btn {
  color: #1e1e1e !important;
}

.u-text--btn {
  color: #1e1e1e !important;
}

.u-color__btn--text--bg {
  background: #c3e2ca !important;
}

.control-alert, .alert, .alert-danger {
  margin: 120px 0 !important;
}

/*===============================
カートイン※ECフォースデフォルト打消し
==================================*/
.cart_center {
  text-align: center;
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .cart_center {
    width: 343px;
    margin: 20px auto 0;
  }
}
/*===============================
information(news)※ECフォースデフォルト打消し
==================================*/
.u-text--head {
  color: #1e1e1e !important;
  font-weight: 500;
}

.u-color__border--border {
  border-color: #a0a0a0 !important;
}

.u-text--body {
  color: #1e1e1e !important;
}

/*===============================
information-news（商品詳細ページ）※ECフォースデフォルト打消し
==================================*/
@media screen and (max-width: 768px) {
  .information-new .u-text--head {
    font-size: 20px !important;
  }
  .information-new .u-margin__top--80 {
    margin-top: 0;
  }
}
/*===============================
ECフォース　全体css
==================================*/
/*===============================
ECフォース　検索窓
==================================*/
.u-color__bg--accent {
  background: #c3e2ca;
}

.u-color__bg--sub {
  background: #b3b0b0;
}

.p-search_menu__container__inner__search {
  border-top: none;
}

.p-search_menu__container__inner__heading {
  padding: 20px 0 !important;
}

.l-header__inner__block__item--search02 {
  margin-right: 0 !important;
}

/*===============================
ECフォース　お問い合わせ
==================================*/
.mb10 {
  margin-bottom: 10px;
}

.contact_header {
  width: 100%;
  max-width: 788px !important;
  margin: 0 auto;
}

.contact_txt_wrap {
  text-align: center;
  display: block;
  padding-left: 160px;
}

.contact_txt_wrap .contact_txt {
  font-size: 13px;
  text-align: left;
}

.contact_txt_wrap .contact_txt a {
  color: #c3e2ca !important;
}

.fag_header {
  width: 100%;
  max-width: 788px !important;
  margin: 0 auto;
}

.fag_txt {
  font-size: 13px;
  text-align: center;
}

@media screen and (max-width: 1920px) {
  .contact_txt_wrap {
    padding-left: 8.333vw;
  }
}
@media screen and (max-width: 768px) {
  .contact_header {
    max-width: 100%;
    padding: 0 20px !important;
  }
  .contact_txt_wrap {
    padding-left: 0;
  }
}
/*===============================
ECフォース　テーマ移行にあたり追加css
==================================*/
.p-category_ranking_section h2.c-section_title__head.u-text--head {
  position: relative;
  text-align: center;
  font-size: 60px !important;
  color: #000 !important;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}
.p-category_ranking_section h2.c-section_title__head.u-text--head::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/ranking_ttl_icon.png) no-repeat center/cover;
  top: -60px;
  left: 0;
  right: 0;
  width: 74px;
  height: 54px;
  margin: 0 auto;
}

.product_all-ttl {
  padding: 50px 11.083vw 0;
}
.product_all-ttl-categories {
  position: relative;
  text-align: center;
  font-size: 60px;
  letter-spacing: 0.12em;
  font-family: "Roboto", "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
  margin: 80px 0;
}
.product_all-ttl-categories::before {
  display: inline-block;
  position: absolute;
  content: "";
  background: url(../img/top/product_ttl_icon.png) no-repeat center/cover;
  top: -48px;
  left: 0;
  right: 0;
  width: 79px;
  height: 45px;
  margin: 0 auto;
}

.product_all-list-inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.product_all-list {
  justify-content: center;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}
.product_all-list-categories {
  width: 19%;
  display: block;
  text-align: center;
}
.product_all-list-categories:not(:last-child) {
  border-right: #000000 1px solid;
}

@media screen and (max-width: 768px) {
  .product_all-ttl {
    padding: 0;
  }
  .product_all-ttl-categories {
    font-size: 33px;
    margin: 40px 0;
  }
  .product_all-ttl-categories::before {
    top: -29px;
    width: 44px;
    height: 25px;
  }
  .product_all-list-inner {
    max-width: 343px;
  }
  .product_all-list {
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
  }
  .product_all-list-categories {
    width: calc(50% - 6px);
    font-size: 16px;
    border-bottom: #000000 1px solid;
    padding: 15px 0 8px;
  }
  .product_all-list-categories:not(:last-child) {
    border-right: none;
  }
  .product_all-list-categories:nth-child(1) {
    margin-right: 12px;
  }
  .product_all-list-categories:nth-child(3) {
    margin-right: 12px;
  }
}
button.p-review__inner__entry__btn.u-text--link {
  font-size: 20px !important;
  font-weight: bold;
}

.c-review_item_detail__content {
  color: #000000 !important;
}

.p-review__inner__entry__content__title {
  font-size: 20px !important;
}

/*===============================
チャットボット
==================================*/
#smart-dialog .layout-padding {
  padding-bottom: 55px !important;
}/*# sourceMappingURL=style.css.map */