@charset "UTF-8";

.m-h1-cover{
  background: url(/common/images/bg_img_minihash_mv.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.m-h1-cover:before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.25);
  z-index: 0;
}
.m-h1-cover .m-h1-cover__inner{
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .m-h1-cover{
  }
}

.m-h1-cover .m-h1-cover__inner{
  align-items: flex-start;
  justify-content: flex-start;
  display: block;
  width: 100%;
  height: 100%;
/*  margin: 0 auto;*/
}

.m-h1-cover .m-h1-cover__inner .e-h1--hdg{
  margin: 80px 0 42px;
  text-align: center;
  display: block;
  
}
.m-h1-cover .m-h1-cover__inner p{
  margin: 0;
  text-align: center;
  display: inline-block;
  width: auto;
  padding: 2px 40px;
}

.e-bg-hokkaikogane{
  background: url(/common/images/bg_img_hokkaikogane.jpg) center 80px no-repeat;
  text-align: center;
  padding: 106px 0 100px;
}
@media screen and (max-width: 767px) {
  .m-h1-cover .m-h1-cover__inner{
    align-items: center;
    justify-content: center;
    display: flex;
/*    margin: 0 auto;*/
  }
  .m-h1-cover .m-h1-cover__inner .e-h1--hdg{
    margin: 0 0 22px;
  }
  .m-h1-cover .m-h1-cover__inner p{
    padding: 2px 20px;
  }
  .e-bg-hokkaikogane{
    background: url(/common/images/bg_img_hokkaikogane_sp.jpg) center 80px no-repeat;
    text-align: center;
    background-size: contain;
    padding: 42px 20px;
  }
  .e-bg-hokkaikogane h2{
  letter-spacing: 0.4em;
  }
}

.e-bg-hokkaikogane-sub01{
  background: url(/common/images/bg_img_hokkaikogane_02.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
}
.e-bg-hokkaikogane-sub02{
  background: url(/common/images/bg_img_hokkaikogane_03.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
}
.e-bg-hokkaikogane-sub02 .m-article{
    
}
.e-bg-hokkaikogane-sub03{
  background: url(/common/images/bg_img_hokkaikogane_04.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
}
.e-bg-hokkaikogane-sub04{
  background: url(/common/images/bg_img_hokkaikogane_03_new.jpg) center center no-repeat;
  background-size: cover;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .e-bg-hokkaikogane-sub01,
  .e-bg-hokkaikogane-sub02,
  .e-bg-hokkaikogane-sub03,
  .e-bg-hokkaikogane-sub04{
    background: none;
  }
}

/*商品紹介*/
.m-article {
  width: 1080px;
  margin: 0 auto;
}
.m-article__imgl {
  padding: 200px 0;
}
.m-article__imgr {
  padding: 210px 0;
}

.m-article .m-article__img{
  width: auto;
}
.m-article .m-article__txt{
  width: 420px;
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .m-article{
    flex-wrap: wrap;
    width: 100%;
  }
  .m-article__imgl {
    padding: 40px 0;
  }
  .m-article .m-article__img {
    margin: 0 -20px;
  }
  .m-article .m-article__txt{
    width: auto;
    margin-right: auto;
  }
  .m-article__imgl {
    padding: 0px 0 20px;
  }
  .m-article__imgr {
    padding: 0 0 20px;
  }
}


.m-product-item{
  width: 422px;
  max-width: 100%;
  margin: 0 auto;
  padding: 48px 0 76px;
  text-align: center;
}
.m-product-item img{
  width: 100%;
  height: auto;
}
.m-product-item dl{
  /* margin-left: 40px; */
  letter-spacing: 0.05em;
  margin-top: 12px;
}
.m-product-item dt{
  font-size: 16px;
  font-weight: bold;
}
.m-product-item dd{
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .m-product-item{
    width: 100%;
    padding: 32px 58.5px 32px;
    box-sizing: border-box;
  }
  .m-product-item dl{
    margin-top: 0;
    margin-left: 0;
    text-align: center;
  }
  .m-product-item dd{
    line-height: 1.2;
  }
}


.m-product-item-2--reverse{
  flex-direction: row-reverse;
}
.m-product-item-2 .text-block .text:first-child{
  padding-top: 0;
}
.m-product-item-2{
  width: 940px;
  max-width: 100%;
  margin: 0 auto;
  padding: 80px 0 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;

  .image-block {
    width: 438px;
    text-align: center;
    img {
      width: 302px;
      height: auto;
      filter: drop-shadow(rgba(0, 0, 0, .10) 10px 10px 16px);
    }
    dl {
      margin-top: 30px;
      letter-spacing: 0.05em;
      dt {
        font-size: 16px;
        font-weight: bold;
      }
      dd {
        font-size: 14px;
      }
    }
  }
  .text-block {
    width: 450px;
    .headline {
      font-size: 26px;
      line-height: 40px;
      letter-spacing: .3em;
      padding-left: 95px;
      background-size: 70px auto;
      background-position: left center;
      background-repeat: no-repeat;
      margin-bottom: 30px;
      text-align: left;
      position: relative;
      &.award-gold {
        background-image: url(/common/images/img_award_gold.png);
      }
      &.award-grand-gold {
        background-image: url(/common/images/img_award_grand_gold.png);
      }
      &:after {
        content: '';
        display: block;
        position: absolute;
        width: 100%;
        border-bottom: 1px solid #B33522;
        bottom: -30px;
        left: 0;
      }
    }
    .text{
      padding-top: 30px;
      font-size: 15px;
      line-height: 28px;
      letter-spacing: .025em;
      text-align: justify;
    }
  }
}
@media screen and (max-width: 767px) {
  .m-product-item-2{
    width: 100%;
    padding: 46px 0 95px;
    flex-wrap: wrap;

    .image-block {
      width: 100%;
      img {
        width: 203px;
        height: auto;
      }
      dl {
        margin-top: 28px;
        letter-spacing: 0.1em;
        dt {
          font-size: 14px;
          font-weight: bold;
        }
        dd {
          font-size: 12px;
        }
      }
    }
    .text-block {
      width: 100%;
      margin-top: 60px;
      padding: 0 20px 0;
      .headline {
        font-size: 19px;
        line-height: 33px;
        letter-spacing: .3em;
        padding-left: 80px;
        background-size: 58px auto;
        margin-bottom: 30px;
        text-align: left;
        position: relative;
        &:after {
          content: '';
          display: block;
          position: absolute;
          width: 100%;
          border-bottom: 1px solid #B33522;
          bottom: -30px;
          left: 0;
        }
      }
      .text{
        padding-top: 30px;
        font-size: 14px;
        line-height: 23px;
        letter-spacing: .025em;
      }
    }
  }
}



/*商品情報*/
.m-product-info{
    width: 940px;
    margin: 0 auto;
    padding: 75px 0 140px;
}
.e-table-under{
  border-top: none;
}
@media screen and (max-width: 767px) {
  .m-product-info{
    padding: 0 20px;
    margin: 20px 0 60px;
    width: auto;
  }
  .e-table{
    width: 50%;
    /*display: inline-block;*/
    float: left;
    margin: 0;
    border-right: solid 1px #666666;
  }
  .e-table-under{
    border-top: solid 1px #666666;
    border-right: none;
  }
  .e-table th{
      height: 35px;
  }
}
.e-h5{
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .e-h5{
    margin-bottom: 10px;
  }
}

.e-product-guidance{
    width: 940px;
    margin: 0 auto;
    padding: 18px;
    font-size: 20px;
    text-align: center;
    letter-spacing: 0.2em;
    color: #666;
    border: 1px solid #666;
}
 @media screen and (max-width: 767px) {
  .e-product-guidance{
    width: auto;
    margin: 0;
    padding: 12px;
    font-size: 16px;
    letter-spacing: 0.25em;
    line-height: 1.9;
  }
}

.tabs {
  margin-top: 50px;
  padding-bottom: 20px;
  background-color: #fff;
  /*width: 940px;*/
  margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
  width: calc(49%);
  height: 44px;
  background-color: #f2f2f2;
  line-height: 44px;
  font-size: 14px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  font-weight: bold;
  margin-right: 2%;
  border-radius :6px 6px 0 0;
}
.tab_item02{
  margin-right: 0px;
}
.tab_item span {
  color: #e29916;
  font-size: 10px;
  padding-right: 5px;
  vertical-align: middle;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  padding: 0;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#programming:checked ~ #programming_content,
#design:checked ~ #design_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #fff0d9;
  color: #333333;
}

/*成分表見出し*/
.m-product-component__ttl {
  display: inline-block;
  width: 33%;
  text-align: center;
  vertical-align: top;
  color: #e29916;
  font-size: 16px;
  margin: 0 0 18px;
}

/*商品名見出し*/
.tabs .m-product__ttl {
  background: #fff0d9;
  width: 100%;
  border-radius :6px;
  padding: 10px 20px 10px 30px;
  margin: 0 0 20px;
  position: relative;
}
.tabs .m-product__ttl:before{
  content: "●";
  display: block;
  position: absolute;
  top: 50%;
  left: 18px;
  font-size: 6px;
  vertical-align: middle;
  width: auto;
  height: auto;
  margin: 0;
  border: 0;
  color: #e29916;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.tab_content_description{
  margin: 0 0 40px;
}

.tab_content .m-product-info__item {
  display: inline-block;
  vertical-align: top;
  width: 33%;
  height: 25px;
  border-right: 1px solid #e29916;
  padding: 0 35px;
  font-size: 13px;
  color: #666;
  font-family: "Yu Gothic", 'Yu Gothic', YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
	.tab_content.potechicut .m-product-info__item {
  	height: auto;
  	min-height: 260px;
	}
.tab_content .m-product-info__item p.e-txt{
  font-size: 13px;
}
.tab_content .m-product-info__item:first-child {
  padding: 0 40px 0 10px;
}
.tab_content .m-product-info__item:last-child {
  padding: 0 0 0 40px;
  border-right: none;
}

.tab_content .m-product-component {
  width: 100%;
}
.tab_content .m-product-component th {
  text-align: left;
  font-weight: normal;
  width: 85px;
  padding: 3px 0;
}
.tab_content .m-product-component td {
  text-align: right;
  background-image: -webkit-linear-gradient(to right, #033333, #033333 1px, transparent 1px, transparent 2px);;
background-image: linear-gradient(to right, #033333, #033333 1px, transparent 1px, transparent 2px);
  background-size: 3px 1px;
  background-position: 0 50%;
  background-repeat: repeat-x;
  clear: both;
}
.tab_content .m-product-component td span{
  background: #fff;
  padding-left: 15px;
}



 @media screen and (max-width: 767px) {
	 
	 .new-tab {
    width: 100%;
    text-align: center;
    padding: 12px 0 8px;
    background-color: #fff0d9;
    font-size: 14px;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    margin-top: 32px;
  }

	 
	 .new-tab.nomg {
    margin-top: 0;
  }
  .new-tab span {
      color: #e29916;
      font-size: 10px;
      padding-right: 5px;
      vertical-align: middle;
  }
	 
  .tabs {
      width: auto;
      padding: 0 -20px;
  }
  .tab_content {
    background: #fff0d9;
    padding: 0 20px 0;
    margin: 0 -20px;
    clear: both;
    overflow: hidden;
  }
  .tab_content_description{
    margin: 0 0 25px;
  }
  .tab_content .m-product-info__item {
    display: block;
    vertical-align: top;
    width: 100%;
    height: auto;
    border-right: none;
    border-bottom: 1px solid #e29916;
    padding: 25px 0;
    font-size: 10px;
    color: #666;
    clear: both;
    overflow: hidden;
  }
	 
	 .tab_content.potechicut .m-product-info__item {
		 height: auto;
	 }

  .tab_content .m-product-info__item:first-child {
    padding: 25px 0;
  }
  .tab_content .m-product-info__item:last-child {
    padding: 25px 0 0;
    border-bottom: none;
  }
  .tab_content .m-product-info__item h4{
    color: #e29916;
    font-size: 13px;
    margin: 0 0 8px;
    text-align: center;
  }
  .tab_content .m-product-component {
     width: 45%;
     float: left;
  }
  .tab_content .m-product-component:last-child{
     float: right;
  }
  .tab_content .m-product-component th {
    text-align: left;
    font-weight: normal;
    width: 85px;
    padding: 3px 0;
  }
  .tab_content .m-product-component td {
    text-align: right;
    background-image: -webkit-linear-gradient(to right, #033333, #033333 1px, transparent 1px, transparent 2px);;
  background-image: linear-gradient(to right, #033333, #033333 1px, transparent 1px, transparent 2px);
    background-size: 3px 1px;
    background-position: 0 50%;
    background-repeat: repeat-x;
    clear: both;
  }
  .tab_content .m-product-component td span{
    background: #fff0d9;
    padding-left: 15px;
  }
 }

.regacy {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #FFD166;
}
.regacy  .wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
.regacy .image {
  width: 156px;
  height: 256px;
  margin-right: 48px;
}
.regacy .text {
  width: 600px;
  line-height: 1.8;
}
.regacy .text h3 {
  font-size: 18px;
  margin-bottom: 20px;

}
.regacy .text p {
  font-size: 15px;
  font-weight: bold;

}
@media screen and (max-width: 767px) {

  .regacy {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .regacy  .wrap {
    display: block;
    text-align: center;
  }
  .regacy .image {
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    transform: translateX(8px);
  }
  .regacy .text {
    width: 100%;
  }
  .regacy .text h3 {
    font-size: 16px;
    margin-bottom: 12px;

  }
  .regacy .text p {
    font-size: 12px;

  }

}

.graycover {
  background-color: rgba(51,51,51,0.3);
}

@media screen and (max-width: 767px) {
  .graycover {
    background-color: rgba(51,51,51,0.48);
  }
}

.xbox {
  display: block;
  margin: 0.67em auto;
  position: relative;
  width: 32px;
  height: 32px;
}

.xbox::before,
.xbox::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 10%;
  margin: -8% 0 0 -42%;
  background: #B33522;
}
.xbox::before {
  transform: rotate(-45deg);
}
.xbox::after {
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  .xbox {
    width: 24px;
    height: 24px;
    margin-left: calc(49% - 12px);
  }
}


.t-product .e-btn__txt {
  padding: 0 14px;
 }
 
.section-center{
	text-align: center;
}

.section-center .m-product-item{
	display: inline-block;
}

.e-h2--hdg {
    letter-spacing: 0.2em;
    font-size: 16px;
    margin: 0 0 18px;
    color: #333333;
    font-weight: bold;
}

.title-bar{
	background: #ffeed7;
	font-size: 13px;
	font-weight: 700;
	padding: 10px 15px;
	margin-bottom: 20px;
}


.title-bar:before{
	content: "●";
	color: #e29916;
}

@media screen and (max-width: 767px) {
	.title-bar {
	    padding: 15px 0px 0;
    	margin-bottom: -20px;
	}
}


/* ===== minihash ページ 個別調整 ===== */

/* タイトルが長くなったため一回り小さく（背景画像とのバランス調整） */
.m-h1-cover .e-h1--hdg {
  font-size: 44px;
}
@media screen and (max-width: 767px) {
  .m-h1-cover .e-h1--hdg {
    font-size: 24px;
  }
}

/* 導入セクションの背景に水彩（他の商品詳細ページと同じパターン） */
.e-bg-minihash-intro {
  background: url(/common/images/bg_img_jagamash.jpg) center 40px no-repeat;
  text-align: center;
}
/* 導入セクションの上余白を他ページと合わせる */
.m-minihash-intro {
  padding-top: 100px;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .e-bg-minihash-intro {
    background: url(/common/images/bg_img_jagamash_sp.jpg) center center no-repeat;
    background-size: cover;
  }
  .m-minihash-intro {
    padding-top: 48px;
    padding-bottom: 40px;
  }
}

/* 商品紹介セクションをシンプルに（画像を小さく・装飾を控えめに）
   1画面内に2商品が収まるよう縦をさらに詰める */
.m-product-item-2 .image-block img {
  filter: none;
}
.m-product-item-2 .image-block dl {
  margin-top: 8px;
}
.m-product-item-2 .text-block .text {
  padding-top: 0;
}
/* セクション全体の上下パディング（商品同士の間隔より大きめ） */
.m-minihash-products {
  padding-top: 80px;
  padding-bottom: 80px;
}
.m-product-item-2 + .m-product-item-2 {
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .m-product-item-2 {
    padding: 0;
    width: 760px;
    justify-content: center;
    gap: 48px;
  }
  .m-product-item-2 .image-block {
    width: auto;
  }
  .m-product-item-2 .image-block img {
    width: 150px;
  }
  .m-product-item-2 .text-block {
    width: 460px;
  }
  .m-product-item-2 .text-block .text {
    font-size: 14px;
    line-height: 24px;
  }
}
@media screen and (max-width: 767px) {
  .m-minihash-products {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .m-product-item-2 {
    padding: 0;
  }
  .m-product-item-2 .image-block img {
    width: 150px;
  }
}
