@charset "utf-8";
/* CSS Document */
/*---------------------------
pc調整
 --------------------------*/
/* もっと見る */
.block-link {
  text-align: center;
  display: none;
}
/* 表示形式を非表示にする */
.block-goods-list--sort-order-items {
  display: none;
}
/* 表示件数（上）を非表示にする */
.block-goods-list--pager-top {
  display: none;
}
/* 表示件数（下）を非表示にする */
.block-goods-list--pager-bottom {
  display: none;
}
.block-thumbnail-t {
  margin-top: 30px;
  text-align: center;
}
.block-top-event {
  padding: 1.5em 0.5em;
}
.small-f {
  font-size: 0.75rem;
}
.block-thumbnail-t--goods-name {
  text-align: left;
}
/*---------------------------
sp調整
 --------------------------*/
/* 表示形式を非表示にする */
.block-sort--header h2 {
  display: none;
}
/* 表示件数（上）を非表示にする */
.block-goods-list-naviframe, .pager-total {
  display: none;
}
.block-section {
  padding: 20px 0;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .block-top-event {
    padding: 1.5em 0.5em;
  }
}
/* 商品 */
.block-thumbnail-t--items {
  margin: 40px -5px;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: flex-start;
  text-align: left;
}
.block-thumbnail-t--items li {
  padding: 0 0.5em;
}
.block-section--header {
  margin-top: 1.5rem;
}
.cammoc-introduction-text02 a {
  color: #0065b3;
}
/* PC用スタイル（基本設定）: 改行なし */
.sp-break {
  display: inline;
}
/* SP用スタイル（画面幅429px以下）: 改行あり */
@media screen and (max-width: 429px) {
  .sp-break {
    display: block;
  }
}
/* スマートフォン（SP）用：改行を無効化 */
.pc-break {
  display: inline;
}
/* PC用：改行を有効化 */
@media screen and (min-width: 570px) {
  .pc-break {
    display: block;
  }
}
/*---------------------------
fontsize
 --------------------------*/
/* Size Matters Type Scale
 * Generated on 2025-11-12
 * Base: 16px, Ratio: 1.25, Steps: -2 to +5
 * Viewport: 320px - 750px
 */ :root {
  /* Base font size */
  --font-size-base: 16px;
  /* Type scale tokens */
  --font-size-xs: clamp(0.375rem, 0.003rem + 1.86vw, 0.875rem);
  --line-height-xs: 1.6;
  --font-size-s: clamp(0.5rem, 0.035rem + 2.326vw, 1.125rem);
  --line-height-s: 1.6;
  --font-size-r: clamp(0.688rem, 0.222rem + 2.326vw, 1.313rem);
  --line-height-r: 1.6;
  --font-size-m: clamp(0.75rem, 0.006rem + 3.721vw, 1.75rem);
  --line-height-m: 1.55;
  --font-size-l: clamp(0.938rem, 0.007rem + 4.651vw, 2.188rem);
  --line-height-l: 1.49;
  --font-size-xl: clamp(1.188rem, 0.025rem + 5.814vw, 2.75rem);
  --line-height-xl: 1.41;
  --font-size-2xl: clamp(1.438rem, -0.051rem + 7.442vw, 3.438rem);
  --line-height-2xl: 1.36;
  --font-size-3xl: clamp(1.813rem, -0.001rem + 9.07vw, 4.25rem);
  --line-height-3xl: 1.29;
}
/* Utility classes */
.text-xs {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs);
}
.text-s {
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
}
.text-r {
  font-size: var(--font-size-r);
  line-height: var(--line-height-r);
}
.text-m {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
}
.text-l {
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
}
.text-xl {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-xl);
}
.text-2xl {
  font-size: var(--font-size-2xl);
  line-height: var(--line-height-2xl);
}
.text-3xl {
  font-size: var(--font-size-3xl);
  line-height: var(--line-height-3xl);
}
/*---------------------------
adobefont
 --------------------------*/
#tcbrandlp {
  font-family: "biz-udpgothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  background: #dfdfdf;
  padding-bottom: 5em;
}
#tcbrandlp .tcblock--brandimg, .tcitem--txtblock {
  text-align: center;
}
/*---------------------------
topimg
 --------------------------*/
.tcblock--top img {
  width: 100%;
}
/*---------------------------
maintittle
 --------------------------*/
.tcblock--top {
  text-align: center;
}
.tcblock--top h1 {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-xl);
  line-height: 1.5;
  font-family: "bokutoh-ruika", sans-serif;
  font-weight: 100;
  font-style: normal;
  margin-bottom: 1.5em;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcblock--top h1 {
    margin: 0.9em 0;
  }
}
.f-smallA {
  font-size: var(--font-size-l);
  line-height: var(--line-height-l);
}
/*---------------------------
brandbutton
 --------------------------*/
.tcbrandbutton ul {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  margin: 0 3em;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcbrandbutton ul {
    margin: 0 0.5em;
  }
}
.tcbrandbutton img {
  width: 100%;
}
.tcbrandbutton li {
  background: #ffffff;
  box-shadow: 3px 4px 3px 0px rgba(0, 0, 0, .35);
  color: #fff;
  font-weight: bold;
  padding: 0.5em;
  margin: 0.5rem;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcbrandbutton li {
    margin: 0.15rem;
  }
}
/*---------------------------
brand
 --------------------------*/
.tcblock--brandimg img {
  width: 40%;
  margin: 3em 0 2em 0;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcblock--brandimg img {
    width: 60%;
    margin: 0 0 0.9em 0;
  }
}
.tcblock--brandimg {
  padding-top: 100px; /* ヘッダーの高さを入力 */
  margin-top: -100px; /* ヘッダーの高さを入力 */
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcblock--brandimg {
    padding-top: 0px; /* ヘッダーの高さを入力 */
    margin-top: 0px; /* ヘッダーの高さを入力 */
  }
}
/*---------------------------
brand/itemtittle
 --------------------------*/
.tcitem--point {
  text-align: left;
}
#tcbrandlp .tcitem--point ul {
  list-style-type: circle !important;
  list-style: circle !important;
}
#tcbrandlp .tcitem--point li {
  list-style: circle !important;
}
.tcpoint {
  padding: 0.5em 0 0 1.5em;
}
.tc-titlle01 {
  background: #3c3b3a;
  box-shadow: 3px 4px 3px 0px rgba(0, 0, 0, .35);
  color: #fff;
  font-weight: bold;
  padding: 0.3em 0.5em;
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  margin: 0.9em;
}
.tc-titlle02 {
  font-size: var(--font-size-r);
  line-height: var(--line-height-r);
  margin: 0.5em 0 0 0;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tc-titlle02 {
    margin: 0.95em 0 0 0;
  }
}
.tc-titlle03 {
  font-weight: bold;
  padding: 0 3em;
  width: fit-content;
  margin: 0 auto;
  text-align: center;
  position: relative;
  font-size: var(--font-size-s);
  line-height: var(--line-height-s);
}
.tc-titlle03::before, .tc-titlle03::after {
  content: '';
  background: #3c3b3a;
  width: 2em;
  height: 3px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.tc-titlle03::before {
  left: 0;
}
.tc-titlle03::after {
  right: 0;
}
.tcitem--point {
  padding: 0.5em 2em 1.5em 3em;
  margin: 2em 1.5em;
  font-weight: bold;
  border: solid 1px #000000;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcitem--point {
    padding: 0.5em 1.5em 1.5em 2em;
    margin: 2em 0.5em;
  }
}
.tcitem--point li {
  font-size: 12px;
  font-size: clamp(0.625rem, 0.39rem + 1.176vw, 0.75rem);
  line-height: 1.95;
}
.tc-titlle04 {
  padding: 0.25rem 1.5em;
  margin: 0.75rem auto 1.5em auto;
  border-radius: 1.5rem;
  background-color: #3c3b3a;
  text-align: center;
  color: #ffffff;
  width: fit-content;
  font-size: var(--font-size-xs);
  line-height: 1.95;
  font-size: 12px;
  font-size: clamp(0.625rem, 0.39rem + 1.176vw, 0.75rem);
  position: relative;
}
/*---------------------------
itemspecs
 --------------------------*/
.tcitem--specs {
  background: #ecebeb;
  margin: 1.5em;
  padding: 0.5em;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .tcitem--specs {
    margin: 1.5em 0.5em;
  }
}
.tcitem--detail {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-wrap: nowrap;
}
.item-img {
  text-align: center;
  flex-grow: 0;
  max-width: 35%;
}
.detail01 {
  flex-grow: 2;
  margin-left: 1.5rem;
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .detail01 {
    margin-left: 0.5rem;
  }
}
.item-img img {
  padding: 0.5em;
  min-width: 100%;
}
.pro-num {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.detail01 h6 {
  margin: 0.35rem;
  border-radius: 1.5rem;
  background-color: #3c3b3a;
  text-align: center;
  color: #ffffff;
  min-width: 20%;
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs);
}
/* 画面幅が570px以下の場合 */
@media (max-width: 650px) {
  .detail01 h6 {
    padding: 0.05rem;
    margin: 0.15rem;
  }
}
.detail01 p {
  font-size: var(--font-size-xs);
  line-height: var(--line-height-xs);
}
.man-num {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.ite-mat {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.ite-col {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.ite-col img {
  width: 15%;
}
.item-tll {
  font-size: var(--font-size-r);
  line-height: var(--line-height-r);
  margin: 0.5em 0 0.9em 0;
}
.detail02 {
  position: relative;
}
.ite-price p {
  font-size: var(--font-size-m);
  line-height: var(--line-height-m);
  border-bottom: solid 1px black;
  position: absolute;
  right: 0.5em;
}
.taxfont {
  font-size: var(--font-size-s);
}
/* 画面幅が570px以下の場合 */
@media (max-width: 570px) {
  .ite-price p {
    right: 0.35em;
  }
}
.ite-brand img {
  margin: 1.5em 0 0 1.5em;
  width: 25%;
}
/*---------------------------

 --------------------------*/
.bran-logsize img {
  width: 15%;
  margin-bottom: 1.05em;
}